Ⅰ. 서론
VANET(Vehicular Ad-hoc Network)은 도로 상에서 이동하는 차량들과 도로변에 고정된 장치들이 무선으로 통신하는 네트워크이다. VANET은 도로 상에서 발생하는 다양한 정보를 바탕으로 안전한 차량 운행뿐만 아니라, 운전자에 최적화된 다양한 서비스를 제공할 수 있다. 최근 몇 년 동안, 인구 및 차량의 증가로 인해 도시 내의 도로에서 교통 정체가 빈번히 발생하며, 이로 인한 교통사고가 증가하고 있다. 세계보건기구(WHO)의 의료 보고서에 따르면 15세에서 29세 사이의 주요 사망 원인은 교통사고이며, 전 세계적으로 연간 130만 명이 교통사고로 사망하고 있다[1]. VANET의 활용에 있어서 중요한 하나의 분야는 이러한 교통 정체로 인한 교통사고를 줄이는 것이다. VANET의 두 가지 주요 통신 모델은 차량 대 차량(V2V, Vehicle-to-Vehicle) 통신과 차량 대 인프라(V2I, Vehicle-to-Infrastructure) 통신으로 분류된다. V2V 통신은 서로 다른 차량들 간의 통신이고, V2I는 차량과 도로변에 배치된 프레임워크간의 통신을 의미한다[2, 3].
이러한 VANET의 주요 통신 모듈은 <그림 1>과 같이 RSU(Road Side Unit)와 OBU(On-Board Unit)로 구성된다. RSU는 신뢰성 높은 네트워크 커버리지를 제공하기 위해 도로변의 주요 지점에 배치하며, 인접한 RSU간의 거리는 일련의 RSU의 범위 내에서 겹치게 유지된다. OBU는 차량 내에 배치되며, 차량에서 발생하는 모든 데이터를 수신, 처리, 관리하는 역할을 수행한다[4]. 또한, OBU는 인접 차량의 OBU뿐만 아니라, RSU와 데이터를 교환함으로써 VANET을 구성하게 된다.
<그림 1> VANET의 통신 구조
본 논문에서는 모든 차량이 OBU를 탑재하고 있으며, 자신의 위치 정보를 얻기 위한 GPS를 가지고 있다고 가정한다. 따라서 모든 차량은 자신의 주변에서 발생하는 다양한 교통 정보를 취합하여 인접 차량과 정보를 교환할 수 있으며, RSU에 이러한 정보를 전달할 수 있다. 이러한 VANET의 특성을 활용하면 시내 도로에서 발생하는 다양한 위험 요소와 교통 정체 등으로 인한 교통사고를 줄일 수 있으며, 궁극적으로 교통의 흐름을 원활하게 하기위한 교통 신호를 제어할 수 있다. 따라서 본 논문에서는 VANET을 활용하여 교통 신호등을 동적으로 제어할 수 있는 동적인 교통 신호등 제어(DTLC, Dynamic Traffic Light Control) 기법을 제안하고, 성능평가를 통해 제안된 DTLC의 타당성을 입증한다.
본 논문의 구성은 다음과 같다. 2장에서는 VANET를 활용한 신호등 제어와 관련된 기존의 연구들에 대하여 기술한다. 3장에서는 본 논문에서 제안한 DTLC 메커니즘의 동작 방식에 대하여 기술하고, 4장에서는 DTLC 메커니즘에 대한 성능평가를 기술한다. 5장에서는 결론 및 향후 과제에 대하여 기술한다.
Ⅱ. 관련 연구
전통적인 교통 신호등 제어 시스템은 일반적으로 미리 정해진 슬롯 방식으로 교차로에 위치한 차량들을 스케줄링한다. 이렇게 미리 설정된 타임 슬롯 방식은 차량의 도착 시간 및 차량의 대기 시간 등을 고려하지 않기 때문에 교차로에서 차량의 대기 시간을 최소화하지 못하며, 앰뷸런스나 소방차와 같은 긴급 차량의 우선 주행 등을 제공하지 못한다[5]. 최근에는 VANET을 활용하여 차량의 정체를 해결하거나 교통 신호를 제어하기 위한 다양한 연구가 진행되고 있다.
[6]에서 저자들은 차량 운전자에게 교통 밀집도와 날씨 상태에 대한 정보를 제공하는 지능 교통 신호등(LTS, Intelligent Traffic Light)으로 구성된 경보 시스템을 제안했다. 이들 LTS는 가까이 근접하는 차량들에게 이러한 도로 통계 정보를 전달하고, 해당 도로에서 교통사고가 발생한 경우에는 이로 인한 후미의 차량들 간의 차량 충돌을 회피하기 위한 경고 메시지를 모든 차량들에게 전달하도록 하였다.
[7]에서 저자들은 차량들의 실시간 교통 정보를 얻기 위해 V2I를 사용하는 것을 제안하였다. 따라서 RSU가 설치된 교차로에 차량들이 진입하면 차량들은 자신의 현재 속도, 위치, 타임스탬프 정보를 실시간으로 RSU로 전송한다. 이러한 차량의 정보를 수신한 신호 제어기는 신호 시간을 생성하기 위한 자신의 알고리즘을 적용하였다. 이방식의 단점은 RSU에 의한 대량의 브로드캐스팅 메시지를 처리하는 문제와 이들 메시지의 중복을 식별해야 하는 부하를 갖는다.
[8]에서 저자들은 차량들을 각 차선의 그룹에 할당하는 메카니즘을 제안하였다. 각 그룹은 적색 신호 간격의 초기화에 의해 타임스탬프들과 정지선에 가장 근접한 차량을 비교하기 위한 패킷 전송을 통해 그룹 리더를 선출하는 절차를 시작한다. 그룹 리더는 자신의 지명을 알리는 패킷을 브로드캐스트하고, 멤버들을 정보를 수신할 때까지 기다린 후, 각 멤버에게 수락 패킷을 회신한다. 그룹 리더는 RSU에게 정기적으로 그룹의 밀집도를 브로드캐스트해야 한다. 이러한 특성으로 인해 교통 정보의 신뢰성과 정확성은 향상되지만, 그룹 리더를 선정하는 과정에서의 과도한 부하와 브로드 캐스트 폭풍 문제가 발생할 수 있다.
[9]에서는 VANET을 활용하여 V2V와 V2I 통신을 통해 도로 상에서 발생하는 교통 체증을 검출하고 관리하는 방법에 대하여 기술하였다. RSU가 교통 체증의 유무를 판별하기 위해 자신의 통신 범위로 진입하는 차량들에 대한 속도, 위치 이동방향에 대한 정보를 획득하여, 이들 정보를 바탕으로 차량들의 밀도와 평균 속도를 계산하고, 정해진 임계값을 넘는지 판별하였다. 이러한 교통 체증 정보는 V2I와 V2V를 통해 인접한 RSU들에게 전달되어 교통 체증이 발생한 도로로의 진입대신 우회 도로를 선택하도록 하였다. 제안된 기법의 성능 평가를 위하여 AODV와 GPSR 프로토콜을 사용하여 평균 교통 체증의 발생 건수와 교통 체증의 시간을 통해 그 타당성을 실험하였다. 그러나 이들의 연구 결과는 이전에 기술한 것처럼 교차로에서의 동적인 신호 제어를 수행하지 못한다.
Ⅲ. 동적인 교통 신호등 제어(DTLC)
3.1 DTLC 기본 개념
본 논문에서 제안하는 DTLC는 RSU에서 V2I 및 V2V 통신을 통해 차량들로부터 각 차량의 상태를 수집하고, 이 정보를 신호등 제어기(TLC, Traffic Light Controller)에 전달함으로써 TLC가 차량들의 정차 횟수를 줄이고, 주행 시간을 단축할 수 있도록 신호등을 제어할 수 있게 한다. RSU에서 각 차량으로부터 수집하는 데이터는 현재 이동 방향(θ(ν))과 현재 순간 속도(ν(t)) 정보이다. 각 차량의 이동 방향(θ(ν))은 차선 변경과 같은 순간적인 방향 전환에 의한 오차를 줄이기 위해 GPS를 이용해 현재 위치와 지나온 궤적에서 이전 위치를 연결하는 벡터를 통해 계산한다.
<그림 2>는 DTLC에서 각 도로 구간에서 같은 방향으로 이동하는 차량들을 식별하기 위해 360°를 하나의 방위각이 45°가 되도록 8개의 절대 방위각으로 나눈 것이다. 절대 방위각을 적용하기 위한 각 차량들의 이동 방향(θ(d))은 수식 (1)로 구하고, 수식 (2)를 통해 동일한 이동 방향(θ(s))을 갖는 차량들을 식별할 수 있다.
<그림 2> 차량의 이동 방향 및 방위 설정
θ(d) = (θ(ν) + di × 45°) mod 360 (1)
θ(s) = θ(d) + α ~ θ(d) + α (2)
여기에서 di는 8개 절대 방위각으로 나눈 방향 설정 번호이고, mod는 모듈로(modulo) 연산을 의미한다.
각 도로 구간에서 각 차량이 시간에 따른 변위 s = s(t)가 발생하면 시간 t에서 (t + ∆t) 동안의 각 차량의 순간 속도(ν(t))는 수식 (3)과 같이 각 차량의 평균 속도를 미분하여 구할 수 있다.
\(\begin{aligned}v(t)=\lim _{\Delta t \rightarrow 0} \frac{\Delta s}{\Delta t}=\lim _{\Delta t \rightarrow 0} \frac{s(t+\Delta t)-s(t)}{\Delta t}\end{aligned}\) (3)
따라서 현재 각 도로 구간에서 동일한 방향(θ(s))으로 이동하는 차량들의 평균 속도(\(\begin{aligned}\bar v\end{aligned}\))는 수식 (4)와 같다.
\(\begin{aligned}\bar{v}=\frac{\sum_{i}^{n} v(t)}{n(v)}\end{aligned}\) (4)
여기에서 n(ν)는 해당 도로 구간내의 차량의 수이다. 차량들의 이동은 변속 운동이므로 속도가 시간에 따라 변화한다. 따라서 각 시점의 순간 속도를 사용하여 차량들의 평균 속도를 구할 수 있다. 또한 각 도로 구간에서 동일한 방향(θ(s))으로 이동하는 차량들의 현재 밀도(ρ)는 수식 (5)로 계산한다.
\(\begin{aligned}\rho=\frac{n(v)}{l(r)}\end{aligned}\) (5)
여기에서 l(r)은 각 도로 구간의 길이이다.
DTLC에서 사용하는 신호등 주기는 기본적으로 웹스터(Webster)의 신호주기 산출 공식(6)[10]을 기반으로 한다.
\(\begin{aligned}c_{p}=\frac{1.5 l+5}{1-\sum_{i=1}^{n} y_{i}}\end{aligned}\) (6)
여기에서 cp는 초(sec) 단위의 신호 주기이고, l은 주기당 총 손실시간(이동 방향(d(i))당 손실시간의 합), n은 주기당 d(i)의 수, yi는 포화도이다. 포화도는 d(i)의 최대 교통량을 d(i)의 포화 교통량으로 나눈 값이다. DTLC는 신호 주기가 d(i)별로 차량의 밀도(ρ)에 비례하도록 각 d(i)별로 요구되는 시간(cr)을 수식 (7)과 같이 d(i)별로 ρ에 비례하도록 평균차 두시간(h)을 곱하여 구한다.
\(\begin{aligned}c_{r}=\rho \times h, h=\frac{3600}{q}\end{aligned}\) (7)
여기에서 q는 교통량으로 q = n(ν)/hour로 구한다. 여기에 수식 (8)과 같이 적색 시간(t(r))과 황색 시간(t(y))을 더하여 d(i)별 요구 시간을 구한다.
cr = cr + t(r) + t(y) (8)
이렇게 구해진 요구 시간(cr)과 기본 주기(cp)를 비교하여 더 큰 값을 DTLC 신호주기(ct(l))로 결정한다.
ct(l) = max(cp, cr) (9)
3.2 DTLC 알고리즘
<그림 3>은 교차로에서 그린 신호를 받을 수 있는 8개의 교통 흐름(d(1) ~ d(8))을 보인 것이다. DTLC에서 모든 좌회전은 단지 직진 신호 후 일정 시간 동안만 그린 신호를 받는 것으로 제한한다. DTLC에서는 전체 신호등의 제어를 관장하는 중앙 시스템을 두지 않고, 분산된 방식으로 각 TLC에서 자체적으로 결정하도록 한다. 이를 위해 교차로와 같은 도로에서 TLC는 RSU와 직접적으로 유/무선으로 통신할 수 있어야 한다. 또한 각 차량은 V2I 통신을 수행할 수 있도록 OBU를 탑재하고 있어서 도로변에 설치된 RSU에서 각 차량의 상태 정보를 수집한다. 일반적으로 녹색 신호와 적색 신호는 30초에서 60초 정도의 지속 시간을 가지며, 황색 신호는 훨씬 짧은 3초에서 6초 정도의 지속 시간을 갖는다.
<그림 3> DTLC 구조와 교차로 신호에 따른 주행 경로
<표 1>은 본 논문에서 제안한 DLTC 알고리즘을 나타낸 것이다.
<표 1> DTLC 알고리즘
도로변에 설치된 RSU는 각 도로의 동일한 이동 방향(θ(s))을 갖는 차량별로 차량의 밀도(ρ)와 평균 속도(\(\begin{aligned}\bar v\end{aligned}\))를 구하고, 이 정보를 TLC로 전달한다. TLC는 RSU로부터 전달받은 ρ와 \(\begin{aligned}\bar v\end{aligned}\)가 각각 도로의 수용 가능 밀도(\(\begin{aligned}\rho_{r_{\text {threshold }}}\end{aligned}\)) 이상인 이동 방향과 최저 속도(\(\begin{aligned}\bar v_{r_{\text {threshold }}}\end{aligned}\)) 이하인 이동 방향의 존재를 검출한다. 이를 통해 교차로 지선 중 어느 도로가 다른 도로에 비해 정체가 발생하고 있는지 파악한다. TLC에서 가장 높은 녹색 신호 우선권은 ρ가 \(\begin{aligned}\rho_{r_{\text {threshold }}}\end{aligned}\) 보다 큰 도로가 갖게 되고, \(\begin{aligned}\bar v\end{aligned}\)가 \(\begin{aligned}\bar v_{r_{\text {threshold }}}\end{aligned}\)보다 낮은 도로가 그 다음 우선권을 갖는다. TLC는 이를 위해 현재 신호등(t(c))이 적색 신호(t(r))인지 녹색 신호(t(g))인지 확인하기 위해 수식 (10)을 사용한다.
t(c) = t % ct(l) (10)
여기에서 t는 현재 시간이고, ct(l)는 해당 신호등의 주기이다. 만일 현재 신호등(t(c))이 해당 신호등의 적색 신호(t(r)) 지속시간 보다 작거나 같은 경우에는 해당 신호등은 적색 신호인 상태이고, 그렇지 않은 경우에는 녹색 신호(t(g))인 상태가 된다. 따라서 t(c)가 t(r)인 경우에는 신호등을 t(g)로 바꾸고, 이미 t(g)인 경우에는 지속시간(∆t)을 더해줌으로써 원활한 교통 흐름이 되도록 한다.
Ⅳ. 성능 평가
본 논문에서 제안한 DTLC 기법의 타당성을 측정하기 위해 ns-2 시뮬레이터를 기반으로 교차로에서의 평균 주행 속도 및 평균 대기 시간에 대한 실험을 수행하였다. 차량의 이동 위치 및 이동 환경을 위한 교차로 모델은 VanetMobiSim[11, 12]을 이용하여 구현하였다. 실험은 2분 동안 수행하였으며, 각 실험에서 차량 노드의 수는 20대씩 100대까지 증가하는 상황으로 실험하였다.
<표 2> 시뮬레이션 파라미터
<그림 4>는 차량 노드의 증가에 따른 평균 주행 속도를 보인 것이다. <그림 4>에서 보인 것과 같이 차량 노드가 증가함에 따라 평균 주행 속도는 감소하는 것을 알 수 있다. 이것은 차량 노드의 수가 증가함에 따라 나타나는 일반적인 현상으로 노드의 밀도가 높아짐에 따라 나타나는 현상으로 정의할 수 있다.
<그림 4> 평균 주행 속도
그러나 차량 평균 주행 속도의 감소를 고려하였을 때, 차량 노드가 증가되더라도 급격하게 감소하지 않는 것을 확인 할 수 있다. 이러한 이유는 본 논문에서 제안하는 DTLC 기법의 경우 차량의 이동 방향과, 차량 노드들의 밀도를 앞서 언급한 8개의 교통 흐름(d(1) ~ d(8))을 기준으로 동적으로 판단하기 때문에, 각 교차로에서 차량의 이동 방향과 밀도에 따라 신호 주기 및 신호에 대한 변경을 진행하였기 때문이다.
<그림 5>는 교차로별 평균 대기시간을 보인 것이다. 본 실험을 위하여 각 6개의 교차로에서 녹색 신호와 적색 신호의 지속 시간은 30초로 정의하였으며, 황색 신호는 3초로 정의하여 각 교차로별 차량 노드의 평균 대기시간을 구하였다. <그림 5>에서 보는 것과 같이 차량 노드의 수가 증가함에 따라 각 교차로에서의 평균 대기시간이 증가하는 것을 확인할 수 있다. 그러나 차량의 노드의 수가 증가하더라도 각 교차로에서의 평균 대기시간은 거의 일정한 것을 확인할 수 있다. 이러한 이유는 TLC에서 RSU로부터 전달받은 각 도로의 수용 가능 밀도와 차량 노드의 이동 방향, 최저 속도를 통하여 각 교차로 별 정체 발생 유무를 판단하고, 신호의 흐름을 동적으로 변경하여, 교차로 전반적으로 차량 노드의 이동의 흐름을 원활하게 분배하였기 때문으로 판단할 수 있다. 즉, 6개의 교차로에서 밀도의 분포에 따라 교통의 흐름을 고르게 분배하였다고 판단할 수 있다.
<그림 5> 평균 대기 시간
Ⅴ. 결론
본 논문에서는 시내 교차로에서의 교통 신호로 인한 도로의 정체 문제를 해결하기 위하여 노변에 설치된 RSU와 신호등을 제어하는 TLC를 활용하여 각 지선의 교통 상황에 따라 교차로 신호등을 동적으로 제어하는 동적인 교통 신호등 제어(DTLC) 기법을 제안하였다. DTLC 기법은 각 차량의 순간 속도와 이동 방향 정보를 사용하여 해당 도로의 정체 여부를 밀도와 평균 속도를 구하여 판별하였다. 이를 위해 동일한 방향으로 이동하는 차량들을 판별하기 위한 8개의 절대 방위각을 사용하였다. 또한 시뮬레이션을 단순화하기 위해 좌회전은 직진 이후에 짧은 시간 동안만 허용하였다. 또한 DTLC 기법은 분산된 방식으로 각 교차로의 TLC가 스스로 교통 신호를 제어하도록 하였다. ns-2를 사용한 시뮬레이션 결과 본 논문에서 제안한 DTLC 기법이 시내 교차로에서의 교통 체증을 어느 정도 완화해 줄 수 있음을 확인하였다. 향후 연구과제로는 본 논문에서 제안한 DTLC 기법을 실제적으로 활용할 수 있을 정도로 고도화하고 현실의 문제점들을 보다 더 반영하도록 연구하는 것이다.
References
- WHO, Global Status Report on Road Safety 2015, World Health Organization, Geneva, Switzerland, 2015.
- 차시호.이종언.류민우, "차량의 이동 방향과 거리기반의 그리디 애니캐스트 포워딩 프로토콜," 디지털산업정보학회논문지, 제13권, 제1호, 2017, pp. 79-85. https://doi.org/10.17662/KSDIM.2017.13.1.079
- 류민우.차시호, "차량인터넷에서 지능형 서비스 제공을 위한 지식베이스 설계 및 구축," 디지털산업정보학회논문지, 제13권, 제4호, 2017, pp. 33-40. https://doi.org/10.17662/KSDIM.2017.13.4.033
- M. Z. Khan, VANETs, Topic review, Scholarly Community Encyclopedia, https://encyclopedia. pub/9694.
- V. Hemakumar, H. Nazini, "Optimized traffic signal control system at traffic intersections using VANET," IET Chennai 4th International Conference on Sustainable Energy and Intelligent Systems (SEISCON 2013), Chennai, India, 12-14 Dec. 2013, pp. 305-312.
- C. T. Barba, M. A. Mateos, P. R. Soto, A. M. Mezher, M. A. Igartua, "Smart city for VANETs using warning messages, traffic statistics and intelligent traffic lights," IEEE Intelligent Vehicles Symposium, IEEE, 2012, pp. 902-9087.
- K. Pandit, D. Ghosal, M. Zhang C. Chuah, "Adaptive Traffic Signal Control with Vehicular Ad hoc Networks," IEEE Transactions on Vehicular Technology, Vol. 62, No. 4, May 2013, pp. 1459-1471. https://doi.org/10.1109/TVT.2013.2241460
- H.-J. Chang, G.-T. Park, "A study on traffic signal control at signalized intersections in vehicular ad hoc networks," Ad Hoc Networks, Vol. 11, No, 7, Sep. 2013, pp. 2115-2124. https://doi.org/10.1016/j.adhoc.2012.02.013
- 차시호.류민우, "차량 애드혹 네트워크 기반 V2V 와 V2I 통신을 사용한 시내 도로에서의 교통 체증관리," 디지털산업정보학회논문지, 제18권, 제2호, 2022, pp. 9-16. https://doi.org/10.17662/KSDIM.2022.18.2.009
- F. V. Webster, B. M. Cobbe, Traffic Signals, Road Research Laboratory, 1966.
- J. Harri, F. Filali, C. Bonnet, Marco Fiore, "VanetMobiSim: generating realistic mobility patterns for VANETs," Proceedings of the 3rd international workshop on Vehicular ad hoc networks, Sep. 2006, pp. 96-97.
- VanetMobiSim, http://vanet.eurecom.fr/.