PARKING DENSITY SIM / PROJECT STORY
몇 대를 더 받고,몇 초를 잃는가
비상 통로를 7분 안에 확보하면서 주차 용량을 어디까지 높일 수 있는지 검증했습니다.
- PROJECT
- Parking Density Sim
- MY ROLE
- 알고리즘 구현 · 시뮬레이션 검증
- TECHNOLOGY
- SIMULATION · UNITY / C#

이 프로젝트를 만든 이유
로봇 주차장이 평상시 통로를 주차 공간으로 활용하면 수용량을 늘릴 수 있습니다. 하지만 비상 상황에는 그 차량을 다른 곳으로 옮겨 접근로를 열어야 합니다. 추가 수용량과 통로 확보 시간 사이의 교환 관계를 시뮬레이션했습니다.
이동한 차량을 없애는 단순 모델에서 벗어나 유한한 적치 공간, 차량의 크기와 회전, 로봇 간 충돌을 고려했습니다. 7분은 이 프로젝트에서 비교에 사용하는 시간 예산이며, 실제 현장 안전성을 인증하는 값은 아닙니다.
화면으로 보는 사용 흐름
같은 계획을 3D와 관제로 확인
Unity에서는 차량 이동을 3D로 재생하고, 관제 화면에서는 동별 접근로와 대응 상태를 비교합니다. 시각화 모드를 바꿔도 계산한 계획과 재생 틱은 유지됩니다.

구현에서 중요했던 선택
- 01
Unity와 실험 러너가 같은 Core 사용
시뮬레이션 계산을 Unity 비의존 순수 C#으로 분리했습니다. .NET 콘솔에서 조건을 반복 실행하고 Unity에서 동일한 계획을 시각화할 수 있게 구성했습니다.
- 02
시공간 A*와 유한 적치
위치뿐 아니라 이동 시점을 함께 예약해 충돌을 검사합니다. 옮겨진 차량도 실제 적치면을 계속 점유하도록 모델링하고, 적치면을 확보하는 데 드는 주차 기회비용을 계산에 반영했습니다.
- 03
같은 조건을 다시 실행할 수 있는 실험
시드를 주입하고 시간을 틱으로 기록했습니다. 도로 봉쇄, 로봇 감소, 배터리와 교대 조건을 바꿔가며 실패 경계와 회복 과정을 비교하도록 실험 러너를 구성했습니다.
결과와 확인한 범위
- 72 검증 게이트
- 360 밀도 조건
- 7분 비교 예산
저장소에는 차량 보존·충돌·유한 적치·결정론 등을 확인하는 72종 검증 게이트와 지상형 360조건 밀도 실험이 정리돼 있습니다. 아래 표는 README에 기록된 미보정 알고리즘 기준선 결과입니다.
폭 3셀·100m 통로, 운송 유닛 4조, 500면 기준의 비교입니다. 이동·취득·해제 시간 가정에 따라 결과가 달라지며, 실제 도면이나 센서·제어·가감속을 반영한 현장 성능값은 아닙니다.
| 통로 점유 | 추가 수용량 | 100m 확보 시간 |
|---|---|---|
| 상시 비움 | 0대 | 0초 |
| 1레인 | +20대 / +4% | 13.7분 |
| 2레인 | +40대 / +8% | 29.8분 |
| 3레인 | +60대 / +12% | 49.6분 |
WHAT I LEARNED
주차 용량과 안전 사이의 경계
기준선에서는 수용량 증가만으로 이점을 설명할 수 없었습니다. 통로를 다시 여는 시간과 적치 공간의 비용을 함께 계산해야 한다는 점이 핵심 결과입니다.