-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
env 파일을 수정하는 방식으로 MARL사용이 가능할지 질문드립니다. #3
Comments
제 깃헙의 SMAC을 관심있게 봐주셔서 감사합니다! 먼저 custom env 관련 해서는 envs/starcraft2/starcraft2.py 파일을 수정하여 커스텀으로 구동이 가능합니다. 그리고 두번째 우분투에서 실행하신다면 실제 스타크래프트게임 창이 나타나지 않고 log로만 진행 상황을 파악할 수 있습니다. 더 추가적인 궁금증이 있으이면 언제든지 편하게 말씀해 주세요. |
답변 감사드립니다! 코드를 수정하는데 궁금증이 생겨서 추가로 질문드립니다. QMIX등 MARL을 사용하면 각 agent의 q value를 따로 구한 후 mixing layer에서 q total 을 계산하여 centralized learning을 실행하는 것으로 이해했는데, SMAC/envs/starcraft2/starcraft2.py에서 reward를 계산하는 부분을 보면 각 agent별 reward를 계산하는게 아니라 한 step이 지난 후 전체 상황에 대한 reward 하나만을 계산하는것으로 보여서요. RLlib에서 custom env를 구성할때는 agent별로 따로 reward값을 지정해서 dict형태로 넘겨줬던 것 같은데, SMAC처럼 이렇게 하나의 reward값만 계산되어도 각 agent별 q value를 계산하는데 문제는 없는건가요? |
보상관련 부분은 정확하게 파악하셨습니다. 일반적으로 MARL에서 각 Agent에게도 보상을 줄 수 있지만 팀플레이 관점에서 올바른 학습을 하였는지는 말할 수 없습니다. 그러므로 여기 저장소에 반영되어 있는 MARL모델을 구동하실때 팀 차원의 Reward만 제공해도 문제 없을듯 합니다. PS : Agent 개별로 보상을 줄 수는 있지만 팀 차원으로 원하는 목표에 맞는 보상을 부여하기는 상당히 힘듭니다. 그리고 추가적인 질문 내용이 있으시면 raptorjung@gmail.com 으로 메일 주세요. 제가 깃헙 이슈들은 자주 못봐서요.... |
안녕하세요, 저는 공학을 전공하고 있는 대학원생입니다. 블로그 글과 올려주신 코드에 많은 도움을 받고 있습니다. 다른 분야에 MARL을 적용해보려고 이것저것 찾아서 공부하고 있는데, Ray의 rllib이나 pymarl 은 setting이 너무 복잡하고 필요없는 기능들이 많아서요. 혹시 올려주신 SMAC에서 env부분을 수정하여 custom env로 step, reset등을 구현시키는 방식으로 MARL기법들을 활용할 수 있을까요? 그리고 기존 pymarl 우분투 환경에 대한 세팅에서 어떤부분이 바뀐건지 궁금합니다. 우분투를 사용하고 있긴한데 원저자의 코드링크에서 docker를 사용하는 방식에서 계속 오류가 생겨서 그대신 여기 올려주신 코드를 다운받아서 쓰려하는데 문제가 생길까요?
The text was updated successfully, but these errors were encountered: