GridWorld가 움직이지 않고, time out 으로 중지됩니다.
책을 먼저 사서 책 보고 따라하던 중 막혀서, 급하게 강의 등록하고 질문 드립니다.
이렇게 좋은 책과 강의에 우선 감사드립니다.
오류 문구는 다음과 같습니다.

사용 패키지들의 버전을 다음과 같습니다.


책 보고 따라 작성한 코드로 이런 현상이 있어서, github에서 다운 받은 파일로 해도 동일 증상입니다.
저의 유니티 상의 설정은 다음과 같습니다.



해결에 도움 주시면 감사하겠습니다.
답변 2
0
해결글 링크: GridWorld, CollectObservations에서 에러 질문입니다. - 인프런 | 질문 & 답변 (inflearn.com)
다른 분이 같은 문제로 검색하실 때 도움되시라고 링크 남깁니다.
0
안녕하세요!
mlagents_envs.exception.UnityTimeOutException: The Unity environment took too long to respond.
위 에러의 경우 발생 원인이 다양합니다. 지금까지 조사한바로는 아래의 내용을 참고해주시면 좋을 것 같습니다.
에이전트의 behavior parameters의 Behavior type이 Default로 설정되어있는가
유니티의 mlagents 버전과 파이썬의 mlagents 버전이 호환되는 버전인가 (요건 맞게 된 것 같습니다)
경로에 한글이 포함되어 있는가
유니티에서 환경을 실행했을 때 유니티 자체적으로 오류가 발생하지는 않는가
Agent 컴포넌트를 가지는 gameObject내에 'Decision Requester' 스크립트를 컴포넌트로 추가했는가
위 내용대로 진행하셨는데도 문제가 있으시면 추가 답변 남겨주시면 좋을 것 같습니다!
0
조치한 내용과 결과를 알려드립니다. 계속 도움 요청드립니다.
"Decision Requester" 스크립트를 컴포넌트로 추가시킴.
(에러 해결책으로 인터넷 검색에서 보이기도 했던 내용인데요,
책에서는 3DBall에서만 언급이 있고, GridWorld에서는 언급이 없었습니다. -.-;)
RenderTextureAgent 오브젝트에 추가했습니다.
추가 후 AreaRenderTexture 개체(프리팹)에서 프리팹 override 메뉴에서 apply all 실행.
다시 빌드 후, 그래도 time out 이 발생
알려주신 내용 중 유니티에서 실행했을 때 오류 없는지 체크 시작
책의 '번외: 코드 최적화 하기'에서 알려주신 transform 최적화 하기 관련하여, reference를 찾을 수 없다는 뜻의 에러 발생. → "private Transform agentTrans = null;"구문은 주석처리하고 원상복구 시킴.(해당 에러는 캡쳐 하지 못했습니다.)
유니티에서 실행했을 때 현재의 에러 상태

vs에서 해당 구문 캡쳐:

별도 요청사항: 혹시 책의 벡터 관측 추가하는 코드를 제가 잘못 쳐넣나 싶어서,
완성된 코드를 찾아보려고 책에 안내된 https://github.com/reinforcement-learning-kr/Unity_ML_Agents_2.0/tree/main/unity_project/GridWorld 에는 가봤으나, 원하던 GridArea.cs, GridAgents.cs 스크립트를 찾을 수 없었습니다. 백터 관측 코드가 추가된 해당 스크립트를 구할 수 있는 방법을 좀 알려주시면 감사하겠습니다.
※ 여기서 책이라 함은 '파이토치와 유니티 ML-Agents로 배우는 강화학습'을 말합니다.
※ 다른 컴퓨터에서 동일하게 작업한 결과, 아까 캡쳐 못 했던 4번 오류 화면을 캡쳐했습니다. 아래 와 같습니다.

vs 코드에서 해당 부분입니다.

0
해결하였습니다. ^^/
4번 에러: NullReferenceException: Object reference not set to an instance of an object.
[해결책] Initialize 함수에서 agentTrans = transform; 을 써줘야함.
private Transform agentTrans = null; 이라고 초기화만 하고 지정을 안 한 것임.
책에는 이 내용이 없고요, 강의에는 나옵니다. -.-;
ArgumentOutOfRangeException: Index was out of range.
[해결책] 기존 코드를 주석처리하고 다음과 같이 수정해야함.

이 또한 책에는 안 나오고 강의 내용에서도 강좌마다 다른 화면인데요,
vector 관찰을 추가하는 강의에서는 위 캡쳐의 주석처리한 화면으로 강의가 진행되고요,
transform 캐쉬 처리하는 강의에서는 위의 추석처리 안 한 화면으로 강의가 진행됩니다.
0
강의내용마다 약간씩 차이가 있는 부분이 있었군요 ㅜㅜ 혼란을 드려서 죄송합니다.
자세히 정리해주셔서 감사합니다!
혹시 진행하시다가 추가적으로 문의 사항 있으시면 말씀해주시면 감사드리겠습니다!
설치 프로그램 버전 질문있습니다.
0
74
2
env 환경경로 입력방법
0
78
2
onnx에 대해서
0
110
1
텐서플로우가 안열립니다
0
101
2
DQN을 위한 파라메터값 세팅에서 goal-plus, goal-ex
0
79
1
dqn 인덱스 에러
0
92
3
2025년 pip ml agents 설치 에러
0
215
1
DQN 실행 오류
0
307
2
ML-Agents 살펴보기 11페이지 질문입니다.
0
210
1
배웠던 내용을 기반으로 match3 인공지능으로 플레이 하는 걸 만들고 있는데.. 질문이 있습니다.
0
378
2
3DBall 학습 중 문제
0
218
1
mlagents-learn --hlep
0
236
1
DQN 환경 학습
0
366
3
DQN 함수를 어디에다 만들고 실행하나요??>?>
0
335
1
갑자기 Template>Scripts 폴더는 어디에서 만들어졌는지...
0
280
2
mlagents-learn 에러 수정 방법을 문의드립니다.
0
643
3
Pyuthon API 적용
0
701
7
GridWorld, CollectObservations에서 에러 질문입니다.
0
641
1
yaml을 이용한 GAIL 및 BC를 mlagents-learn으로 실행 시 에러
0
456
1
GridWorld, 유니티에서 실행하면 observation 관련 에러가 뜹니다.
0
489
2
PPO Parameters에서 normalize 관련 질문입니다.
0
356
1
GridWorld 가 작동은 잘 되는데, score가 너무 낮게 나와요.
0
568
3
싱글에이전트 코드를 멀티에이전트 코드로 수정 관련
0
408
2
Start와 awake 함수의 차이점이 궁금합니다.
0
636
1






93번째 줄을 보면 가운데 1 < otherPos.Count에서 1을 i로 바꾸면 5번 에러는 해결될 것 같습니다.