3. 연구방법 및 과정
3.2 시간 기반 측위 알고리즘 구현 및 시뮬레이션
3.2 시간 기반 측위 알고리즘 구현 및 시뮬레이션
d = (p − p ) = (p − p ) (p − p ) = ‖p − p ‖ (3.4) d = (p − p ) = (p − p ) (p − p ) = ‖p − p ‖ (3.5)
d =
⎣⎢
⎢⎢
⎡dd d d ⎦⎥⎥⎥⎤
(3.6)
개의 데이터일 때, 4 개의 식이 만들어 지고, 각 sampling 데이터를 한 쌍의 조합으로 묶었 을 때 총 ( )= 개의 조합을 만들 수 있다.
i = 1 , = 2 : ⇒ ( − 1) 개 i = 2 , = 3 : ⇒ ( − 2) 개 i = 3 , = 4 : ⇒ ( − 3) 개
:
i = − 1 , = ⇒ ( − ( − 1)) 개 (3.7)
번째 측정 값 중 d 을 구하는 식은 다음과 같다.
d = p − p + p − p + p − p (3.8)
= (p ) − 2p p + p + p − 2p p + p + (p ) − 2p p + p (3.9)
= (p +p + p ) + (p +p + p ) -2 (p p + p p + p p ) (3.10)
번째 측정 값 중 d 을 구하는 식은 다음과 같다.
d = p − p + p − p + p − p (3.11)
= p − 2p p + p + p − 2p p + p + p − 2p p + p (3.12)
= (p +p + p ) + (p +p + p ) -2 (p p + p p + p p ) (3.13)
번째 구한 (d ) 과 번째 구한 (d ) 을 빼면 다음과 같이 p 에 관한 값들이 소거됨을 알 수 있다.
d -d = (p +p + p ) - (p +p + p ) -2 {(p p + p p + p p )
+ (p p + p p + p p )} (3.14)
이들 중 일부를 좌변으로 옮겨 식을 정리하면 다음과 같이 표현될 수 있다.
- {d -d - (p +p + p ) + (p +p + p ) } = p pp
(p − p ) (p − p )
(p − p ) (3.15)
A=
(p − p ) (p − p ) (p − p )
= (p − p )
(3.16) B= - {d -d - (p +p + p ) + (p +p + p ) } (3.17)
간단히 표현하기 위해, 위와 같은 식을 A, B로 정의하였다. A, B를 이용해 Anchor의 위치 좌표 ( )를 추정할 수 있다.
A = , = (3.18)
( ) = (3.19)
= ( ) (3.20)
위의 과정은 d 을 이용한 과정이었으며, d , d , d 을 이용할 경우에도 동일하게 적용하여 구할 수 있다.
3.2.2 알려진 고정 노드 위치가 있는 조건의 이동 노드 위치추정
네크워크 구성 시 가장 일반적인 위치추정의 형태이다. 고정된 Anchor들의 위치를 이용하여 상대적인 Tag의 위치를 구하는 방법이다. 위와 같은 4개의 고정된 Anchor(p , p , p , p )를 이 용하면 식이 4개가 존재하고 Tag(p )의 위치 좌표 , , 가 3개의 미지수로 존재하게 된다. 따라서 식이 미지수의 개수보다 많기 때문에 이론적으로 계산이 가능하다. 아래 그림은 임 의의 고정 Anchor 좌표를 이용하여 계산되어진 Tag의 위치좌표와 함께 노이즈를 포함시킨 추정 좌표를 비교해 보았다.
d = (p − ) + p − + (p − ) (3.21)
d = (p − ) + p − + (p − ) (3.22)
d = (p − ) + p − + (p − ) (3.23)
d = (p − ) + p − + (p − ) (3.24)
그림22 추정된 Tag 좌표 비교
3.2.3 알려진 고정 노드 위치가 없는 조건의 이동 노드 위치추정
일반적인 경우가 아닌 알려진 고정 노드의 위치가 없는 경우에 각각의 노드 간에 상대적인 거 리를 이용해 전체적인 위치좌표를 추정하는 방법을 생각해 보았다. 이는 적용 환경이 달라지는 경우에 자동적으로 각각의 노드 위치 계산이 가능하게 되면 어디에서나 빠르게 접목시키는 것이 가능할 것이라고 생각해보았다. 우선 Tag의 위치 좌표를 시뮬레이션과 같이 P 을 = M 번 측정 한다. 이 경우 한 좌표당 4개의 거리에 관한 식(d , d , d , d )이 계산되고 M개의 좌표에 대한 모 든 거리를 계산했을 때 총 4* M개의 식이 존재하게 된다. 다음으로 Anchor의 위치 좌표(p , p , p , p ) 또한 미지수이므로 각각 Anchor에 대한 좌표 변수는 총 12개( , , , , , , , , , , , )이고 Tag(p )의 위치 좌표 , , 가 3개의 미지수이기 때 문에 총 12+3*M 개가 된다. 이론적으로 식의 개수가 미지수의 개수보다 많게 되면 해결이 가능 한 문제가 되므로 M (Tag 샘플링 수)이 클수록 해결이 가능하다.
d = p − p + p − p + p − p (3.25)
d = p − p + p − p + p − p (3.26)
d = p − p + p − p + p − p (3.27)
d = p − p + p − p + p − p (3.28)
그림23 추정된 Tag 및 Anchor 좌표 비교
또한, 이러한 Anchor-free 문제는 [14]과 같이 생각해 볼 수 있다. 정해진 절대적인 네트워 크 기준 위치가 없는 경우, 상대적인 거리를 이용해 네트워크 중심을 기준이 되는 원점으로 위치 시킨다. 다음과 같은 식을 이용해 설명될 수 있다. 4개의 Anchor가 존재하고, 측정된 한 Tag의 위치 값이 k개 일 때, 각 샘플링 좌표로부터 거리 값을 계산할 수 있다. 이 전체 정보를 이용해 전체 네트워크 중심을 원점으로 옮기는 과정을 식(3.37)과 같이 실행한다. 좌표 값들의 평균을 구해 각각의 좌표에 동일하게 소거해 중심을 원점으로 옮긴다. Tag의 위치 좌표의 경우의 수는 3 가지로 생각해 볼 수 있다.
( ℎ ) = (3.29)
( ) = ⋯
⋯
⋯
(3.30)
d = ( − ) + ( − ) + ( − ) (3.32)
d = ( − ) + ( − ) + ( − ) (3.33)
d = ( − ) + ( − ) + ( − ) (3.34)
d = ( − ) + ( − ) + ( − ) (3.35)
( ℎ ) =
⎣⎢
⎢⎢
⎡
⎦⎥
⎥⎥
⎤
, ( ) =
⎣⎢
⎢⎢
⎡ ⋯
⋯
⋯ ⎦⎥⎥⎥⎤
(3.36)
= ( ℎ ) − ( ℎ ), = ( ) − ( ) (3.37)
그림24 Anchor-free case[14]