Skip to content
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

책 299페이지 BC스크립트 #60

Open
Accountance opened this issue Jun 12, 2023 · 6 comments
Open

책 299페이지 BC스크립트 #60

Accountance opened this issue Jun 12, 2023 · 6 comments

Comments

@Accountance
Copy link

BC스크립트가 어떤것을 말하는건가요?
C# .cs 확장자중에 bc라는 파일이 있는건가요?
아니면 유니티 내에 다른 기능인가요?
찾기가 힘드네요 ㅠㅠ\

299쪽 입니다.

@Kyushik
Copy link
Contributor

Kyushik commented Jun 12, 2023

해당 강의 내용에서 말하는 BC는 behavioral cloning 알고리즘을 의미합니다. 이에 따라 BC 스크립트는 파이썬으로 작성한 behavioral_cloning.py 파일을 의미합니다!

@Accountance
Copy link
Author

Accountance commented Jun 13, 2023

아 감사합니다! 혹시 스크립트 수정 후 실행은 어떻게 하는건가요?
수정 한 채로 cmd에서 실행시키니까 PLAY START 후에 오류가 뜨더라구요.
C:\Kart>python kart.py
... Load Model from ./saved_models/Kart/BC/20230613100103/ckpt ...
PLAY START
Traceback (most recent call last):
File "kart.py", line 153, in
env = UnityEnvironment(file_name=env_name, side_channels=[engine_configuration_channel])
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\environment.py", line 215, in init
self._process = env_utils.launch_executable(
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\env_utils.py", line 101, in launch_executable
raise UnityEnvironmentException(
mlagents_envs.exception.UnityEnvironmentException: Couldn't launch the C:\Kart demo/Kart_Windows/Kart environment. Provided filename does not match any environments.

@Kyushik
Copy link
Contributor

Kyushik commented Jun 13, 2023

아 이 에러는 demo 파일을 이용한 지도 학습이 끝나고 테스트를 위해 환경을 열어야하는데 환경의 경로가 잘못 설정되었을 때 뜨는 에러입니다! 코드의 env_name을 현재 빌드된 환경 파일을 저장한 위치로 설정하시면 됩니다.

@Accountance
Copy link
Author

Accountance commented Jun 13, 2023

C:/Kart demo 이 경로에 빌드 파일이 있어서

유니티 환경 경로
game = "Kart"
os_name = platform.system()
if os_name == 'Windows':
env_name = f"C:/Kart demo/{game}{os_name}/{game}"
elif os_name == 'Darwin':
env_name = f"C:/Kart demo/{game}
{os_name}"

이렇게 경로 설정을 해줬는데도 오류가 나네요 ㅠㅠ...

C:\Kart demo>python Kart.py
... Load Model from ./saved_models/Kart/BC/20230613103330/ckpt ...
PLAY START
Traceback (most recent call last):
File "Kart.py", line 153, in
env = UnityEnvironment(file_name=env_name, side_channels=[engine_configuration_channel])
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\environment.py", line 215, in init
self._process = env_utils.launch_executable(
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\env_utils.py", line 101, in launch_executable
raise UnityEnvironmentException(
mlagents_envs.exception.UnityEnvironmentException: Couldn't launch the C:/Kart demo/Kart_Windows/Kart environment. Provided filename does not match any environments.

혹시 경로를 파이썬 코드에 삽입할 때 ''와 '/'의 표기차이도 있는거죠?
일단 다 '/'로 하긴 했는데 안 되네요 ㅠㅠ

@Kyushik
Copy link
Contributor

Kyushik commented Jun 13, 2023

그렇다면 아예 절대 경로 자체를 입력해주시거나 저희 깃허브처럼 코드와 동일 위치에 환경을 이동시키고 상대 경로를 사용해서 작성해주시면 좋을 것 같습니다! 경로 관련 문제라 간단하게 해결하실 수 있을 듯 합니다!

@Accountance
Copy link
Author

유니티 환경 경로

game = "Kart"
os_name = platform.system()
if os_name == 'Windows':
env_name = f"C:/Kart_demo/{game}{os_name}/{game}"
elif os_name == 'Darwin':
env_name = f"C:/Kart_demo/{game}
{os_name}"

모델 저장 및 불러오기 경로

date_time = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
save_path = f"C:/Kart_demo/saved_models/{game}/BC/{date_time}"
load_path = f"C:/Kart_demo/saved_models/{game}/BC/20230628185716"

20230628185716 << 이 폴더에 플레이어의 플레이를 500번 학습한 파일들이 들어있음.

Demonstration 경로

demo_path = "C:/Kart_demo\KART_Data\Demonstrations"

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ CMD 오류 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
C:\Kart_demo>python Kart.py
... Load Model from C:/Kart_demo/saved_models/Kart/BC/20230628185716/ckpt ...
PLAY START
Traceback (most recent call last):
File "Kart.py", line 156, in
env = UnityEnvironment(file_name=env_name,
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\environment.py", line 215, in init
self._process = env_utils.launch_executable(
File "C:\Users\nnn75\AppData\Local\Programs\Python\Python38\lib\site-packages\mlagents_envs\env_utils.py", line 101, in launch_executable
raise UnityEnvironmentException(
mlagents_envs.exception.UnityEnvironmentException: Couldn't launch the C:/Kart_demo/Kart_Windows/Kart environment. Provided filename does not match any environments.

.
.
.
.
.
.

유니티 환경 경로 설정 (file_name)

engine_configuration_channel = EngineConfigurationChannel()
env = UnityEnvironment(file_name=env_name,
                       side_channels=[engine_configuration_channel])
env.reset()

음... 정말 왜 안 되는지 모르겠네요 ㅠㅠ
전부 절대 경로로 했는데도 안 됩니다.
유니티 환경 경로 설정에 이상이 있는걸까요...?
자꾸 여쭤봐서 죄송합니다 ㅠ.ㅠ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants