Skip to content

Commit

Permalink
Fix headless argument behaviour in ULTRA (#737)
Browse files Browse the repository at this point in the history
* Fix headless argument in ULTRA scripts

* Change headless flag to behave like SMARTS
  • Loading branch information
christianjans authored Apr 14, 2021
1 parent a6d5f21 commit e556d26
Show file tree
Hide file tree
Showing 7 changed files with 17 additions and 11 deletions.
4 changes: 2 additions & 2 deletions ultra/docs/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Implementations of baseline agents are available in `ultra/baselines/`. Notice,
- `--level`: The level of the task (default is easy).
- `--episodes`: The number of training episodes to run (default is 1000000).
- `--timestep`: The environment timestep in seconds (default is 0.1).
- `--headless`: Whether to run training without Envision (default is True).
- `--headless`: Provide this flag to run training without Envision.
- `--eval-episodes`: The number of evaluation episodes (default is 200).
- `--eval-rate`: The rate at which evaluation occurs based on the number of observations (default is 10000).
- `--seed`: The environment seed (default is 2).
Expand Down Expand Up @@ -82,7 +82,7 @@ After training your agent, your models should be saved under `logs/<timestamped_
- `--models`: The path to the saved model (default is models/).
- `--episodes`: The number of evaluation episodes (default is 200).
- `--timestep`: The environment timestep in seconds (default is 0.1).
- `--headless`: Whether to run evaluation without Envision (default is True).
- `--headless`: Provide this flag to run evaluation without Envision.
- `--experiment-dir`: The path to the spec file that includes adapters and policy parameters.
- `--policy`: The policy (agent) to evaluate (default is sac).
- `--max-steps-episode`: The option to limit the number of steps per epsiodes (default is 10000).
Expand Down
2 changes: 1 addition & 1 deletion ultra/docs/rllib.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ of the steps is shown below
- `--level`: The level of the task (default is easy).
- `--episodes`: The number of training episodes to run (default is 100).
- `--timestep`: The environment timestep in seconds (default is 0.1).
- `--headless`: Whether to run training without Envision (default is True).
- `--headless`: Provide this flag to run training without Envision.
- `--eval-episodes`: The number of evaluation episodes (default is 200).
- `--eval-rate`: The rate at which evaluation occurs based on the number of episodes (default is 10000).
- `--seed`: The environment seed (default is 2).
Expand Down
8 changes: 4 additions & 4 deletions ultra/tests/test_evaluate.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,12 @@ def setUpClass(cls):
)
train_command = (
"python ultra/train.py "
"--task 00 --level eval_test --policy sac --headless True --episodes 1 "
"--task 00 --level eval_test --policy sac --headless --episodes 1 "
f"--eval-rate 1 --eval-episodes 1 --max-episode-steps 2 --log-dir {path}"
)
multiagent_train_command = (
"python ultra/train.py "
"--task 00-multiagent --level eval_test --policy sac,dqn,ppo --headless True --episodes 1 "
"--task 00-multiagent --level eval_test --policy sac,dqn,ppo --headless --episodes 1 "
f"--eval-rate 1 --eval-episodes 1 --max-episode-steps 2 --log-dir {multiagent_path}"
)

Expand Down Expand Up @@ -174,7 +174,7 @@ def test_evaluate_cli(self):
evaluate_command = (
f"python ultra/evaluate.py "
f"--task 00 --level eval_test --models {models} --experiment-dir {experiment_dir} "
f"--episodes 1 --max-episode-steps 2 --log-dir {log_dir} --headless True"
f"--episodes 1 --max-episode-steps 2 --log-dir {log_dir} --headless"
)

ray.shutdown()
Expand Down Expand Up @@ -202,7 +202,7 @@ def test_evaluate_cli_multiagent(self):
evaluate_command = (
f"python ultra/evaluate.py "
f"--task 00-multiagent --level eval_test --models {models} --experiment-dir {experiment_dir} "
f"--episodes 1 --max-episode-steps 2 --log-dir {log_dir} --headless True"
f"--episodes 1 --max-episode-steps 2 --log-dir {log_dir} --headless"
)

ray.shutdown()
Expand Down
2 changes: 1 addition & 1 deletion ultra/tests/test_rllib_train.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ def test_rllib_train_cli(self):
log_dir = os.path.join(RLlibTrainTest.OUTPUT_DIRECTORY, "tests/rllib_results/")
try:
os.system(
f"python ultra/rllib_train.py --task 00 --level easy --episodes 1 --training-batch-size 200 --headless True --log-dir {log_dir}"
f"python ultra/rllib_train.py --task 00 --level easy --episodes 1 --training-batch-size 200 --headless --log-dir {log_dir}"
)
except Exception as err:
print(err)
Expand Down
4 changes: 3 additions & 1 deletion ultra/ultra/evaluate.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,9 @@ def evaluate(
"--timestep", help="Environment timestep (sec)", type=float, default=0.1
)
parser.add_argument(
"--headless", help="Run without envision", type=bool, default=True
"--headless",
help="Run without envision",
action="store_true",
)
parser.add_argument(
"--experiment-dir",
Expand Down
4 changes: 3 additions & 1 deletion ultra/ultra/rllib_train.py
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,9 @@ def train(
"--timestep", help="environment timestep (sec)", type=float, default=0.1
)
parser.add_argument(
"--headless", help="run without envision", type=bool, default=True
"--headless",
help="Run without envision",
action="store_true",
)
parser.add_argument(
"--eval-episodes", help="number of evaluation episodes", type=int, default=100
Expand Down
4 changes: 3 additions & 1 deletion ultra/ultra/train.py
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,9 @@ def train(
"--timestep", help="Environment timestep (sec)", type=float, default=0.1
)
parser.add_argument(
"--headless", help="Run without envision", type=bool, default=True
"--headless",
help="Run without envision",
action="store_true",
)
parser.add_argument(
"--eval-episodes", help="Number of evaluation episodes", type=int, default=200
Expand Down

0 comments on commit e556d26

Please sign in to comment.