Incrementing agent expert data, smaller policy network

This commit is contained in:
ebuehrle
2022-02-25 01:23:15 +01:00
parent 0d193d4af3
commit 02c1813b00
7 changed files with 29 additions and 13 deletions

View File

@@ -1,10 +1,13 @@
import sys
sys.path.append('../../../../')
import torch
import functools
from core.sampling import rollout_sb3
from intersim.envs import IntersimpleLidarFlatRandom
from src.core.sampling import rollout_sb3
from intersim.envs import IntersimpleLidarFlatIncrementingAgent
from intersim.envs.intersimple import speed_reward
from intersim.expert import NormalizedIntersimpleExpert
from util.wrappers import CollisionPenaltyWrapper, Setobs
from src.util.wrappers import CollisionPenaltyWrapper, Setobs
import numpy as np
from gym.wrappers import TransformObservation
@@ -26,7 +29,9 @@ obs_max = np.array([
[50, np.pi, 20, 20, np.pi, 1e-1],
]).reshape(-1)
env = IntersimpleLidarFlatRandom(
env = IntersimpleLidarFlatIncrementingAgent(
loc=0,
track=4,
n_rays=5,
reward=functools.partial(
speed_reward,
@@ -42,7 +47,8 @@ env = Setobs(TransformObservation(
collision_distance=6, collision_penalty=100
), lambda obs: (obs - obs_min) / (obs_max - obs_min + 1e-10)
))
expert_data = rollout_sb3(env, policy, n_episodes=2048, max_steps_per_episode=200)
print(env.nv, 'vehicles')
expert_data = rollout_sb3(env, policy, n_episodes=150, max_steps_per_episode=200)
states, actions, rewards, dones = expert_data
print(f'Expert mean episode length {(~dones).sum() / states.shape[0]}')
@@ -50,4 +56,4 @@ print(f'Expert mean reward per episode {rewards[~dones].sum() / states.shape[0]}
print(f'Observation mean', states[~dones].mean(0))
print(f'Observation std', states[~dones].std(0))
torch.save(expert_data, 'intersimple-expert-data-setobs2.pt')
torch.save(expert_data, 'intersimple-expert-data-setobs2-loc0-track4.pt')