Skip to content

heungsunpark/Multi-Q-table-Q-learning-Algorithm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Multi-Q-table-Q-learning-Algorithm

  • data/factory_order_test.csv : test 데이터
  • data/factory_order_train.csv : train 데이터
  • data/obstacles.csv : 장애물 위치 좌표
  • result_gif : MQQ 결과물 디렉토리
  • Multi_Q-table_Q-learning-Algorithm : MQQ 알고리즘의 실행 노트북 파일

MQQ 아이디어

MQQ는 Q-learning으로 기업 과제를 해결하기 위한 창작의 고뇌를 줄기던 중 번뜩 떠오른 아이디어입니다.

아이디어는 현재 위치에서 아이템 위치까지 exploration을 하고,
수렴에 도착했을 때 exploit을 하는 과정을 item 개수만큼 반복하면 해결할 수 있다고 생각했습니다.

멘토링 과정에 이 아이디어를 말씀드리자 비슷한 논문인 MQQ를 주셨습니다. 🙇‍♂️ (사람 생각하는건 다 비슷하구나...)
참고할 논문이 있어서, 시도한 다른 방법론들보다 비교적 더 원활하게 MQQ를 개발했습니다.

image

image

Q-table 시각화

image

MQQ를 구현하면서 Q-learning을 통한 Q-table이 제대로 보여지는지 확인하기 위해 Q-table을 시각화하여 결과를 확인했습니다.
Q-table 시각화 영역을 보시면 시작 위치인 'S'부터 'A'까지 갈 수 있는 경로를 표현해주고 있습니다.

[A,B,F,G,H,I,K] EPI_270 결과 gif

00270_MQQ_test_AVG_final_

   테스트 결과 :  전체 EPI 1225개 평균 스텝 수 : 44.30342577487765

MQQ, PQ 장단점

image

MQQ는 exploit과 exploration을 반복한다는 특징을 갖고 있기 때문에 train이 필요 없고, test만 돌려도 결과가 나옵니다!
하지만 이러한 특징 때문에 PQ에 비해 상대적으로 시간이 더 소요된다는 특징을 갖고 있습니다.

MQQ 알고리즘 플로우차트

image image

Reference

About

오강자 강화학습 프로젝트 MQQ 알고리즘

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%