diff --git a/config/intersection_zoo.ini b/config/intersection_zoo.ini index 69a2ea55..3f75eeba 100644 --- a/config/intersection_zoo.ini +++ b/config/intersection_zoo.ini @@ -1,8 +1,10 @@ [base] package = intersection_zoo +vec = multiprocessing env_name = sumo [train] -total_timesteps = 500_000 +total_timesteps = 50_000_000 +num_workers = 8 num_envs = 8 env_batch_size = 8 diff --git a/pufferlib/environments/intersection_zoo/environment.py b/pufferlib/environments/intersection_zoo/environment.py index 8b21c43e..ecb9e6d1 100644 --- a/pufferlib/environments/intersection_zoo/environment.py +++ b/pufferlib/environments/intersection_zoo/environment.py @@ -5,10 +5,8 @@ from pathlib import Path import numpy as np -from env.config import IntersectionZooEnvConfig -from env.task_context import PathTaskContext -from env.environment import IntersectionZooEnv -from sumo.constants import REGULAR +from intersection_zoo import IntersectionZooEnvConfig, PathTaskContext, IntersectionZooPZEnv +from intersection_zoo.sumo.constants import REGULAR import pufferlib.emulation import pufferlib.environments @@ -18,9 +16,9 @@ def env_creator(name='intersection_zoo'): return functools.partial(make, name=name) -def make(name, penetration=0.33, temperature_humidity=68_46, render_mode='rgb_array', buf=None): +def make(name, data='salt-lake-city', penetration=0.33, temperature_humidity='68_46', render_mode='rgb_array', buf=None): tasks = PathTaskContext( - dir='temp', + dir=Path(data), single_approach=True, penetration_rate=penetration, temperature_humidity=temperature_humidity, @@ -29,13 +27,13 @@ def make(name, penetration=0.33, temperature_humidity=68_46, render_mode='rgb_ar env_conf = IntersectionZooEnvConfig( task_context=tasks.sample_task(), - working_dir='temp', + working_dir=Path('temp'), moves_emissions_models=[temperature_humidity], fleet_reward_ratio=1, visualize_sumo=False, ) # Create the environment - env = IntersectionZooEnv({"intersectionzoo_env_config": env_conf}) + env = IntersectionZooPZEnv({"intersectionzoo_env_config": env_conf}) return pufferlib.emulation.PettingZooPufferEnv(env=env, buf=buf)