인프런 커뮤니티 질문&답변

조영철님의 프로필 이미지

작성한 질문수

유니티 머신러닝 에이전트 완전정복 (기초편)

ML-Agents 환경 학습 2

Pyuthon API 적용

23.11.30 11:21 작성

·

456

0

안녕하세요...ML-Agent 책을 사서 보다가 막히는데가 있어서 인강까지..찾아듣게 되었습니다.

이전 mlagents-learn 으로는 진행을 했습니다. 이후

  1. Python API 예제 코드를 사용해서 학습하려고 합니다.

    • 그런데.... cmd 창에서 관련 파이썬 코드 Python_api.py 를 입력하면 아무런 변화가 없습니다.

    • 혹시 몰라서 한줄 한줄 입력할 때에는 무언가 변화가 있는거 같은데...파이썬 스크립트로 한꺼번에 진행하려고 하면 변화가 없는데요...

    • 어디서 무엇이 문제인지 알아볼 수 있을까요?

    • 관련 코드를 vs code로 살펴볼 때..

    • 의 mlagents_env.environment 부분에서 에러가 발생한다고 하는데.. 파이썬에서 한줄 한줄 입력할 때에는 괜찮은 거 같은데요...

  2. 참고로 윈도우에서 pip 로 python 팩키지 설치 및 가상 환경 구성해서 진행하고 있으며
    - ml agents ver 2.0
    - pyhthon 3.9.9
    - pytorch 에서 토치 버전은 2.1.0 + cu118 입니다.

답변 7

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 15:01

그런데...파이썬 환경에서 관련 코드를 한 줄씩 입력하면...에러가 없는거라...이게 무슨 현상인지를 모르겠어요

민규식님의 프로필 이미지
민규식
지식공유자

2023. 11. 30. 15:05

저도 처음 보는 상황이긴 하네요 ㅜㅜ 뭔가 환경 설정 상의 에러 같은데...

아예 가상 환경을 새로 설정해보시고 https://github.com/reinforcement-learning-kr/Unity_ML_Agents_2.0 깃허브에서 requirements.txt로 한번 다시 설치해보시면 어떠실까요?

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:58

네 python 실행했을 때..오류 메시지도 안뜨고 그냥 응답이 없는 현상이 맛습니다.

그런데..took too long to response 오류도 뜨지는 않습니다.

python 코드는 책에 있는 그대로이고

Unity 도 3D Ball 예제라 제가 무언가 수정할게 없는데요...

위와 같은 상황이 발생의 원인이 될 수 있을까요?

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:40

다시 설치하려고 보니..이렇게 에러가 뜨네요...

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:39

이렇게 확인해보니...mlagents-envs 는 설치되어 있습니다.

흠 다시 설치한다는 것은

pip install -e ./ml-agents-envs

pip install -e ./ml-agents

python -m pip install mlagents==0.30.0

을 말씀하시는 걸까요?

민규식님의 프로필 이미지
민규식
지식공유자

2023. 11. 30. 14:43

python 실행하셨을때는 따로 오류 메시지도 안뜨고 그냥 응답이 없는걸까요? 혹시 오래 기다렸을때 took too long to response 오류가 뜬다면 다음의 사항들이 오류 원인일 수 있습니다.

  • 에이전트의 behavior parameters의 Behavior type이 Default로 설정되어있는가

  • 유니티의 mlagents 버전과 파이썬의 mlagents 버전이 호환되는 버전인가

  • 경로에 한글이 포함되어 있는가

  • 유니티에서 환경을 실행했을 때 유니티 자체적으로 오류가 발생하지는 않는가

  • Agent 컴포넌트를 가지는 gameObject내에 'Decision Requester' 스크립트를 컴포넌트로 추가했는가

오류 전체 내용은 다음과 같습니다

mlagents_envs.exception.UnityTimeOutException: The Unity environment took too long to respond. Make sure that :

The environment does not need user interaction to launch

The Agents' Behavior Parameters > Behavior Type is set to "Default"

The environment and the Python interface have compatible versions.

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:28

mlagemts 파이썬 패키지를 설치하고 mlagents-learn 까지 실행을 했습니다. ymal 파일 수정해서 학습하는 거 까지 실행을 했고요...
mlagents-learn 실행이 되면..python-api 도 되어야 하는거라 생각하는데..무언가 다른 것이 있을까요?

파이썬에서 한줄로 입력할 때에는 에러가 없어요

민규식님의 프로필 이미지
민규식
지식공유자

2023. 11. 30. 14:31

아.. 그러게요 mlagents-learn까지 실행하신거보면 mlagents는 설치는 잘 된 것 같네요. 단, python-api의 경우 mlagents 외에 현재 오류가 발생하는 mlagents_envs도 설치가 되어있어야합니다. 조금 이상한건 pip install mlagents하면 같이 자동으로 mlagents-envs까지 설치가되는데 한번 확인해보셔야 할 것 같습니다.

pip show mlagents-envs를 통해 확인해보시고 설치가 안되어있는 경우 다시 설치해보시면 좋을 것 같습니다.

0

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:19

 

vs 코드에서는 mlagetnts_envs 모듈을 임포트 할 수 없다고 하고요...

 

python 3.10 이상이 되어야 하나요?

민규식님의 프로필 이미지
민규식
지식공유자

2023. 11. 30. 14:21

엇.. import 할 수 없다고 하는거보면 mlagents 파이썬 패키지가 설치되지 않은 것 아닐까 싶습니다! 혹시 pip install mlagents 를 통해 파이썬 라이브러리 설치하셨을까요? 강의에서는 파이썬 3.8 버전 사용했습니다

0

민규식님의 프로필 이미지
민규식
지식공유자

2023. 11. 30. 11:27

안녕하세요!

에고.. 인프런 강의 안내에 나온대로 책과 강의 내용이 동일 내용을 다루고 있습니다 ㅜㅜ

책 진행 관련 질문은 저희 깃허브 (https://github.com/reinforcement-learning-kr/Unity_ML_Agents_2.0) 이슈에 달아주셔도 괜찮습니다.

일단 질문 주신 내용에 대해 답변드리겠습니다.

혹시 Python_api.py가 DQN 코드를 작성하신 것일까요?

그리고 해당 라인에서 어떤 오류가 발생하는지, 오류의 내용도 함께 알려주시면 감사드리겠습니다!

조영철님의 프로필 이미지
조영철
질문자

2023. 11. 30. 14:18

책과 강의에 있는 Python API 예제코드입니다.

 

코드는 예제 코드 (3D Ball) d:그대로 작성했습니다.

 

이후에 커멘드...(가생환경) 에서 python 스크립트 실행하려고 하면 응답이 업네요