diff --git a/config/ocean/cpr.ini b/config/ocean/cpr.ini index ee33760075..9252c84c91 100644 --- a/config/ocean/cpr.ini +++ b/config/ocean/cpr.ini @@ -7,7 +7,7 @@ rnn_name = Recurrent [env] num_envs = 512 vision = 3 -num_agents = [12] +num_agents = [8] report_interval=1 reward_food = 0.1 interactive_food_reward = 0.2 @@ -19,7 +19,7 @@ num_envs = 1 num_workers = 1 total_timesteps = 60_000_000 device = cpu -batch_size = 32768 +batch_size = 65536 minibatch_size = 8192 bptt_horizon = 16 checkpoint_interval = 200 @@ -64,4 +64,4 @@ distribution = log_normal min = 50e6 max = 75e6 mean = 60e6 -scale = time \ No newline at end of file +scale = time diff --git a/pufferlib/ocean/cpr/__init__.py b/pufferlib/ocean/common_pool_resource/__init__.py similarity index 100% rename from pufferlib/ocean/cpr/__init__.py rename to pufferlib/ocean/common_pool_resource/__init__.py diff --git a/pufferlib/ocean/cpr/cpr.c b/pufferlib/ocean/common_pool_resource/common_pool_resource.c similarity index 98% rename from pufferlib/ocean/cpr/cpr.c rename to pufferlib/ocean/common_pool_resource/common_pool_resource.c index f7896a9b60..9c743ce31f 100644 --- a/pufferlib/ocean/cpr/cpr.c +++ b/pufferlib/ocean/common_pool_resource/common_pool_resource.c @@ -9,7 +9,7 @@ int main() { int render_cell_size = 32; CCpr env = { - .num_agents = 1, + .num_agents = 8, .width = width, .height = height, .vision = 3, diff --git a/pufferlib/ocean/cpr/cpr.h b/pufferlib/ocean/common_pool_resource/cpr.h similarity index 99% rename from pufferlib/ocean/cpr/cpr.h rename to pufferlib/ocean/common_pool_resource/cpr.h index 9509027374..2f9729878b 100644 --- a/pufferlib/ocean/cpr/cpr.h +++ b/pufferlib/ocean/common_pool_resource/cpr.h @@ -489,7 +489,7 @@ void step_agent(CCpr *env, int i) { Agent *agent = &env->agents[i]; int action = env->actions[i]; - env->logs[i].episode_length += 1; + env->log->episode_length += 1; int dr = 0; int dc = 0; @@ -690,7 +690,7 @@ Renderer *init_renderer(int cell_size, int width, int height) { InitWindow(width * cell_size, height * cell_size, "CPR"); SetTargetFPS(10); - renderer->puffer = LoadTexture("resources/cpr/puffers_128.png"); + renderer->puffer = LoadTexture("resources/common_pool_resource/puffers_128.png"); return renderer; } diff --git a/pufferlib/ocean/cpr/cpr.py b/pufferlib/ocean/common_pool_resource/cpr.py similarity index 92% rename from pufferlib/ocean/cpr/cpr.py rename to pufferlib/ocean/common_pool_resource/cpr.py index a651b85953..4228e41285 100644 --- a/pufferlib/ocean/cpr/cpr.py +++ b/pufferlib/ocean/common_pool_resource/cpr.py @@ -2,7 +2,7 @@ import numpy as np import pufferlib -from pufferlib.ocean.cpr.cy_cpr import CyEnv +from pufferlib.ocean.common_pool_resource.cy_cpr import CyEnv class PyCPR(pufferlib.PufferEnv): def __init__(self, @@ -85,12 +85,12 @@ def close(self): import time start = time.time() - # while time.time() - start < timeout: - while tick < 500: + while time.time() - start < timeout: + # while tick < 500: atns = actions[tick % 1024] env.step(atns) - if -1 in env.rewards: - breakpoint() + # if -1 in env.rewards: + # breakpoint() # env.render() tick += 1 diff --git a/pufferlib/ocean/cpr/cy_cpr.pyx b/pufferlib/ocean/common_pool_resource/cy_cpr.pyx similarity index 100% rename from pufferlib/ocean/cpr/cy_cpr.pyx rename to pufferlib/ocean/common_pool_resource/cy_cpr.pyx diff --git a/pufferlib/ocean/cpr/grid.h b/pufferlib/ocean/common_pool_resource/grid.h similarity index 100% rename from pufferlib/ocean/cpr/grid.h rename to pufferlib/ocean/common_pool_resource/grid.h diff --git a/pufferlib/ocean/environment.py b/pufferlib/ocean/environment.py index 34728c3087..62dd27451a 100644 --- a/pufferlib/ocean/environment.py +++ b/pufferlib/ocean/environment.py @@ -135,7 +135,7 @@ def make_multiagent(buf=None, **kwargs): 'trash_pickup': lambda: lazy_import('pufferlib.ocean.trash_pickup.trash_pickup', 'TrashPickupEnv'), 'tower_climb': lambda: lazy_import('pufferlib.ocean.tower_climb.tower_climb', 'TowerClimb'), 'grid': lambda: lazy_import('pufferlib.ocean.grid.grid', 'Grid'), - 'cpr': lambda: lazy_import('pufferlib.ocean.cpr.cpr', 'PyCPR'), + 'cpr': lambda: lazy_import('pufferlib.ocean.common_pool_resource.cpr', 'PyCPR'), 'impulse_wars': lambda: lazy_import('pufferlib.ocean.impulse_wars.impulse_wars', 'ImpulseWars'), 'gpudrive': lambda: lazy_import('pufferlib.ocean.gpudrive.gpudrive', 'GPUDrive'), #'rocket_lander': rocket_lander.RocketLander, diff --git a/pufferlib/resources/cpr/inflated_puff.png b/pufferlib/resources/common_pool_resource/inflated_puff.png similarity index 100% rename from pufferlib/resources/cpr/inflated_puff.png rename to pufferlib/resources/common_pool_resource/inflated_puff.png diff --git a/pufferlib/resources/cpr/puffers_128.png b/pufferlib/resources/common_pool_resource/puffers_128.png similarity index 100% rename from pufferlib/resources/cpr/puffers_128.png rename to pufferlib/resources/common_pool_resource/puffers_128.png diff --git a/setup.py b/setup.py index c43853440e..a9c537139c 100644 --- a/setup.py +++ b/setup.py @@ -280,7 +280,8 @@ # 'pufferlib/ocean/go/cy_go', 'pufferlib/ocean/rware/cy_rware', 'pufferlib/ocean/trash_pickup/cy_trash_pickup', - 'pufferlib/ocean/cpr/cy_cpr', + 'pufferlib/ocean/common_pool_resource/cy_cpr', + # 'pufferlib/ocean/tower_climb/cy_tower_climb', 'pufferlib/ocean/tower_climb/cy_tower_climb', 'pufferlib/ocean/gpudrive/cy_gpudrive', ]