I. 서 론
II. 시스템 모델
III. 제안 기법
IV. 모의실험
4.1 모의실험 환경 및 설정 파라미터
4.2 합의 알고리즘의 수렴
4.3 합의 알고리즘의 동작 조건
4.4 핸드오버 시도 횟수
4.5 에너지 소모량
4.6 신호 대 잡음비
V. 결 론
I. 서 론
자율무인잠수정(Autonomous Underwater Vehicle, AUV)은 해양 탐사, 군사 작전, 환경 모니터링 등 다양한 해양 응용 분야에서 핵심적인 역할을 수행하고 있다. 특히 작업 범위와 능력 확장을 위해서 다수의 AUV가 군집을 이루며 동작하는 군집형 AUV에 대한 요구가 증대되고 있다. 이러한 임무를 성공적으로 수행하기 위해서는 안정적이고 신뢰할 수 있는 통신이 필수적이며, 이를 지원하기 위해 고도화된 수중 핸드오버 기술이 필수적이다.
수중 음향 네트워크에서는 이동성 노드를 대상으로 다양한 핸드오버 기술이 개발되어 왔다. 최근에는 기계 학습 기반의 예측 모델이나 제로 스캐닝 방식으로 핸드오버 시점을 개선하려는 연구가 활발히 진행되었으며,[1,2,3] 입자 군집 최적화(Particle Swarm Optimization, PSO)와 개미 군집 최적화(Ant Colony Optimization, ACO)를 결합한 하이브리드 최적화 알고리즘도 제안되고 있다.[4] 또한, 수중 기지국의 움직임을 고려하여 핸드오버 성능을 최적화하려는 시도도 주목받고 있다.[5] 그러나 기존 연구들은 주로 단일 노드의 이동성과 해류에 의한 간접적 이동에 초점을 맞추고 있어, AUV 군집과 같은 자율적이고 협력적인 환경에는 적합하지 않다.[6]
따라서 본 논문에서는 합의 알고리즘(consensus algorithm)을 활용한 새로운 수중 군집 핸드오버 기법을 제안한다. 합의 알고리즘은 분산 시스템에서 각 개체가 상태 정보를 교환하며 군집 단위의 협력적 의사 결정을 지원하는 특성을 지니고 있다.[7,8] 본 논문에서는 합의 기반 알고리즘을 AUV 군집의 핸드오버 문제에 적용하여, 군집 내 모든 노드들이 핸드오버 결정 과정에 참여하고 합의함으로써 각 노드들의 상이한 채널 환경을 종합적으로 고려할 수 있도록 하였다. 그 결과, 커버리지 경계를 이동할 때 빈번하게 발생하는 핸드오버 핑퐁 현상을 회피할 수 있고 불필요한 핸드오버를 줄임으로써 통신 자원과 에너지 소모를 감소시킬 수 있었다. 또한, 가장 최적의 수중 기지국(본 논문에서는 부이가 기지국의 역할을 수행)과의 연결을 유지함으로써 AUV의 통신 채널 품질(신호 대 잡음비)을 향상시킬 수 있다.
II. 시스템 모델
Fig. 1은 본 연구에서 고려된 네트워크 시스템 모델을 나타낸다. 수면 위 임의의 위치에 배치된 부이가 수중 기지국 역할을 하며 각 기지국의 커버리지는 동일한 반경 R을 갖는 반구 형태이다. 수중 기지국은 지속적으로 파일럿 신호를 방송하여 AUV가 신호 강도를 확인할 수 있도록 한다. 또한 개의 AUV로 구성된 AUV 군집은 하나의 Leader AUV와 -1개의 Member AUV로 구성된다. 군사적 용도로 사용되는 AUV 군집의 특성상, Leader AUV는 Member AUV로부터 수집한 정보를 취합, 가공, 편집하며 군집을 대표하여 기지국에 전달한다. 따라서, Member AUV가 기지국에 직접 접속하는 경우는 없다고 가정한다. 기지국과 Leader AUV 간의 업링크(Leader AUV → 기지국) 및 다운링크(기지국 → Leader AUV) 채널 구분은 주파수 분할 듀플렉싱을 사용한다. 또한, 군집 내 AUV들은 1-hop 범위 내에서 상태 정보를 교환하며, 이때 AUV 간 통신은 하나의 공통 주파수 채널에서 Aloha 방식으로 채널 접속이 이루어진다. 따라서, 군집 내 AUV들은 일정 간격을 유지한 채 데이터 교환이 가능한 연결 상태에서 대형을 이루고 등속 운동한다고 가정한다.
III. 제안 기법
본 연구에서는 AUV 군집이 이동에 의해서 새로운 기지국 영역으로 진입하는 경우, 합의 알고리즘을 활용하여 군집 핸드오버의 시도를 결정하는 기법을 제안한다. 본 연구에서 제안하는 합의 기반 핸드오버 기법은 AUV 간 상태 정보를 교환하여 군집 전체의 채널 상태를 반영하며, 이를 통해 보다 정교한 핸드오버 결정을 수행할 수 있다. 합의 알고리즘은 이웃 노드 간 상태값(state value)을 교환하여 네트워크 내 모든 노드가 동일한 상태값을 가지도록 유도하는 알고리즘이다.[7] 따라서, 개별 노드의 상태값을 중앙에서 수집할 필요 없이, 분산된 방식으로 합의가 이루어진다. 해당 알고리즘을 기반으로 한 제안 기법은 다음과 같다.
Fig. 2는 AUV 군집 네트워크를 구성하는 노드의 연결 구조 예시를 나타낸다. 원은 AUV를, 선은 노드 간의 양방향 통신이 가능함을 의미한다. 이는 노드를 정점, 연결 상태를 간선으로 하는 방향성 그래프로 표현할 수 있다. 여기서 는 노드 집합, 는 간선 집합을 의미하며, 노드 의 이웃은 로 정의된다. 각 노드는 합의 대상이 되는 상태값 를 가지고 있으며, 이웃 노드들과의 상태값 교환을 통해 자신의 상태값을 갱신한다. 이때, 갱신은 다음을 따른다:
여기서 는 노드 의 번째 상태이며 수중 기지국으로부터 수신한 파일럿 신호의 기준 신호 수신 세기(Reference Signal Received Power, RSRP)를 나타낸다. 𝛼는 상태값 갱신 비율이다. 여기서 상태값 는 다음과 같이 개의 수중 기지국에 대해 차원 벡터로 표현된다:
즉, 은 번째 수중 기지국으로부터 수신한 파일럿 신호의 RSRP 값이다. 따라서, AUV 𝑖는 이웃 AUV 로부터 상태값 를 수신하여 자신의 상태값 와의 차이에 대해 비율 𝛼를 적용하여 Eq. (1)에 따라 다음 상태를 갱신한다. 이 과정은 각 AUV마다 독립적으로 일어나며, 개의 벡터 성분 각각에 대해 개별적으로 갱신된다. 이러한 상태값 갱신을 반복하면 군집 내 모든 AUV의 상태값이 하나의 상태값으로 수렴한다. 𝛼값이 커질수록 수렴속도가 빨라질 수 있으나, 너무 크면 발산할 수 있다. 수렴하기 위한 𝛼의 조건은
로 표현된다. Eq. (3)에서 은 라플라시안 행렬 L의 가장 큰 고유값이며, 행렬 L은 노드의 연결 구조(topology)에 의해서 결정된다.[9] 즉, 군집을 이루는 AUV 노드 간의 연결성에 따라 합의 알고리즘의 수렴조건이 결정된다. 알고리즘이 종료되면, Leader AUV는 개의 수렴값 중 가장 높은 상태값의 수중 기지국으로 핸드오버를 결정한다.
예를 들어, Fig. 3은 𝛼 = 0.1, = 3, = 4일 때의 알고리즘의 초기 상태를 나타낸다. 짙은 파란색으로 표시된 AUV(노드 3)는 Leader AUV를 의미하며, 밝은 노란색으로 표시된 AUV는 Member AUV를 나타낸다. 4개의 AUV가 각기 다른 위치에 존재하기 때문에, 3개의 해상 기지국에 대해 각각 상이한 RSRP 값이 측정된다. 이 값들이 알고리즘의 초기값이 된다. 이후 각 AUV는 자신의 상태값을 인접한 AUV와 교환하며, Eq. (1)에 따라 반복적으로 갱신한다. Fig. 4는 제안된 합의 알고리즘의 종료 상태를 나타낸다. 해당 시점에서, 4개의 AUV는 모두 유사한 상태값을 공유하고 있음을 확인할 수 있다. 이는 각 AUV가 상태 정보를 반복적으로 교환하고 갱신함으로써 군집 내 합의를 도출한 결과이다. 합의된 상태값에 따라 Leader AUV는 가장 높은 상태값을 나타내는 2번 기지국으로 핸드오버를 수행한다. 이처럼 합의 알고리즘은 이웃 노드 간의 정보 교환을 통해 군집 내 합의를 도출하는 방식으로 동작하므로, Leader AUV가 Member AUV의 RSRP 값을 직접 수집할 필요가 없다.
해당 알고리즘의 실행은 핸드오버의 필요성이 인지될 때이다. Leader AUV가 새로운 수중 기지국으로부터 현재 연결된 수중 기지국의 파일럿 신호 RSRP보다 문턱값 이상 강한 파일럿 신호를 수신할 때, Member AUV들에게 합의 시작 메시지를 전송함으로써 실행된다. 이후, Leader AUV에서 갱신된 상태값 변화량이 종료 임계값 이하로 감소하면, 이웃 Member AUV에게 종료 메시지를 전송하여 알고리즘을 종료한다. 그러나 알고리즘 종료 후 가장 높은 상태값을 나타내는 기지국이 기존 연결된 기지국과 동일한 경우 현재 기지국과의 연결을 그대로 유지한다. 이 경우, 불필요한 합의 알고리즘 실행을 방지하기 위해서 합의 알고리즘 시작을 위한 문턱값을 만큼 증가시킨다.
합의 알고리즘의 수렴 시까지 소요시간은 기지국의 파일럿 신호 전송 주기보다 짧도록 관리하는 것이 바람직하다. 즉, RSRP의 갱신 이전에 합의된 결과가 도출되어야 이동에 의한 채널 상태의 변화에 적응할 수 있다. 이 조건을 수식으로 정리하면
으로 표현되며 여기에서 는 상태값 가 로 갱신될 때의 소요시간이며 은 수렴까지 총 갱신 횟수를 나타낸다. 는 수중 기지국의 파일럿 신호 전송 주기이다. 는 AUV 군집의 대형 규모 및 통신 채널 특성에 의해 결정되며, 은 𝛼와 에 의해서 결정된다.
IV. 모의실험
4.1 모의실험 환경 및 설정 파라미터
제안 기법의 성능을 분석하기 위해 C++ 소켓 통신을 이용하여 시뮬레이터를 제작하였다. 수중 음향 채널 모델링에는 TETCOS LLP에서 제공하는 Underwater Acoustic Networks(UWAN) 시뮬레이션을 참고하였으며,[10] 통신 모뎀으로는 Teledyne Benthos ATM- 903 commercial underwater modem을 참고하였다.[11] Table 1은 주요 시뮬레이션 파라미터이며, Fig. 5는 모의실험을 진행한 AUV 군집의 3가지 이동성 시나리오이다. 본 실험에서는 3개의 수중 기지국이 정삼각형 형태로 해면에 배치된 네트워크 환경에서 진행하였다. 시나리오 ①은 특정 위치에 고정된 경우이며(Fig. 5의 ①), 시나리오 ②는 기지국 A, B 사이를 이동하는 경우이다(Fig. 5의 ②). 시나리오 ③은 기지국 C의 커버리지를 따라 이동하는 경우이다(Fig. 5의 ③).
Table 1.
Simulation parameter.
4.2 합의 알고리즘의 수렴
Fig. 6은 Fig. 5에서 정의된 시나리오 ①에서, 제안된 합의 알고리즘을 통해 상태값이 수렴하는 과정을 보여준다. 합의 알고리즘 실행 초기에는 AUV 간 상태값에 차이가 있으나, 반복적인 정보 교환을 통해 각 AUV의 상태값은 수렴값으로 안정화된다. 이는 제안된 알고리즘을 통한 이웃 노드 간의 상태값 교환만으로도 AUV 군집이 하나의 일관된 결정에 도달할 수 있음을 의미한다. 수렴 결과, 다른 기지국에 비해 기지국 A로부터 수신한 상태값의 수렴값이 가장 크게 나타났으며 이것은 Fig. 5의 시나리오 ①에 부합한다.
4.3 합의 알고리즘의 동작 조건
Fig. 7은 상태값 갱신 비율 𝛼값에 따른 알고리즘 종료 시간을 나타낸 그래프이다. 해당 그래프는 𝛼값이 증가함에 따라 알고리즘 종료 시간이 선형적으로 감소하는 경향을 보였다. 이는 𝛼값이 클수록 상태값 갱신 속도가 빨라져, 합의 알고리즘이 더 적은 반복 횟수로 수렴하기 때문으로 분석된다. 그러나 𝛼값이 0.31을 초과하면 상태값이 발산하여, 합의 알고리즘이 정상적으로 동작하지 못하는 현상이 발생한다. Eq. (4)에 따르면, 제안 기법의 동작을 보장하기 위해서는 빨간 점선으로 표시된 = 2보다 작은 알고리즘 종료 시간을 가져야 한다. 즉, 𝛼값은 0.19보다 커야 한다. 결론적으로, 제안 기법이 정상적으로 동작하기 위한 𝛼의 범위는 0.19 < 𝛼 ≤ 0.31이며 가급적 빠른 수렴을 위해서는 동작범위 안에서 큰 값을 선택하는 것이 바람직하다.
4.4 핸드오버 시도 횟수
Fig. 8(a)와 (b)는 각각 시나리오 ②, ③에 대해서 누적 핸드오버 횟수를 기존 핸드오버 방식과 비교한 결과이다. x축은 시나리오 시작부터 경과한 시간을 나타내며, 구현된 시스템의 실제 동작 시간을 의미한다. 여기서 기존 핸드오버 방식은 Leader AUV가 단독으로 핸드오버 여부를 결정하는 방식으로, Member AUV들은 핸드오버 결정 과정에 참여하지 않는다. 즉, Leader AUV가 현재 연결된 수중 기지국의 파일럿 신호 RSRP보다 문턱값 이상 강한 파일럿 신호를 수신할 경우, 기지국으로 즉시 핸드오버 요청 메시지를 전송하게 된다. 시나리오 ②는 두 기지국 사이를 통과하는 상황으로 하나의 기지국과 연결을 유지하는 것이 네트워크 자원 측면에서 유리하다. 시나리오 ②에서 제안 기법은 2회의 핸드오버를 기록한 반면, 기존 기법은 15회의 핸드오버를 수행하였다. 또한, 시나리오 ③은 기지국 C의 커버리지 경로를 따라 이동하는 상황으로 다른 기지국으로의 핸드오버 수행이 불필요한 상황이다. 시나리오 ③의 상황에서는 제안 기법이 0회의 핸드오버를 기록한 반면, 기존 기법은 6회의 핸드오버를 보였다. 적은 핸드오버 횟수는 핑퐁 효과가 방지되는 것을 의미한다. 핑퐁 효과란, 단말이 두 기지국 사이에서 불필요하게 반복적으로 핸드오버를 수행하는 현상이다. 결론적으로, 본 연구의 제안 기법은 합의 알고리즘을 통해 AUV 간 상태 정보를 교환하여, 군집 전체의 채널 상태를 반영한 후 핸드오버 요청 메시지를 전송하기 때문에 보다 정확한 핸드오버 결정을 수행할 수 있다. 또한, 문턱값 갱신 기법을 통해 불필요한 핸드오버를 효과적으로 방지하며, 이는 제안 기법이 네트워크 자원을 효율적으로 사용하는 데 기여함을 나타낸다.
4.5 에너지 소모량
Fig. 9(a)와 (b)는 각각 시나리오 ②와 ③에서 핸드오버 동작에 따른 AUV 군집의 누적 에너지 소모량을 나타내며, x축은 시나리오 시작부터 경과한 시간으로, 구현된 시스템의 실제 동작 시간을 의미한다. Eq. (5)를 통해 AUV 군집의 에너지 소모량을 구할 수 있으며, 본 연구에서는 비중이 가장 큰 송신 에너지만을 고려하였다.
여기서 는 상태값 교환에 사용되는 패킷의 크기, 는 핸드오버 요청에 사용되는 패킷의 크기를 의미한다. 또한, 는 통신 과정에서의 데이터 전송률이다. 는 상태값 패킷 전송 시 단위 시간당 소모되는 전력이며, 는 핸드오버 요청 패킷 전송 시 단위 시간당 소모되는 전력이다. 와 를 계산하기 위해 Reference [12]의 ATM-903 모뎀의 송신 가능 거리와 소비전력을 참고하였으며, 이를 기반으로 본 실험에서 송신 거리별 전력 소모를 분석하였다. 본 실험에서 사용된 주요 시뮬레이션 파라미터는 Table 1에 정리하였다. 는 상태값 패킷의 총 전송 횟수이며, 는 핸드오버 요청 패킷의 총 전송 횟수를 나타낸다. 및 는 시나리오에 따른 시뮬레이션 진행 동안 횟수를 측정하였다.
시나리오 ②[Fig. 9(a)]에서는 약 960 s 이전까지, 시나리오 ③[Fig. 9(b)]에서는 약 3,540 s 이전까지 제안 기법이 기존 기법보다 더 많은 에너지를 소비하는 경향을 보인다. 이는 합의 알고리즘을 이용한 상태값 교환 과정에서 발생하는 메시지 오버헤드와 송신 에너지 소모 때문으로 분석된다. 그러나 역전 시점(crossover point) 이후부터는 기존 기법의 에너지 소모량이 제안 기법보다 더 빠르게 증가하며, 시뮬레이션 시간이 길어질수록 제안 기법의 에너지 소모량 개선이 뚜렷해진다. 특히, 실험이 종료된 시점에서 시나리오 ②에서 상태값 패킷의 총 전송 횟수 는 432회, 핸드오버 요청 패킷 총 전송 횟수 는 15회를 기록했다. 이에 따라 제안 기법은 3.83 J을 소모한 반면, 기존 기법은 6.3 J을 소모하여 약 39.21 %(= (6.3 - 3.83) / 6.3 * 100)의 에너지 소모량 절감 효과를 보였다. 또한, 시나리오 ③에서 상태값 패킷의 총 전송 횟수 는 288회, 핸드오버 요청 패킷 총 전송 횟수 는 6회를 기록했다. 이에 따라 제안 기법은 1.99 J을 소모한 반면, 기존 기법은 2.52 J을 소비하여 약 21.03 %(= (2.52 – 1.99) / 2.52 * 100) 개선된 지표를 확인할 수 있다. 결과적으로, 시나리오 ②와 ③에서 제안 기법은 기존 기법 대비 평균 30.12 %(= (39.21 + 21.03) / 2)의 에너지를 절감하였다. 이는 제안 기법이 합의 알고리즘과 문턱값 갱신을 통해 불필요한 핸드오버를 효과적으로 억제하여 에너지를 절약하고 있음을 나타낸다.
군집 내 AUV 개수가 증가하는 경우, 초기 합의 과정에 추가적인 에너지 소모가 발생하고, 이로 인해 제안 기법의 총 에너지 소모량이 일시적으로 증가할 수 있다. 하지만, 시간이 경과함에 따라 불필요한 핸드오버를 회피할 수 있는 긍정적인 효과가 지배하므로, 결국 Fig. 9에서처럼 제안 기법이 역전 시점을 지나면서 비교 기법에 비해 총 에너지 소모량이 작아진다. Fig. 10은 시나리오 ②와 ③에서 그룹 내 AUV 개수에 따른 역전 시점을 나타낸다. AUV 개수 증가에 따른 초기 합의 과정에서의 에너지 증가로 역전 시점이 뒤로 미뤄짐을 확인할 수 있다. 그러나 일반적으로 그룹 내 AUV 개수가 10개 이하이므로[12] Fig. 10에서 역전 시점이 약 2,000 s(30 min ~ 40 min) 이내에 발생함을 알 수 있다. 이 시간은 AUV의 일반적인 동작 시간이 짧게는 수십 시간에서 길게는 수개월까지 지속된다는 점을 고려할 때, 매우 초기이며 대부분의 정상 상태에서는 제안 기법의 에너지 절감효과가 크다고 할 수 있다. 결론적으로, 제안 기법은 합의 알고리즘으로 인한 추가적인 에너지 소모가 발생하지만, 장기적으로 불필요한 핸드오버를 회피함으로써 에너지 소모를 줄일 수 있고 나아가 네트워크 전체의 수명을 연장시킬 수 있다.
4.6 신호 대 잡음비
Fig. 11은 시나리오 ②, ③에서 기지국으로부터 수신된 AUV 군집의 평균 신호 대 잡음비(Signal to Noise Ratio, SNR)를 기존 핸드오버 방식과 비교한 것이다. 본 실험에서는 시뮬레이션 동안 일정한 주기로 군집 내 모든 AUV가 평가하는 SNR의 평균값을 평가 지표로 사용하였다. SNR은 수중 음향 네트워크에서 수동 소나 방정식(passive sonar equation)에 의해 정의되며,[10] 다음과 같다:
여기서 은 음원 레벨(source level)로, 기지국이 송신하는 신호의 강도이다. 은 거리 및 대역폭의 함수로 정의된 전파 손실(transmission loss)이며, 은 난류 잡음(turbulence noise), 선박 잡음(ship noise), 바람 잡음(wind noise), 열 잡음(thermal noise)을 합산하여 산출된 잡음 레벨(noise level)이다. 따라서 해당 성능지표를 통해 군집 내 AUV의 평균적인 수신 채널 품질을 확인할 수 있다.
시나리오 ②에서 제안 기법은 36.63 dB로 기존 기법의 33.63 dB보다 8.92 %(= (36.63 – 33.63) / 33.63 * 100) 향상된 채널 품질을 보였다. 시나리오 ③에서도 제안 기법이 37.46 dB로 기존 기법의 34.41 dB보다 8.86 %(= (37.46 – 34.41) / 34.41 * 100) 향상되었다. 결과적으로, 제안 기법은 기존 기법 대비 평균 8.89 %(= (8.92 + 8.86) / 2)의 채널 품질 향상 효과를 보였다. 해당 결과는 제안 기법이 RSRP 기반 합의 알고리즘을 활용하므로 군집 전체의 위치 정보를 반영하기 때문에 채널 품질이 보다 우수한 기지국과의 연결을 유지할 수 있음을 보여준다. 즉, AUV 군집의 안정적이고 신뢰성 있는 통신을 지원할 수 있다.
V. 결 론
본 논문에서는 AUV 군집의 안정적인 통신 연결을 보장하기 위해 합의 기반 핸드오버 기법을 제안하였다. 제안 기법은 군집 전체의 위치 정보를 반영하고 문턱값을 갱신함으로써, 핸드오버 과정에서 발생할 수 있는 불필요한 핑퐁 효과를 최소화하여 정확한 핸드오버 결정을 가능하게 한다. 모의실험 결과, 제안 기법은 실험이 종료되는 시점에서 기존 기법 대비 에너지 소모량을 평균 30.12 % 절감하였으며, 신호 품질 또한 평균적으로 8.89 % 향상되는 효과를 보였다. 이는 제안 기법이 보다 효율적이고 안정적인 핸드오버 기법임을 입증한다. 따라서, 본 연구에서 제안한 합의 기반 핸드오버 기법은 향후 수중 탐사, 군사 작전 등 다양한 해양 분야에서 AUV 군집의 통신 효율성과 안정성을 향상시키는 데 기여할 것으로 기대된다.