주차 문제와 관련된 네비게이션 앱의 시간 추정 오류를 해결하기 위해 확률 기반 주차 선택 문제를 제안하고, 동적 프로그래밍을 활용한 적응형 프레임워크를 소개한다. 실제 데이터를 이용한 실험 결과, 이 접근법은 주행 시간과 도착 시간의 예측 정확도를 크게 향상시킬 수 있음을 보여준다.
1. **확률 기반 주차 선택 문제와 동적 프로그래밍**: 네비게이션 앱에서 제공하는 주차 정보가 불완전할 때, 차량 운전자가 최적의 주차 장소를 선택하도록 도와주는 방법을 제안한다. 이는 마치 날씨 예보를 바탕으로 옷을 입듯이, 주차장의 확률적인 주차 가능성을 이용해 주차장을 선택하는 것과 같다.
주차, 네비게이션, 확률 모델링, 동적 프로그래밍, 이동 시간
서론
네비게이션 앱은 보통 운전자가 목적지로 가는 길을 안내하며 때때로 주변 지역의 주차 상태에 대한 간단한 평가(예: ‘쉬움’, ‘어려움’)를 제공합니다. 하지만 목적지에서 주차 공간이 없거나 사용할 수 없는 경우, 운전자는 다른 곳에서 주차하거나 현재 위치에서 주차 공간을 찾기 위해 순회해야 합니다. 예를 들어 샌프란시스코 일반 병원에 있는 주차장은 도로변 주차가 제한된 지역에 위치하고 있습니다: 이 주차장이 가득 차 있을 때, 가장 가까운 다른 주차장으로 운전하고 걸어가는 시간은 Google Maps 경로 추정에 따르면 환자와 방문객에게 최소 30분 이상의 추가 시간을 필요로 합니다. 이러한 시나리오는 많은 도시 운전자들에게 익숙하며, 현재의 ‘운전까지’ 시간 추정치가 주차 어려움을 무시하고 있는 반면 더 유용한 ‘도착까지’ 시간 추정치는 실제 주행 시간과 주차 후 걸어가는 시간을 고려한다는 것을 강조합니다.
불편함을 넘어, 개인 차량으로의 도착 시간을 과소평가하는 것은 두 가지 다른 문제를 초래할 수 있습니다. 첫째, 운전자가 더 정확한 추정치가 있다면 모드 전환이 일어날 수도 있습니다. 이는 특히 Google Maps나 Apple Maps와 같은 인기 네비게이션 앱들이 도보 시간을 포함하여 대중교통 총 여행 시간을 추정하지만, 주차장에서 최종 목적지까지의 걸음 수를 포함한 총 운전 시간 추정치는 제공하지 않는다는 점에서 더욱 중요합니다. 둘째, 주차를 찾기 위해 순회하는 것은 도시 환경의 교통 체증과 배출량 증가에 기여할 수 있습니다.
이 문제를 해결하기 위해 본 논문은 확률을 고려한 주차 선택 문제를 소개하고 위치와 주차장 단위 확률 정보에 근거하여 운전자를 가장 좋은 주차 위치로 안내하는 적응형 동적 프로그래밍 프레임워크를 제안합니다. 동적 프로그래밍 프레임워크는 불확실성, 민감도, 변화하는 확률 하에서 최적의 주차 전략을 분석하고 이해하는 구조적인 이론적 토대를 제공하며, 거기서 발생할 수 있는 타협점을 이해하는 메커니즘도 제공합니다. 실세계 주차 데이터를 활용한 결과는 실제 주차장 단위 확률 관찰이 효과적인 추정 방법일 수 있음을 나타냅니다. 분석된 사례에서 확인된 확률의 절대 오차 평균은 초기에는 7% 미만으로 시작하여 관찰 횟수가 증가함에 따라 2% 이하로 감소합니다. 다양한 환경에서 실제 데이터를 활용한 시뮬레이션은 확률 기반 주차 전략의 실용적 잠재력을 보여줍니다. 연구된 모든 사례에서 이러한 전략들은 기존 방법보다 우수하며, 교통 체증이 가장 심각한 설정에서는 최대 66%까지 시간을 절약할 수 있습니다. 본 논문은 세 가지 기여를 합니다:
-
확률을 고려한 주차 선택 문제와 해당 문제에 대한 적응형 동적 프로그래밍 해결책의 소개.
-
특정 주차장에서 대기하는 것이 더 나은지 다른 주차장을 방문하는 것이 더 나은지를 구분할 수 있는 폐쇄 형태 분석 및 변동 확률에 대한 민감도 분석.
-
확률을 고려한 주차 전략과 실세계 데이터를 활용한 비교 사례 연구의 평가.
본 논문의 나머지 부분은 다음과 같이 구성됩니다:
2장에서는 관련 문헌을 검토합니다.
3장에서는 동적 프로그래밍 문제와 해당 해결책, 그리고 변동 확률 설정에 대한 분석을 소개합니다.
4장에서는 확률 관찰로부터 오류를 탐색하는 실험을 상세히 다룹니다.
5장에서는 확률 기반 주차 전략과 기본 검색 전략을 비교합니다.
6장에서는 미래 연구에 대한 함의를 제시합니다.
관련 연구
확률을 고려한 주차 선택 문제는 잘 연구된 최적 중단 문제가 아니며, 또한 순회에 대한 다른 이론적 분석과도 차이가 있습니다. 주요히 운전자가 어디에서 주차할지 결정할 수 있는 반면, 미리 정의된 경로를 따라 운행하면서 목적지까지의 거리가 엄격하게 감소하는 경우에만 기다리는 것을 수동적으로 받아들이는 것이 아닙니다. 본 연구는 전체 주차장 단위 확률을 고려하며 개별 공간 단위보다 쉽게 추정할 수 있습니다. 그럼에도 불구하고, 우리의 프레임워크는 각각의 주차 공간을 독립된 주차장으로 취급하여 스폿 단위 분석을 수행할 수 있습니다. 최적 중단 변형에서 후퇴를 허용하더라도 차량은 방문하는 순서를 변경할 수 없으며, 운행 기하학은 1차원이며 주차 가능 확률이 거의 일정합니다.
두 가지 잘 수행된 관련 연구는 운전자의 주차 선호도, 도로 네트워크, 교통 규칙 및 주차 규정에 대한 정보를 제공하면서 알고리즘은 가능한 경로를 따라 기대 운전자 효용을 탐욕적으로 계산하여 트래JECTORY를 제안합니다. 설명하는 라우팅 접근법은 A* 알고리즘을 사용하고, 해당 함수의 가중치 항을 최적화하는데 중점을 두며, 특정 도로 네트워크 및 정적인 주차 확률 집합에 특화되어 있습니다. 그러나 이러한 연구들은 거리 주차만 고려하며 폐쇄형 분석을 사용하여 가능성을 표현하거나 비교하지 않으며, 목적지 근처의 미리 정의된 허용 경계 내에서 순회에 중점을 두고 있으며 최종 목적지와 별도로 주차 위치를 사전에 선택하는 것에는 중점을 두지 않습니다. 또한 동적 프로그래밍 프레임워크를 제안하지 않으며, 어떻게 주차 정보를 얻을 수 있는지 설명하지 않고, 동적 주차 확률을 고려하지 않습니다.
다양한 모바일 애플리케이션이 존재하거나 제안되었지만 (예: SpotHero, SpotAngels, ParkCBR, Parking.com, Park Smarter), 이러한 앱들은 일반적으로 앱의 통제 하에 있는 주차 공간만 예약 및 결제 시스템을 제공합니다. 다른 시스템인 iParker는 가격에 중점을 둔 반면 확률 기반 주차장 선택에는 중점을 두지 않습니다.
[fig:mdp_diagram]
style=“width:98.0%” />
지정된 MDP의 시각화. 오렌지색 상태는 주차장에서 성공적으로 주차한 것을 나타냅니다 ((⋅, o)), 이들은 종료 상태입니다. 보라색 상태는 운전자가 주차장을 방문하고 즉시 주차할 수 없으며 따라서 다른 주차장에 가거나 현재 주차장에서 기다릴지 결정하는 경우를 나타냅니다 ((⋅, u)). 행동 (a)과 연결된 확률 (p)은 표시되며, 명확성을 위해 일부는 생략되었습니다. 복잡성의 증가를 피하기 위해 일부 보상만 표시됩니다; 전체 보상 체계는 본문에서 설명됩니다.
방법론
프레임워크
공간 구조, 시간 비용, 정보 및 주차 관련 불확실성을 포착하고 폐쇄형 분석을 가능하게 하는 프레임워크를 구성하는 초기 과제가 있습니다. 우리는 무한 기한 마르코프 의사결정 과정 (MDP) $`\mathcal{M} = (\mathcal{S}, \mathcal{A}, \mathcal{P}, \mathcal{R}, s_0)`$을 사용하여 이 상황을 모델링합니다; 1장 참조. 각 상태 $`s \in \mathcal{S}`$는 튜플 $`(i, \{u, o\})`$로 구성되며 여기서 $`i \in \{0, ..., N\}`$은 원점 ($`0`$)과 $`N`$개의 거리 또는 오프-스트리트 주차장을 가리키는 인덱스이며 집합 $`\{u, o\}`$은 차량의 주차 상태를 나타냅니다. 여기서 $`u`$는 unparked이고 $`o`$는 open한 공간에서 주차된 것을 의미합니다. 초기 상태 $`s_0 = (0, u)`$는 따라서 원점에 위치한 주차되지 않은 차량을 나타냅니다. 주차 상태는 종료 상태입니다.
각 타임스텝에서 행동 $`a_i \in \mathcal{A} = \{ 1, \dots, N \}`$은 주차장 $`i`$에 주차하려는 시도를 나타냅니다. $`a_0`$이 없기 때문에 차량은 원점에서 머물거나 돌아갈 수 없습니다. 이 시도는 주차장 별 확률 $`p_i \in \mathcal{P}`$로 성공하고 $`1 - p_i`$의 확률로 실패합니다. 우리는 $`p_i \in (0, 1]`$을 가정합니다. $`r_{i, (j, \{u, o\})} \in \mathcal{R}`$은 차량이 상태 $`(i, u)`$에서 시작하여 행동 $`a_j`$를 취하고 다른 주차장 $`j`$에 주차하려는 과정에서 발생하는 순간 보상을 나타냅니다. 이 시도가 성공하면 $`r_{i, (j, o)} = -t_{i \rightarrow j} - t_{j \rightarrow D}`$의 보상이 발생합니다. 여기서 $`t_{i \rightarrow j}`$는 주차장 $`i`$에서 $`j`$까지의 주행 시간을 나타내고 $`t_{j \rightarrow D}`$는 주차장 $`j`$에서 최종 목적지 $`D`$까지의 걸음 수를 나타냅니다. 시도가 실패하면 단순히 $`r_{i, (j, u)} = -t_{i \rightarrow j}`$의 주행 시간 보상만 발생합니다. 차량이 어떠한 주차장에서도 주차되지 않은 상태에 있을 때 다음 타임스텝에서 두 가지 옵션이 있습니다: 새로운 주차장 $`k`$로 이동하거나 현재 주차장에서 다른 기회를 위해 대기하는 것입니다. 전자는 앞서 설명한 공식, 즉 $`r_{j, (k, u)}`$ 또는 $`r_{j, (k, o)}`$의 보상을 발생시킵니다. $`t_{\text{wait}}`$은 현재 주차장에서 대기하고 다른 기회를 위해 대기를 하는 대기 시간을 나타냅니다. 후자는 성공적으로 주차할 경우 $`r_{j, (j, o)} = -t_{\text{wait}} - t_{j \rightarrow D}`$의 보상과 실패한 경우 $`r_{j, (j, u)} = -t_{\text{wait}}`$의 보상을 발생시킵니다. 요약하면 가능한 보상은 다음과 같이 설명할 수 있습니다:
\begin{equation*}
r_{i, (j, \text{ status}=\{u, o\})}=\begin{cases}
-t_{i \rightarrow j} - t_{j \rightarrow D}, & \text{if $i \neq j$ \& status $=o$}\\
-t_{i \rightarrow j}, & \text{if $i \neq j$ \& status $=u$}\\
-t_{\text{wait}} - t_{j \rightarrow D}, & \text{if $i = j$ \& status $=o$}\\
-t_{\text{wait}}, & \text{if $i = j$ \& status $=u$}
\end{cases}.
\end{equation*}
목표는 예상 보상 합을 최대화(또는 예상 이동 시간을 최소화)하는 행동 시퀀스를 찾는 것입니다. 이러한 프레임워크는 운전자의 가격 선호도와 같은 추가적인 선호도를 제외하고 있습니다; 미래 연구에서는 이를 통합할 수 있습니다. MDP는 종료 목표 상태 $`G \subset \mathcal{S}`$가 주차 상태인 확률적 최단 경로 문제로 볼 수 있으며, 이 종료 조건은 할인 요소 $`\gamma`$를 필요로 하지 않게 합니다.
확률 정보 설정에서의 최적 전략과 시간 비용
본 연구는 각 주차장에 대한 확률적인 주차 가능 정보가 접근 가능한 경우에 중점을 둡니다. 현재 앱 기반 운행 결정과 가장 밀접한 관련이 있기 때문입니다. 이미 알려진 주차 어려움 및 앱 생성 데이터로 인해 실제로 주차 가능 확률에 대한 사전 정보를 전혀 가지고 있지 않은 것은 드뭅니다. 한편, 실시간 주차 점유 센서는 비싸기 때문에 상대적으로 희귀합니다.
우리의 분석은 최적 전략과 관련된 시간 비용이 두 가지 구조 기반 체계로 나뉩니다. 아래 제안들에 의해 설명됩니다.
제안 1. *$`\forall (i, j)`$ 쌍에 대해 $`t_{i \rightarrow j} \geq t_{\text{wait}}`$이고 $`t_{0 \rightarrow i} = t_{0 \rightarrow j}`$이면, 최적 전략은 가장 높은 가치를 가지는 주차장 $`i^*`$으로 직접 운행하는 것입니다.
\begin{equation}
V_{i^*} = -t_{i^* \rightarrow D} - \frac{1}{p_{i^*}} t_{\text{wait}}.
\end{equation}
주차장 $`i`$에서 주차하는 결정은 성공 확률이 $`p_i`$인 동전 던지기로 개념화할 수 있습니다. $`t_{\text{wait}}`$는 이전 주차 시도가 실패했을 때 주차장을 떠나 다시 ‘동전을 던지는’ 시간입니다. 동적 프로그래밍 접근법을 사용하면, 즉 차량이 $`i`$번째 주차장으로 운행하고 성공할 때까지 그곳에서 기다리는(가능한 것처럼) 전략의 예상 총 수익 $`\mathbf{E}[R_{i, \text{patient}}]`$을 다음과 같이 작성할 수 있습니다.
\begin{equation}
\begin{split}
\mathbf{E}[R_{i, \text{patient}}] = - & t_{0 \rightarrow i} - t_{i \rightarrow D} \\& - \sum_{1 \leq m \leq \infty} m \cdot t_{\text{wait}} \cdot (1 - p_i)^{m-1}p_i,
\end{split}
\end{equation}
여기서 합은 성공 확률 $`p_i`$를 가진 기하형 랜덤 변수의 예상값에 해당합니다. 따라서 위 식을 다음과 같이 다시 작성할 수 있습니다.
\begin{equation}
\mathbf{E}[R_{i, \text{patient}}] = -t_{0 \rightarrow i} - t_{i \rightarrow D} - \frac{1}{p_i} t_{\text{wait}}.
\label{eqn:expected_rwd}
\end{equation}
주차되지 않은 상태 $`(i, u)`$의 가치를 언제든지 다음과 같이 작성할 수 있습니다.
\begin{equation}
V_{(i, u), \text{patient}} = - t_{i \rightarrow D} - \frac{1}{p_i} t_{\text{wait}}.
\end{equation}
제안 문장의 두 번째 가정에 따르면 $`\forall (i,j)`$ 쌍에서 $`t_{0 \rightarrow i} = t_{0 \rightarrow j}`$, 즉
\begin{equation}
i^* = \mathop{\arg\!\max}\limits_{i \in \{ 0, \dots, N \} } V_{(i, u), \text{patient}} = \mathop{\arg\!\max}\limits_{i \in \{ 0, \dots, N \} } \mathbf{E}[R_{i, \text{patient}}].
\end{equation}
이 가정은 강한 것으로 보일 수 있지만, 목적지 근처의 주차장까지의 운행 시간은 종종 매우 비슷하며 특히 교통 체증이나 날씨와 같은 다른 요인에 의해 발생하는 운행 시간 변동성과 비교하면 더욱 그렇습니다. 도시 도로에서 운행 시간의 경험적 분포가 그 평균의 3분의 1을 표준 편차로 갖는 것으로 보여지며, 이에 따라 우리는 사전 주소 선택에 관심이 있으므로 이 변동성은 상당히 작습니다.