Aiffel Hackathon <2022.04.25 ~ 2022.06.07>
팀 구성
이름 | 구성 | 역할 |
---|---|---|
이정현 | 팀장 | 프로젝트 관리 및 설계, 통합 개발 및 테스트 |
고용석 | 팀원 | 물류센터 가상 환경 생성, 데이터 전송 테스트 |
김영태 | 팀원 | 물류센터 가상 환경 생성, 데이터 전송 테스트 |
고세영 | 팀원 | 최적화 경로 추출 모듈 개발, 물류센터 가상 환경, 최적화 경로 추출 연동 |
김현빈 | 팀원 | 최적화 경로 추출 모듈 개발, 물류센터 가상 환경, 최적화 경로 추출 연동 |
- 강화학습을 활용한 최단경로 아이템회수 에이전트 생성
- 9 x 10의 가상환경에서 주문된 아이템 리스트를 입력 받아 모두 회수해 최단거리로 되돌아오는 에이전트 생성
- 에이전트는 시작지점에서 출발하여 아이템을 모두 회수한 후 시작지점으로 되돌아 옴
- 최단거리가 되는 루트로 주문된 아이템을 찾아 다시 돌아오는 agent를 생성해, 물류센터에 직접 적용 시킬수있는 알고리즘을 개발하고 비대면 온라인 소비 증가에 따른 물류센터의 운영비용 과 업무오류를 감소시키고자 함
Q-Learning은 4x4의 환경에서 매우높은 성공률과 안정성을 확인함.
Q-NetWork는 4x4의 환경에서 괜찮은 성능을 보이지만 Q-Learning보단 부족함을 보임.
DQN에서는 본 과제의 가상환경을 적용한 여러가지 테스트를 하였지만 몇몇 문제점 때문에 만족스러운 결과를 내지못하였다.
- 같은 자리에서 계속 맴도는 에이전트
- 에이전트의 탐험에 대한 문제
- 목표지점에 도달했지만 불필요한 스텝을 많이 밟는 경우
- 목표지점에 적은 스텝수로 도달했지만 Q-map이 좋지 못한 경우
- 목표 아이템이 붙어있는 경우에 아이템 회수후 다음스텝에서 바로 종료되는 문제
이러한 문제점을 해결하기 위해 다음과 같은 방법으로 성능을 개선시킴.
-
hidden size test
-
discount factor test
-
learning rate test
-
sampling test
-
q-map optimization test
-
1 q-value optimzation test
-
move reward test
-
target update cycle test
여러가지 하이퍼파라미터를 셋팅하고 테스트한 결과 가장높은 평균 성공률과 q-map을 보이는 하이퍼파라미터 값
- 기존버퍼의 랜덤 샘플링에는 성공 케이스가 운에 따라 포함되었지만 goal buffer를 만들어 줌으로써 유의미한 학습이 이루어지게 하여 성능을 개선함. 또한, 성공케이스만 포함 하는것 보단 랜덤 샘플링을 적절히 섞어주는 것이 더 좋은 성능을 보임.
- 목표 아이템이 붙어있는 경우에 아이템 회수후 다른 아이템을 장애물로 처리하게 하면서 바로 에피소드가 종료되는 문제 해결
DATA: train data 40000, test data 1226 REWARD: 아이템+10, 장애물-10, move+0.1
- TimeStep: 성공케이스 중 모든 스텝수의 합
- Avr Reward: 성공케이스 중 보상 합의 평균
- Finish Rate: 모든 에피소드에 대해 아이템을 정확히 찾고 시작지점으로 돌아온 비율
최종결과: Episode :1225 , 총 Steps : 42611, Avr Reward:78.86 Finish Rate:0.9796
- 처음 DQN을 구현하였을 때는 굉장히 낮은 성능을 보였지만 여러 문제점을 하나씩 보완하며 다양한 방법으로 성능을 개선시켜 아주 좋은 결과를 얻을 수 있었다.
- 최종지원서 https://www.notion.so/2022-K-9a61f5c8d6bc4394969a33c52a2e6c31
- 예선진출 및 진행중