oxwhirl / pymarl Goto Github PK
View Code? Open in Web Editor NEWPython Multi-Agent Reinforcement Learning framework
License: Apache License 2.0
Python Multi-Agent Reinforcement Learning framework
License: Apache License 2.0
I debug it by pycharm, and I put the parameters "--config=qmix --env-config=sc2 with env_args.map_name=2s3z save_model=True save_model_interval=20000" in Edit Configurations.
there is:
FileNotFoundError: [Errno 2] No such file or directory: '/home/gezhixin/pymarl-master/src/3rdparty/StarCraftII/Versions'
I know the path is false, but how can I fix it.
I try to run pymarl in a docker container on a windows pc. Besides from adjusting the run.sh to:
#!/bin/bash
HASH=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 4 | head -n 1)
GPU=$1
name=$(whoami)_pymarl_GPU_${GPU}_${HASH}
echo "Launching container named '${name}' on GPU '${GPU}'"
# Launches a docker container using our image, and runs the provided command
if hash nvidia-docker 2>/dev/null; then
cmd=nvidia-docker
else
cmd=docker
fi
NV_GPU="$GPU" ${cmd} run \
--name $name \
--user $(id -u):$(id -g) \
-v /$(pwd):/pymarl \
-t pymarl:1.0 \
${@:2}
I receive an error from OpenGL
Attempting to initialize EGL from file libEGL.so ...
Failed to find EGL functions in library file!
on execution of command:
[INFO 18:15:22] absl Launching SC2: /pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 15923 -dataDir /pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-and62dp2/ -eglpath libEGL.so
I am not very familiar with docker but it looks like the docker image is missing support for headless opengl rendering which does not cause problems on Ubuntu16.04 systems.
Am i doing somethin wrong is there indeed no support for windows in the current image?
PS: could using this dockerfile as a base help: https://hub.docker.com/r/nvidia/cudagl ?
Hi, this packages is awesome, how can I use it to other environments?
To run COMA or other algorithms,
python3 src/main.py --config=coma_smac --env-config=sc2
I found in src/envs
, there is a __init__.py
file,
from functools import partial
from smac.env import MultiAgentEnv, StarCraft2Env
import sys
import os
def env_fn(env, **kwargs) -> MultiAgentEnv:
return env(**kwargs)
REGISTRY = {}
REGISTRY["sc2"] = partial(env_fn, env=StarCraft2Env)
if sys.platform == "linux":
os.environ.setdefault("SC2PATH",
os.path.join(os.getcwd(), "3rdparty", "StarCraftII"))
I found I can register set my environment by
REGISTRY["my_env"] = partial(my_env_fn, env=MyEnv)
is it the right way?
Hi, I want to evaluate on the 1c_3s_5z map, which is used as a benchmark for the QMIX paper, I can not find it under this directory: smac/smac/env/starcraft2/maps/SMAC_Maps/
Can you upload this map? Or is there any equivalent maps I can use? Thanks!
Hi,
I just setup the environment and everything worked fine! Thanks for the great work~
But I wonder if you could provide us with the baseline model so we could use it without retraining. Because the training process is about 3 hours under 1080ti.
Thanks again and I am glad for your reply~
Anyone can run the coma algorithm normaly?I have this erros like this:
The error is like this:
'Process Process-3:
Traceback (most recent call last):
File "/home/a/anaconda3/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/a/anaconda3/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/a/COMA/pymarl/src/runners/parallel_runner.py", line 221, in env_worker
reward, terminated, env_info = env.step(actions)
File "/home/a/anaconda3/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 373, in step
agent_action = self.get_agent_action(a_id, action)
File "/home/a/anaconda3/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 439, in get_agent_action
"Agent {} cannot perform action {}".format(a_id, action)
AssertionError: Agent 0 cannot perform action 0
'
Can you help me to solve this?Thanks!
when i run the command "python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z".The output is that
[ERROR 20:41:53] pymarl Failed after 0:00:00!
Traceback (most recent calls WITHOUT Sacred internals):
File "src/main.py", line 31, in my_main
env_args['seed'] = _config["seed"]
sacred.utils.SacredError: The configuration is read-only in a captured function!
Hi, I can successfully run qmix experiment
bash run.sh $GPU python3 src/main.py --config=qmix --env-config=sc2 with env_args.map_name=2s3z
but errors occurred when I replace qmix with coma
bash run.sh $GPU python3 src/main.py --config=coma --env-config=sc2 with env_args.map_name=2s3z
errors:
Listening on: 127.0.0.1:20214
Startup Phase 3 complete. Ready for commands.
Listening on: 127.0.0.1:22734
Startup Phase 3 complete. Ready for commands.
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Listening on: 127.0.0.1:24234
Next launch phase started: 4
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
[INFO 06:15:22] absl Connecting to: ws://127.0.0.1:22734/sc2api, attempt: 9, running: True
[INFO 06:15:22] absl Connecting to: ws://127.0.0.1:24234/sc2api, attempt: 9, running: True
Startup Phase 3 complete. Ready for commands.
[INFO 06:15:22] absl Connecting to: ws://127.0.0.1:22779/sc2api, attempt: 9, running: True
[INFO 06:15:22] absl Connecting to: ws://127.0.0.1:20214/sc2api, attempt: 9, running: True
Listening on: 127.0.0.1:22779
Startup Phase 3 complete. Ready for commands.
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
[INFO 06:15:23] absl Connecting to: ws://127.0.0.1:22779/sc2api, attempt: 10, running: True
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Process Process-6:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 314, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 331, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 344, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 378, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 396, in recv_strict
bytes_ = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 453, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 115, in recv
"Connection is already closed.")
websocket._exceptions.WebSocketConnectionClosedException: Connection is already closed.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 68, in catch_websocket_connection_errors
raise ConnectionError("Connection already closed. SC2 probably crashed. "
pysc2.lib.protocol.ConnectionError: Connection already closed. SC2 probably crashed. Check the error log.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 347, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 314, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Connection already closed. SC2 probably crashed. Check the error log.
[INFO 16:10:01] root Saving to FileStorageObserver in results/sacred.
[DEBUG 16:10:05] pymarl Using capture mode "fd"
[DEBUG 16:10:06] pymarl Stopping Heartbeat
[ERROR 16:10:06] pymarl Failed after 0:00:01!
Traceback (most recent calls WITHOUT Sacred internals):
File "D:/PyProjects/pymarl/main.py", line 32, in my_main
env_args['seed'] = _config["seed"]
sacred.utils.SacredError: The configuration is read-only in a captured function!
Hi,
I am new to developing rl algorithms and ml in general. I wanted to ask here what setup/work pipeline do you use to develop new algorithms for this repo?
I have a hard time to set up pycharm with a miniconda environment and running my code is docker is tedious to find errors.
I am glad for any tip.
For 25m map, the observation space is 10xnum_agents. Does not is should be 10 for each agent? If the each agent concatenate the observations around it, what's the order it based on?
Hello, this is a very good implement,I want to know, this environment must use docker?If I am not use docker,it can run?Hope you reply!Thanks!Thank you very much!
it would be nice to know the names of the algorithms near the top of the readme! thanks
Hi I tried running qmix with MMM map
(star2) D:\Documents\star2_multi_agents\pymarl-master\pymarl-master\src>python main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=MMM
main.py:71: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
config_dict = yaml.load(f)
main.py:50: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
config_dict = yaml.load(f)
[INFO 14:27:16] root Saving to FileStorageObserver in results/sacred.
[DEBUG 14:27:19] pymarl Using capture mode "fd"
So this is run now but any unit in sc2 does not move and time is not started just stay in 0:00. And the picture I posted is come up with sc2 app. I live in Korea so in English that does mean "There is an error in access authorization from core". second sentence meant "Please explain the situation when an error occurred to help development team solve the problem". Last one meant "when you are discussing with blizzard about this problem, use below ID". The buttons are respectively "running again", and "close".
As a result, I clicked "close" button but any unit in sc2 app does not take any action.
Thanks to the author for the open source code, I have a question when I was reading the source code.
In the action_selection operation, Qmix add a pick_random * random_actions
,
I guess this is a disturbing term, But, I'm not chear that why the random_numbers
only come from agent_inputs[:,:,0]
, I think the value of agent_inputs[:,:,0]
point to the probability of action 0
?
Anyone could help me to make it clear. Thanks
picked_actions = pick_random * random_actions
+ (1 - pick_random) * masked_q_values.max(dim=2)[1]
https://github.com/oxwhirl/pymarl/blob/master/src/components/action_selectors.py
def select_action(self, agent_inputs, avail_actions, t_env, test_mode=False):
# Assuming agent_inputs is a batch of Q-Values for each agent bav
self.epsilon = self.schedule.eval(t_env)
if test_mode:
# Greedy action selection only
self.epsilon = 0.0
# mask actions that are excluded from selection
masked_q_values = agent_inputs.clone()
masked_q_values[avail_actions == 0.0] = -float("inf") # should never be selected!
random_numbers = th.rand_like(agent_inputs[:, :, 0])
pick_random = (random_numbers < self.epsilon).long()
random_actions = Categorical(avail_actions.float()).sample().long()
picked_actions = pick_random * random_actions + (1 - pick_random) * masked_q_values.max(dim=2)[1]
return picked_actions
python3 src/main.py --config=coma_smac --env-config=sc2 with env_args.map_name=2s3z checkpoint_path=results/models/coma_smac__2019-10-20_11-23-08/ save_replay=True
when i run this cammand , there is no XXX.replay in my direction in StarCraft2. How can i fix it?
I'm trying to adapt your algorithm under 3s5z map(3 Stalkers & 5 Zealots). The batch['obs'] is of shape [32, 74, 8, 128].
My questions is how can I distinguish Stalkers' observations from Zealots' observations in batch['obs']? For example, I guess maybe batch['obs'][:, :, :3] are Stalkers' observations and batch['obs'][:, :, 3:] are Zealots' observations.
(It seems that Stalkers and Zealots' batch['avail_actions'] are exactly the same, so cannot judge from this.)
Thank You in Advance
Hi!
I've a problem:
I'm truing to run an example that are described on instructions page, but after running that command
python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
The following error is appeared:
Traceback (most recent call last): File "src/main.py", line 19, in <module> ex = Experiment("pymarl") File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sacred/experiment.py", line 75, in __init__ _caller_globals=caller_globals) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sacred/ingredient.py", line 57, in __init__ gather_sources_and_dependencies(_caller_globals) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sacred/dependencies.py", line 487, in gather_sources_and_dependencies sources = gather_sources(globs, experiment_path) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sacred/dependencies.py", line 440, in get_sources_from_imported_modules return get_sources_from_modules(iterate_imported_modules(globs), base_path) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sacred/dependencies.py", line 409, in get_sources_from_modules filename = os.path.abspath(mod.__file__) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/posixpath.py", line 378, in abspath path = os.fspath(path) **TypeError: expected str, bytes or os.PathLike object, not NoneType**
I was trying to resolve the issue with the different versions of sacred module, but no it is still failed...
All the modules versions are taken from requirements.txt file
Could you please help?
Thank you a lot!
Hi,
I tested COMA 3m, 8m and 25m as well as QMIX 3m and 8m without problems. Only QMIX 25m is giving me a freeze. htop is showing no hardware bottlenecks before the freeze. Has anyone experienced the same? I am using the docker run method.
Is my setup (16GB RAM, RTX 2070) too weak?
Thanks for the help in advance.
When running python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
, it has a error in Ubuntu18.04:
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
What operation did I miss?
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/scu/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/scu/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 291, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 291, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
Traceback (most recent call last):
Traceback (most recent call last):
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/scu/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/scu/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 291, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 291, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
File "/home/scu/anaconda3/envs/pymarl-env/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
Thanks for your repository.
I am trying to reproduce your results In QMIX paper. I ran the command like this:
python main.py --config=qmix --env-config=sc2 with env_args.map_name=3s5z
And this is the result I got using the default parameter setting in qmix_smac.yaml
. The won rate is almost 0.
However, in QMIX paper, the test win rate achieves nearly 80% after 2.0 million timesteps' training.
Am I missing something? Thanks :)
When I run the training scenario from the README:
python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
I get the following output:
Traceback (most recent calls WITHOUT Sacred internals):
File "src/main.py", line 34, in my_main
run(_run, _config, _log)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 48, in run
run_sequential(args=args, logger=logger)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 179, in run_sequential
learner.train(episode_sample, runner.t_env, episode)
File "/home/esquires/repos/rl/rllib/pymarl/src/learners/q_learner.py", line 100, in train
loss.backward()
File "/home/esquires/venvs/rllib/lib/python3.6/site-packages/torch/tensor.py", line 107, in backward
torch.autograd.backward(self, gradient, retain_graph, create_graph)
File "/home/esquires/venvs/rllib/lib/python3.6/site-packages/torch/autograd/__init__.py", line 93, in backward
allow_unreachable=True) # allow_unreachable flag
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [32, 94, 5, 11]], which is output 0 of SliceBackward, is at
version 1; expected version 0 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_detect_anomaly(True).
After setting torch.autograd.set_detect_anomaly(True)
in the initializer of the QLearner
object I get the following:
sys:1: RuntimeWarning: Traceback of forward call that caused the error:
File "src/main.py", line 88, in <module>
ex.run_commandline(params)
File "/home/esquires/repos/rl/rllib/sacred/sacred/experiment.py", line 250, in run_commandline
return self.run(cmd_name, config_updates, named_configs, {}, args)
File "/home/esquires/repos/rl/rllib/sacred/sacred/experiment.py", line 199, in run
run()
File "/home/esquires/repos/rl/rllib/sacred/sacred/run.py", line 229, in __call__
self.result = self.main_function(*args)
File "/home/esquires/repos/rl/rllib/sacred/sacred/config/captured_function.py", line 48, in captured_function
result = wrapped(*args, **kwargs)
File "src/main.py", line 34, in my_main
run(_run, _config, _log)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 48, in run
run_sequential(args=args, logger=logger)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 179, in run_sequential
learner.train(episode_sample, runner.t_env, episode)
File "/home/esquires/repos/rl/rllib/pymarl/src/learners/q_learner.py", line 56, in train
chosen_action_qvals = th.gather(mac_out[:, :-1], dim=3, index=actions).squeeze(3) # Remove the last dim
[ERROR 17:35:55] pymarl Failed after 0:00:17!
Traceback (most recent calls WITHOUT Sacred internals):
File "src/main.py", line 34, in my_main
run(_run, _config, _log)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 48, in run
run_sequential(args=args, logger=logger)
File "/home/esquires/repos/rl/rllib/pymarl/src/run.py", line 179, in run_sequential
learner.train(episode_sample, runner.t_env, episode)
File "/home/esquires/repos/rl/rllib/pymarl/src/learners/q_learner.py", line 101, in train
loss.backward()
File "/home/esquires/venvs/rllib/lib/python3.6/site-packages/torch/tensor.py", line 107, in backward
torch.autograd.backward(self, gradient, retain_graph, create_graph)
File "/home/esquires/venvs/rllib/lib/python3.6/site-packages/torch/autograd/__init__.py", line 93, in backward
allow_unreachable=True) # allow_unreachable flag
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [32, 71, 5, 11]], which is output 0 of SliceBackward, is at
version 1; expected version 0 instead. Hint: the backtrace further above shows the operation that failed to compute its gradient. The variable in question was changed in there or anywhere late
r. Good luck!
I then broke-up the line so that the gather
and squeeze
functions are on separate lines and the code complains about the gather
line.
I am on 33070bc
for pymarl
, cdfff9b
for smac
, and version 1.1.0
for pytorch
.
Should I be running a different command than what is in the README
?
Thanks.
I am new to docker and I failed to run your experiments.
OS: Ubuntu 18.04
Arch: x86_64
standard_init_linux.go:211: exec user process caused "exec format error" is the error I got when I tried to run the code posted in README.m file.
Can you tell me what is the problem if you have any ideas? Thank you.
I am getting this error when running the example (docker) command:
bash run.sh 1 python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
Note: I replaced $GPU with 1, as I did not know what else to put. Please correct me if this is incorrect.
The error is as follows:
[INFO 11:47:35] my_main Beginning training for 2000000 timesteps
[DEBUG 11:47:40] pymarl Stopping Heartbeat
[ERROR 11:47:40] pymarl Failed after 0:01:03!
Traceback (most recent calls WITHOUT Sacred internals):
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "src/main.py", line 71, in my_main
run(_run, _config, _log, mongo_client)
File "/pymarl/src/run.py", line 64, in run
run_sequential(args=args, logger=logger)
File "/pymarl/src/run.py", line 200, in run_sequential
episode_batch = runner.run(test_mode=False)
File "/pymarl/src/runners/parallel_runner.py", line 109, in run
test_mode=test_mode)
File "/pymarl/src/controllers/basic_controller.py", line 85, in select_actions
agent_outputs = self.forward(ep_batch, t_ep, test_mode=test_mode)
File "/pymarl/src/controllers/basic_controller.py", line 112, in forward
agent_inputs = self._build_inputs(ep_batch, t)
File "/pymarl/src/controllers/basic_controller.py", line 211, in _build_inputs
inputs["1d"] = [th.cat(inputs["1d"][:-(len_1d-1)], dim=-1)] + inputs["1d"][-(len_1d-1):] #th.cat([x.reshape(bs*self.n_agents, -1) for x in inputs["1d"]], dim=1)
RuntimeError: There were no tensor arguments to this function (e.g., you passed an empty list of Tensors), but no fallback function is registered for schema aten::_cat. This usually means that this function requires a non-empty list of Tensors. Available functions are [CUDATensorId, CPUTensorId, VariableTensorId]
Any help would be hugely appreciated.
Hi, I'm currently running experiments on the scenario '3s5z' and '1c3s5z' and find there is a significant performance difference from the Qmix paper. (my experiment result is roughly 15% to 20% better than the paper regarding test won rate). So just wondering if there is any difference with the environment setting or algorithm change.
Thank you so much.
when i run this command "sudo python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z". it can produce some files in results. But it can't run completely.Some errers come into my terminal are that "pysc2.lib.protocol.ConnectionError: Websocket timed out. "and "websocket._exceptions.WebSocketTimeoutException: timed out"and"socket.timeout: timed out".
And the whole output is :
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 65, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 65, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 66, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 66, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 65, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 66, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 65, running: True
[INFO 12:29:02] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 66, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 66, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 66, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 67, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 67, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 66, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 67, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 66, running: True
[INFO 12:29:03] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 67, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 67, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 67, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 68, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 68, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 67, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 68, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 67, running: True
[INFO 12:29:04] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 68, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 68, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 68, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 69, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 69, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 68, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 69, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 68, running: True
[INFO 12:29:05] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 69, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 70, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 69, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 69, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 69, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 70, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 70, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 69, running: True
[INFO 12:29:06] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 70, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 71, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 70, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 71, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 71, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 70, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 70, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 70, running: True
[INFO 12:29:07] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 71, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 72, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 71, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 72, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 72, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 71, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 71, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 71, running: True
[INFO 12:29:08] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 72, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 73, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 73, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 72, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 73, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 72, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 72, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 72, running: True
[INFO 12:29:09] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 73, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 74, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 73, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 74, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 74, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 73, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 73, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 73, running: True
[INFO 12:29:10] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 74, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 74, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 75, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 74, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 75, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 75, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 74, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 74, running: True
[INFO 12:29:11] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 75, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 75, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 75, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 75, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 75, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 76, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 76, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 76, running: True
[INFO 12:29:12] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 76, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 76, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 76, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 76, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 76, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 77, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 77, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 77, running: True
[INFO 12:29:13] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 77, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 77, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 77, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 77, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 78, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 78, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 77, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 78, running: True
[INFO 12:29:14] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 78, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 79, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 78, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 78, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 78, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 79, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 78, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 79, running: True
[INFO 12:29:15] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 79, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 79, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 80, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 80, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 79, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 79, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 80, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 79, running: True
[INFO 12:29:16] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 80, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 81, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 80, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 80, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 81, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 80, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 81, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 81, running: True
[INFO 12:29:17] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 80, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 82, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 81, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 81, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 82, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 81, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 81, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 82, running: True
[INFO 12:29:18] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 82, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 83, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 82, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 82, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 83, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 82, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 83, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 82, running: True
[INFO 12:29:19] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 83, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 84, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 84, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 83, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 83, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 83, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 83, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 84, running: True
[INFO 12:29:20] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 84, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 84, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 85, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 84, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 85, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 84, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 84, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 85, running: True
[INFO 12:29:21] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 85, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 86, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 85, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 86, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 86, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 85, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 86, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 85, running: True
[INFO 12:29:22] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 85, running: True
Listening on: 127.0.0.1:19901
Listening on: 127.0.0.1:24364
Listening on: 127.0.0.1:23352
Listening on: 127.0.0.1:18171
Listening on: 127.0.0.1:21536
Listening on: 127.0.0.1:24969
Listening on: 127.0.0.1:22380
Listening on: 127.0.0.1:24415
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
Startup Phase 3 complete. Ready for commands.
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:21536/sc2api, attempt: 87, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:24969/sc2api, attempt: 87, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:19901/sc2api, attempt: 86, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 86, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:24415/sc2api, attempt: 86, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:22380/sc2api, attempt: 87, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:18171/sc2api, attempt: 86, running: True
[INFO 12:29:23] absl Connecting to: ws://127.0.0.1:24364/sc2api, attempt: 87, running: True
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Entering load game phase.
Launching next game.
Launching next game.
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Launching next game.
Entering load game phase.
Launching next game.
Requesting to join a single player game
Configuring interface options
Requesting to join a single player game
Configuring interface options
Configure: raw interface enabled
Configure: feature layer interface disabled
Requesting to join a single player game
Configure: score interface disabled
Configure: raw interface enabled
Configuring interface options
Configure: render interface disabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Configure: raw interface enabled
Configure: feature layer interface disabled
Configure: score interface disabled
Configure: render interface disabled
Entering load game phase.
Entering load game phase.
Entering load game phase.
Launching next game.
Launching next game.
Launching next game.
Next launch phase started: 2
Next launch phase started: 2
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 3
Next launch phase started: 3
Next launch phase started: 2
Next launch phase started: 2
Next launch phase started: 2
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 3
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 3
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 4
Next launch phase started: 8
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 5
Next launch phase started: 7
Next launch phase started: 6
Next launch phase started: 8
Next launch phase started: 7
Next launch phase started: 8
Next launch phase started: 4
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 4
Next launch phase started: 4
Next launch phase started: 8
Next launch phase started: 5
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 7
Next launch phase started: 8
Next launch phase started: 8
Next launch phase started: 5
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 7
Next launch phase started: 8
Next launch phase started: 8
Process Process-3:
Process Process-4:
Process Process-5:
Process Process-8:
Process Process-2:
Process Process-1:
Process Process-7:
Process Process-6:
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
socket.timeout: timed out
During handling of the above exception, another exception occurred:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 66, in catch_websocket_connection_errors
yield
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 302, in recv
opcode, data = self.recv_data()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 319, in recv_data
opcode, frame = self.recv_data_frame(control_frame)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 332, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 366, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 361, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 309, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/abnf.py", line 396, in recv_strict
bytes = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 441, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 84, in recv
raise WebSocketTimeoutException(message)
websocket._exceptions.WebSocketTimeoutException: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 151, in send
res = self.send_req(req)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 131, in send_req
return self.read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 102, in read
response = self._read()
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 183, in _read
response_str = self._sock.recv()
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 71, in catch_websocket_connection_errors
raise ConnectionError("Websocket timed out.")
pysc2.lib.protocol.ConnectionError: Websocket timed out.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
self.run()
File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/limenglin519/pymarl/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 341, in reset
self._launch()
File "/usr/local/lib/python3.5/dist-packages/smac/env/starcraft2/starcraft2.py", line 308, in _launch
self._controller.join_game(join)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 99, in _valid_status
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 74, in _check_error
return check_error(func(*args, **kwargs), error_enum)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/remote_controller.py", line 209, in join_game
return self._client.send(join_game=req_join_game)
File "/usr/local/lib/python3.5/dist-packages/pysc2/lib/protocol.py", line 153, in send
raise ConnectionError("Error during %s: %s" % (name, e))
pysc2.lib.protocol.ConnectionError: Error during join_game: Websocket timed out.
Game has started.
Game has started.
Game has started.
Game has started.
Game has started.
Game has started.
Game has started.
Game has started.
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
Sending ResponseJoinGame
I would very appreciate if u can help me to solve this problem. Thank u.
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.
libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.
libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.
libEGL warning: Not allowed to force software rendering when API explicitly selects a hardware device.
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
libEGL warning: MESA-LOADER: failed to open nouveau (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri)
Error signal: '11'
Backtrace:
Error signal: '11'
Backtrace:
Error signal: '11'
Backtrace:
Error signal: '11'
Backtrace:
[WARNING 21:02:09] absl SC2 isn't running, so bailing early on the websocket connection.
[WARNING 21:02:09] absl SC2 isn't running, so bailing early on the websocket connection.
[WARNING 21:02:09] absl SC2 isn't running, so bailing early on the websocket connection.
[WARNING 21:02:09] absl SC2 isn't running, so bailing early on the websocket connection.
[INFO 21:02:09] absl Shutdown gracefully.
[INFO 21:02:09] absl Shutdown gracefully.
[INFO 21:02:09] absl Shutdown gracefully.
[INFO 21:02:09] absl Shutdown gracefully.
[INFO 21:02:09] absl Shutdown with return code: -11
[INFO 21:02:09] absl Shutdown with return code: -11
[INFO 21:02:09] absl Shutdown with return code: -11
[INFO 21:02:09] absl Shutdown with return code: -11
Process Process-2:
Process Process-3:
Process Process-4:
Process Process-1:
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/gzx/pymarl-master/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 347, in reset
self._launch()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 297, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/gzx/pymarl-master/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 347, in reset
self._launch()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 297, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
File "/home/gzx/pymarl-master/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 347, in reset
self._launch()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 297, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
Traceback (most recent call last):
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/gzx/pymarl-master/src/runners/parallel_runner.py", line 237, in env_worker
env.reset()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 347, in reset
self._launch()
File "/home/gzx/.local/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 297, in _launch
self._sc2_proc = self._run_config.start(window_size=self.window_size)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 205, in start
want_rgb=want_rgb, extra_args=extra_args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/run_configs/platforms.py", line 88, in start
self, exec_path=exec_path, version=self.version, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/sc_process.py", line 143, in init
self._host, self._port, self, timeout_seconds=timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 146, in init
sock = self._connect(host, port, proc, timeout_seconds)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/stopwatch.py", line 212, in _stopwatch
return func(*args, **kwargs)
File "/home/gzx/.local/lib/python3.6/site-packages/pysc2/lib/remote_controller.py", line 180, in _connect
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
Running on Windows 10
Traceback (most recent call last):
File "src/main.py", line 19, in <module>
ex = Experiment("pymarl")
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\site-packages\sacred\experiment.py", line 75, in __init__
_caller_globals=caller_globals)
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\site-packages\sacred\ingredient.py", line 57, in __init__
gather_sources_and_dependencies(_caller_globals)
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\site-packages\sacred\dependencies.py", line 487, in gather_sources_and_dependencies
sources = gather_sources(globs, experiment_path)
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\site-packages\sacred\dependencies.py", line 440, in get_sources_from_imported_modules
return get_sources_from_modules(iterate_imported_modules(globs), base_path)
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\site-packages\sacred\dependencies.py", line 409, in get_sources_from_modules
filename = os.path.abspath(mod.__file__)
File "C:\Users\Michael\AppData\Local\conda\conda\envs\nn\lib\ntpath.py", line 526, in abspath
return _getfullpathname(path)
TypeError: _getfullpathname: path should be string, bytes or os.PathLike, not NoneType
Any idea of what might be causing this? The conda env was prepared via requirements.txt present in the repo.
I am trying to understand the training process.
I can see that the Qmixer is called in the q_learning module.
What I cannot see is how the agents (RNNagent) are being called and how they are connected to the hyper network for weight sharing.
Edit: also, how are the def forward() functions working and what are the REGISTRY functions used for? I believe these are related to the agent in the basic_controller.py module.
After installing Docker and run with the command inside the docker, I got the following message error.
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 179, in init
super(Linux, self).init(base_dir, "SC2_x64", version=version, env=env)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/init.py", line 40, in get
return max(configs.values(), key=lambda c: c.priority())(version=version)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 63, in init
data_dir=base_dir, tmp_dir=None, version=version, cwd=cwd, env=env)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 179, in init
super(Linux, self).init(base_dir, "SC2_x64", version=version, env=env)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/lib.py", line 112, in init
self.version = self._get_version(version)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 63, in init
data_dir=base_dir, tmp_dir=None, version=version, cwd=cwd, env=env)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/lib.py", line 220, in _get_version
versions = self.get_versions(containing=game_version)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/lib.py", line 112, in init
self.version = self._get_version(version)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 94, in get_versions
for v in os.listdir(versions_dir)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/lib.py", line 220, in _get_version
versions = self.get_versions(containing=game_version)
File "/usr/local/lib/python3.5/dist-packages/pysc2/run_configs/platforms.py", line 94, in get_versions
for v in os.listdir(versions_dir)
FileNotFoundError: [Errno 2] No such file or directory: '/pymarl/3rdparty/StarCraftII/Versions'
Just wondering did I miss something in the installing processes.
Hello,Thank you for your efforts for this implementations.
I want to find the implementation of the IQL, unfortunately,I don't find it.(but I find the iql_smac.yaml file in config folder) Would you mind tell me where is it?
Thank you!
Line 75 of the episode runner is:
"terminated": [(terminated != env_info.get("episode_limit", False),)]
I'm not sure what this was meant to do, but it was causing a difficult to find bug for me. Solution was to replace it with:
"terminated": [(terminated,)]
Let me know if I'm missing something, otherwise can you fix this?
I have tried the command like this:
python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=8m checkpoint_path=results/models/qmix_smac_parallel__2019-02-22_06-59-24/ save_replay=True test_nepisode=1
However, there is not any replay in any directory. Is there mistake I did? Please help notice.
When running an experiment with Docker (bash run.sh $GPU python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
) I get the following issue:
standard_init_linux.go:207: exec user process caused "exec format error".
Any idea on what might be causing the issue? Thanks!
Hi,I have needed the 'COMA' algorighm implementation recently,I want to know do you have the 'COMA' implementation?Can you help me? Thanks!
Firstly, I ran command like this:
python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=3m save_replay=True save_model=True
and then I loaded model by running:
python3 src/main.py --config=qmix --env-config=sc2 with env_args.map_name=3m checkpoint_path=results/models/qmix_smac_parallel__2019-03-20_19-06-37/ runner=episode
Note that I have to use "qmix" rather than "qmix_smac" because I found that using "qmix_smac" along with "runner=episode" would go wrong.(I don't know the difference between qmix and qmix_smac). Then I got .sc2replay file in StarCraftII folder. But when I ran:
python3 -m pysc2.bin.play --norender --rgb_minimap_size 0 --replay NAME.SC2Replay
I got message like this without any replay:
smac_2019-03-21-07-04-12.SC2Replay
pygame 1.9.4
Hello from the pygame community. https://www.pygame.org/contribute.html
I0321 18:50:29.104659 140607866128192 sc_process.py:110] Launching SC2: /home/aaron/StarCraftII/Versions/Base70154/SC2_x64 -listen 127.0.0.1 -port 17276 -dataDir /home/aaron/StarCraftII/ -tempDir /tmp/sc-bvn2ia27/ -displayMode 0 -windowwidth 640 -windowheight 480 -windowx 50 -windowy 50 -dataVersion 94596A85191583AD2EBFAE28C5D532DB -osmesapath libOSMesa.so.8
I0321 18:50:29.107152 140607866128192 remote_controller.py:163] Connecting to: ws://127.0.0.1:17276/sc2api, attempt: 0, running: True
Version: B70326 (SC2.2018Season4)
Build: Nov 27 2018 03:26:30
Command Line: '"/home/aaron/StarCraftII/Versions/Base70154/SC2_x64" -listen 127.0.0.1 -port 17276 -dataDir /home/aaron/StarCraftII/ -tempDir /tmp/sc-bvn2ia27/ -displayMode 0 -windowwidth 640 -windowheight 480 -windowx 50 -windowy 50 -dataVersion 94596A85191583AD2EBFAE28C5D532DB -osmesapath libOSMesa.so.8'
Starting up...
Startup Phase 1 complete
I0321 18:50:30.110396 140607866128192 remote_controller.py:163] Connecting to: ws://127.0.0.1:17276/sc2api, attempt: 1, running: True
Startup Phase 2 complete
Attempting to initialize OSMesa from file libOSMesa.so.8 ...
Successfully loaded OSMesa library!
Running CGLSimpleDevice::HALInit...
Calling glGetString: 0x7ff0b6671da0
Version: 2.1 Mesa 18.2.2
Vendor: Brian Paul
Renderer: Mesa OffScreen
OpenGL initialized!
Listening on: 127.0.0.1:17276
Startup Phase 3 complete. Ready for commands.
I0321 18:50:31.111603 140607866128192 remote_controller.py:163] Connecting to: ws://127.0.0.1:17276/sc2api, attempt: 2, running: True
Could not find map name for file: /tmp/sc-bvn2ia27/StarCraft II/TempReplayInfo.SC2Replay
----------------------- Replay info ------------------------
map_name: "Just Another StarCraft II Map"
local_map_path: "SMAC_Maps/3m.SC2Map"
player_info {
player_info {
player_id: 1
race_requested: Terran
race_actual: Terran
}
player_result {
player_id: 1
result: Tie
}
player_apm: 1808
}
game_duration_loops: 4558
game_duration_seconds: 203.496337890625
game_version: "4.7.1.70326"
data_build: 70326
base_build: 70154
data_version: "94596A85191583AD2EBFAE28C5D532DB"
Configuring interface options
Configure: raw interface disabled
Configure: feature layer interface enabled
Configure: score interface enabled
Configure: render interface disabled
Launching next game.
Next launch phase started: 2
Next launch phase started: 3
Next launch phase started: 4
Next launch phase started: 5
Next launch phase started: 6
Next launch phase started: 7
Next launch phase started: 8
Starting replay 'TempStartReplay.SC2Replay'
Game has started.
Score: 100
Result: [player_id: 1
result: Undecided
]
RequestQuit command received.
Closing Application...
unable to parse websocket frame.
Terminate action already called.
Entering core terminate.
Core shutdown finished.
I0321 18:54:00.920968 140607866128192 sc_process.py:201] Shutdown gracefully.
I0321 18:54:00.921149 140607866128192 sc_process.py:182] Shutdown with return code: 0
The error is like this:
'Process Process-3:
Traceback (most recent call last):
File "/home/a/anaconda3/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/a/anaconda3/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/a/COMA/pymarl/src/runners/parallel_runner.py", line 221, in env_worker
reward, terminated, env_info = env.step(actions)
File "/home/a/anaconda3/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 373, in step
agent_action = self.get_agent_action(a_id, action)
File "/home/a/anaconda3/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 439, in get_agent_action
"Agent {} cannot perform action {}".format(a_id, action)
AssertionError: Agent 0 cannot perform action 0
'
Can you help me to solve this?Thanks!
Hi, thanks for this repo!
I have been reading the source code pf pymarl and I have a few questions.
In the output of the program, there are a few parameters like return_mean
. I understand most of them but I have trouble understanding return_mean
and return_std
. What's the meaning of return
? (I guess may be the calculation of value function.) And how do you calculate return
along with return_mean
and return_std
?
The other question is "why do we use rnn agent?". When I search the word rnn
in this repo, I didn't find codes about how the rnn is used in training agents. And when we use algorithms like qmix, is the system still using rnn agent or the system use qmix agent(like overwriting rnn agent).
Thanks again for this repo!
Hi, I have been running python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
and my process was killed suddenly. I have no idea why this occurred. Here is part of the output. (And by the way, I really don't understand why every INFO shows up eight times.)
I know there is a similar problem here, but we don't have exactly the same problems.
Anyone can help me? Thanks a lot. And also thanks for this repo.
`[INFO 12:57:42] my_main Beginning training for 10050000 timesteps
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl No GL library found, so RGB rendering will be disabled. For software rendering install libosmesa.
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 23352 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ni4r5f6w/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 19667 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ywijkadp/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 16964 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-0bs56nd5/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 21594 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-z44i84pm/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 21722 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-qu3cm6ig/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 24486 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-nccgtyde/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 17230 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-murh5_yx/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Launching SC2: /home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64 -listen 127.0.0.1 -port 22863 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ujzqhm1t/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:21594/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:17230/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:19667/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:24486/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:21722/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:16964/sc2api, attempt: 0, running: True
[INFO 12:57:43] absl Connecting to: ws://127.0.0.1:22863/sc2api, attempt: 0, running: True
Version: B69232 (SC2.4.6-Publish)
Version: B69232 (SC2.4.6-Publish)
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Build: Oct 23 2018 01:43:04
Build: Oct 23 2018 01:43:04
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 22863 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ujzqhm1t/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 24486 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-nccgtyde/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 23352 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ni4r5f6w/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 21594 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-z44i84pm/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 19667 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-ywijkadp/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 16964 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-0bs56nd5/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 21722 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-qu3cm6ig/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Version: B69232 (SC2.4.6-Publish)
Build: Oct 23 2018 01:43:04
Command Line: '"/home/ch/pymarl/3rdparty/StarCraftII/Versions/Base69232/SC2_x64" -listen 127.0.0.1 -port 17230 -dataDir /home/ch/pymarl/3rdparty/StarCraftII/ -tempDir /tmp/sc-murh5_yx/ -displayMode 0 -windowwidth 1920 -windowheight 1200 -windowx 50 -windowy 50'
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:16964/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:22863/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:21722/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:17230/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:19667/sc2api, attempt: 1, running: True
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:21594/sc2api, attempt: 1, running: True
Startup Phase 1 complete
Startup Phase 1 complete
[INFO 12:57:46] absl Connecting to: ws://127.0.0.1:24486/sc2api, attempt: 1, running: True
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
[INFO 12:57:47] absl Connecting to: ws://127.0.0.1:22863/sc2api, attempt: 2, running: True
[INFO 12:57:48] absl Connecting to: ws://127.0.0.1:21594/sc2api, attempt: 2, running: True
[INFO 12:57:47] absl Connecting to: ws://127.0.0.1:23352/sc2api, attempt: 2, running: True
[INFO 12:57:47] absl Connecting to: ws://127.0.0.1:24486/sc2api, attempt: 2, running: True
[INFO 12:57:48] absl Connecting to: ws://127.0.0.1:17230/sc2api, attempt: 2, running: True
[INFO 12:57:48] absl Connecting to: ws://127.0.0.1:16964/sc2api, attempt: 2, running: True
[INFO 12:57:49] absl Connecting to: ws://127.0.0.1:19667/sc2api, attempt: 2, running: True
[INFO 12:57:56] absl Connecting to: ws://127.0.0.1:24486/sc2api, attempt: 3, running: True
[INFO 12:57:58] absl Connecting to: ws://127.0.0.1:22863/sc2api, attempt: 3, running: True
Killed
`
I tried to implement baselines used in your paper, such as Central-V, IAC-V, under this project on 3M map, but I cannot reproduce the results reported in your paper. The following is the training curve of Central-V on 3M map by my code.
I am not sure about how to build inputs for these baselines and my training process is not stable.
If possible, could you kindly share with me your implementation on these baselines, especially the implementation of Critic Function and how to build input? Thank you ;). @jakobnicolaus
I got it!
BREAK when running build.sh, step 23.
CODE:
RUN pip3 install git+https://github.com/oxwhirl/smac.git
ERROR:
Successfully built SMAC absl-py future mpyq portpicker s2protocol ordered-set
ERROR: sacred 0.7.2 has requirement jsonpickle<1.0,>=0.7.2, but you'll have jsonpickle 1.2 which is incompatible.
Installing collected packages: future, mpyq, ordered-set, jsonpickle, deepdiff, s2clientprotocol, portpicker, urllib3, certifi, idna, chardet, requests, enum34, websocket-client, sk-video, absl-py, s2protocol, whichcraft, mock, pysc2, SMAC
Found existing installation: jsonpickle 0.9.6
Uninstalling jsonpickle-0.9.6:
Successfully uninstalled jsonpickle-0.9.6
Successfully installed SMAC-0.1.0b1 absl-py-0.8.0 certifi-2019.9.11 chardet-3.0.4 deepdiff-4.0.7 enum34-1.1.6 future-0.17.1 idna-2.8 jsonpickle-1.2 mock-3.0.5 mpyq-0.2.5 ordered-set-3.1.1 portpicker-1.3.1 pysc2-3.0.0 requests-2.22.0 s2clientprotocol-4.10.3.76114.0 s2protocol-4.10.3.76114.0 sk-video-1.1.10 urllib3-1.25.6 websocket-client-0.56.0 whichcraft-0.6.1
Traceback (most recent call last):
File "/usr/local/bin/pip3", line 11, in
sys.exit(main())
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/init.py", line 77, in main
return command.main(cmd_args)
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/cli/base_command.py", line 237, in main
timeout=min(5, options.timeout)
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/cli/base_command.py", line 108, in _build_session
index_urls=self._get_index_urls(options),
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/download.py", line 559, in init
self.headers["User-Agent"] = user_agent()
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/download.py", line 170, in user_agent
setuptools_version = get_installed_version("setuptools")
File "/usr/local/lib/python3.5/dist-packages/pip/_internal/utils/misc.py", line 1044, in get_installed_version
working_set = pkg_resources.WorkingSet()
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 567, in init
self.add_entry(entry)
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 623, in add_entry
for dist in find_distributions(entry, True):
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 1974, in find_eggs_in_zip
if metadata.has_metadata('PKG-INFO'):
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 1414, in has_metadata
return self._has(path)
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 1845, in _has
return zip_path in self.zipinfo or zip_path in self._index()
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 1722, in zipinfo
return self._zip_manifests.load(self.loader.archive)
File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/init.py", line 1679, in load
mtime = os.stat(path).st_mtime
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.5/dist-packages/jsonpickle-0.9.6-py3.5.egg'
The command '/bin/sh -c pip3 install git+https://github.com/oxwhirl/smac.git' returned a non-zero code: 1
when i run the command "python3 src/main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z".The output comes "File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/socket.py", line 81, in recv
bytes = sock.recv(bufsize)
socket.timeout: timed out
socket.timeout: timed out
socket.timeout: timed out
socket.timeout: timed out
socket.timeout: timed out
...
websocket._exceptions.WebSocketTimeoutException: timed out
websocket._exceptions.WebSocketTimeoutException: timed out
websocket._exceptions.WebSocketTimeoutException: timed out
"
Because of the length of the text, i copy a part of content, and i would like to send the whole component in the next comment.
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 19660 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-7g3rhadx/ -eglpath libEGL.so'
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:20750/sc2api, attempt: 0, running: True
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 20750 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-mtis1x1z/ -eglpath libEGL.so'
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:23861/sc2api, attempt: 0, running: True
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 23861 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-887vyu8m/ -eglpath libEGL.so'
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 22483 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-cl3fv80z/ -eglpath libEGL.so'
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 15531 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-kzyeambf/ -eglpath libEGL.so'
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:15148/sc2api, attempt: 0, running: True
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 15148 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-1jt2vxad/ -eglpath libEGL.so'
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:20873/sc2api, attempt: 0, running: True
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 20873 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-bgr0beac/ -eglpath libEGL.so'
Starting up...
Startup Phase 1 complete
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:22057/sc2api, attempt: 0, running: True
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 22057 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-hhuzwael/ -eglpath libEGL.so'
Starting up...
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:22646/sc2api, attempt: 0, running: True
Starting up...
Version: B55958 (SC2.3.16)
Build: Jul 31 2017 13:19:41
Command Line: '"/home/gezhixin/pymarl-master/3rdparty/StarCraftII/Versions/Base55958/SC2_x64" -listen 127.0.0.1 -port 21568 -dataDir /home/gezhixin/pymarl-master/3rdparty/StarCraftII/ -tempDir /tmp/sc-k3_l6j80/ -eglpath libEGL.so'
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:19660/sc2api, attempt: 0, running: True
Starting up...
Starting up...
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Starting up...
Starting up...
Starting up...
Startup Phase 1 complete
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Starting up...
Startup Phase 1 complete
Starting up...
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Starting up...
Startup Phase 1 complete
Startup Phase 1 complete
Starting up...
Startup Phase 1 complete
Startup Phase 1 complete
Starting up...
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
Startup Phase 1 complete
[INFO 15:09:52] absl Connecting to: ws://127.0.0.1:24955/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:15973/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:15404/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:17495/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:16329/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:23943/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:21460/sc2api, attempt: 1, running: True
[INFO 15:09:53] absl Connecting to: ws://127.0.0.1:19711/sc2api, attempt: 1, running: True
I ran on the Window10 system, but the following problem:
(starcraft) E:\GitProject\pymarl>python src\main.py --config=qmix_smac --env-config=sc2 with env_args.map_name=2s3z
[INFO 16:19:39] root Saving to FileStorageObserver in results/sacred.
[DEBUG 16:19:41] pymarl Using capture mode "fd"
[DEBUG 16:19:41] pymarl Stopping Heartbeat
Exception originated from within Sacred.
Traceback (most recent calls):
File "D:\Downloads\Environment\Anaconda\envs\starcraft\lib\site-packages\sacred\stdout_capturing.py", line 131, in tee_output_fd
['tee', '-a', '/dev/stderr'], preexec_fn=os.setsid,
AttributeError: module 'os' has no attribute 'setsid'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Downloads\Environment\Anaconda\envs\starcraft\lib\site-packages\sacred\run.py", line 217, in call
with capture_stdout() as self._output_file:
File "D:\Downloads\Environment\Anaconda\envs\starcraft\lib\contextlib.py", line 81, in enter
return next(self.gen)
File "D:\Downloads\Environment\Anaconda\envs\starcraft\lib\site-packages\sacred\stdout_capturing.py", line 136, in tee_output_fd
except (FileNotFoundError, (OSError, AttributeError)):
TypeError: catching classes that do not inherit from BaseException is not allowed
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Downloads\Environment\Anaconda\envs\starcraft\lib\site-packages\sacred\run.py", line 344, in _stop_time
seconds=round((self.stop_time - self.start_time).total_seconds()))
TypeError: unsupported operand type(s) for -: 'datetime.datetime' and 'NoneType'
File "/home/xxx/anaconda3/envs/LIIR/lib/python3.6/site-packages/smac/env/starcraft2/starcraft2.py", line 292, in _launch
self._run_config = run_configs.get(version=self.game_version)
TypeError: get() got an unexpected keyword argument 'version'
TypeError: get() got an unexpected keyword argument 'version'
TypeError: get() got an unexpected keyword argument 'version'
According to my understanding of terminated
and mask
, terminated
is a vector consist of 0s and only one 1. 1 means the terminated time step of the episode.
pymarl/src/learners/q_learner.py
Line 43 in eaf6b06
mask
is, for example, [1,1,1,1,0,0], which tells that the episode length is 4. Then the corresponding terminated
is [0,0,0,1,0,0].
Then
mask[:, 1:] is [1,1,1,0,0]
1 - terminated[:, :-1] is [1,1,1,0,1]
mask[:, 1:] * (1 - terminated[:, :-1]) is [1,1,1,0,0]
So after performing mask[:, 1:] = mask[:, 1:] * (1 - terminated[:, :-1])
, mask
is still [1,1,1,1,0,0]. This line of code doesn't change mask
. Then what does this line of code do? Thanks.
I am also confused about the dimension of mask
and terminated
in your code. They do not contain the dimension of the number of agents. Can you explain? Thanks :)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.