MARL을 통한 승강기 교통량 분석 및 운행 최적화

Version 1.0.0 (2.25 MB) by 동인
MARL을 활용한 승강기 그룹 운용 알고리즘을 통해 교통량 최적화 솔루션을 제안한다.
7 Downloads
Updated 31 Jul 2024

View License

승강기 대기 시간은 승객의 편의성과 나아가 건물의 가치와도 직결되는 중요한 요소입니다.
우리는 MARL을 활용해 고층 건물의 승강기 군에 대한 동작 알고리즘을 제안합니다.
먼저, 학습과 시뮬레이션을 위한 승객의 패턴 데이터를 'Statistics And Machine Learning Toolbox'를 활용해 만들어주었습니다.
이후, 다음의 알고리즘을 기본적으로 두어 MARL을 진행하였습니다.
  • 승강기의 위치와 이동 상태를 30*3 Grid로 표현한다.
  • 생성한 데이터에서 호출 층을 불러와 해당 층에 승강기 전체를 호출한다.
  • 승강기가 호출 층에 도달 시 데이터에 목적 층을 찾아 그 층에서 호출한다.
  • 목적 층에서 호출이 되면, 해당 층에 가려는 승강기를 제외한 나머지에게만 다른 호출 층이 호출된다.
이후 리워드까지 설정을 해 주었습니다.
에이전트가 받는 observation값은 [30 3 4 3] matrix로 구성되어 있으며, 이들은 각각 자신의 위치, 다른 에이전트들의 위치, 호출 / 목적 층의 위치가 담긴 채널들입니다.
저희는 30*3의 Grid, 3대의 에이전트 뿐이므로, Centralized 계산을 해도 연산량이 충분할 것이라 판단하였고, 상황 설정에 있어 연속적인 상황을 구현하기 어렵고 또한 효율적 학습 진행이 어려울 것이라 판단하여 Discrete한 환경을 구성하였습니다. 또한 PPO를 채택하였습니다.
강화학습을 진행시킨 결과, 에이전트들이 에피소드들을 겪으면서 리워드가 점점 증가함으로써 학습이 이루어지고 있음을 확인할 수 있었습니다. 하지만 리워드가 주기적으로 감소/증가를 하였는데, 이는 엘리베이터 환경 자체가 갖는 변동성 때문에 Exploration과 Exploitation을 반복하기 때문이라 판단 하였습니다.
구현이 완벽하지 않지만, 충분하고 적합한 학습이 추후 이루어진다면 더욱 더 좋은 성능을 기대해볼 수 있을 것입니다.

Cite As

동인 (2025). MARL을 통한 승강기 교통량 분석 및 운행 최적화 (https://www.mathworks.com/matlabcentral/fileexchange/170671-marl), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2024a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0