RT-W4: AGV 경로 계획 및 Q-Learning 구현

🎯 연구 배경

창고 내 다수의 AGV(Automated Guided Vehicle)가 동시에 이동·피킹 작업을 수행할 때, 고정 규칙 기반 배차는 좁은 Aisle 교차점에서 교착(deadlock)과 충돌이 빈번하게 발생합니다. RT-W4는 각 AGV를 독립 에이전트로 모델링한 멀티에이전트 Q-Learning을 적용하여, 각 에이전트가 상태(현재 위치·주변 AGV·목적지)에 대한 행동 가치 함수 Q(s,a)를 시행착오로 학습하도록 합니다. 50,000 에피소드 학습 후 충돌률 8.3% → 2.3%, 평균 태스크 완료 시간 19.4% 단축을 달성했습니다.

🧠 AGV 멀티에이전트 Q-Learning 설계
class AGVAgent: def __init__(self, id, grid_size=(50,50)): self.q_table = np.zeros((grid_size[0], grid_size[1], 9)) # 9 actions: 8방향 이동 + 대기 def select_action(self, state, epsilon=0.1): if random.random() < epsilon: return random.randint(0, 8) # 탐색 return np.argmax(self.q_table[state]) # 활용 def update(self, s, a, r, s_next, alpha=0.1, gamma=0.95): td = r + gamma*np.max(self.q_table[s_next]) - self.q_table[s,a] self.q_table[s,a] += alpha * td
🎁 보상 함수 설계

에이전트가 태스크 완료안전 · 효율 사이의 균형을 스스로 학습하도록 5개 reward 항을 설계했습니다. 학습 초기에는 랜덤 탐색이 많아 마이너스 보상이 누적되지만, 에피소드가 누적되며 정책이 개선되어 평균 누적 reward가 양수로 전환됩니다.

✅ 태스크 완료
+10
목적지 도달 시 지급. 학습의 최종 목표 신호.
➡️ 에너지 효율
+2
직선 방향(N·E·S·W) 이동 보너스. 대각 이동보다 배터리 소모·마모 적음.
⏱ 시간 비용
−1
매 스텝 차감. 최단 경로를 선택하도록 유도하는 음의 상수.
🛑 경로 이탈
−5
지정 aisle 영역 벗어남. 선반 접촉·통제 구역 침범 방지.
💥 충돌
−20
다른 AGV와 동일 cell 점유. 가장 큰 페널티 · 안전의 최상위 신호.
📉 2월 Q-Learning 학습 결과
✓ 50,000 에피소드 학습 후 (2025.02 기준)
충돌 발생률
2.3%
8.3% → 2.3% · −72% · 목표 1% 미달
평균 태스크 완료 시간
−19.4%
룰 기반 대비 · 직선 이동 선호 효과
한계 원인
🚧
좁은 Aisle 교차점 병목 · 3월 개선 예정