Skip to content

Release v0.8.0

Compare
Choose a tag to compare
@github-actions github-actions released this 07 Aug 10:55
· 18 commits to master since this release
97f35d3

[0.8.0] - 2024-08-07

Bug Fixes

  • Use py3.11 as it still ships pkg_resources by default which docstr-coverage needs (25d649f)
  • Issue was with CI.yml not installing jdrones (7898915)
  • Check for different env types (5aae992)
  • Check for different env types (d24b766)
  • Legacy imports (f6f196c)
  • Tensorflow-probability 0.24.0 not compatible with sbx 0.12.0 (6441dc2)
  • Reset to initial state z not current z (5679bf1)
  • Re-added is_success logging (f429dd1)
  • Switch to vector-based velocity method (04ea745)
  • Enable policy net_arch for RecurrentPPO to be customizable from the CLI (dcea513)
  • Success distance is 1 not 1.5 (32e96bd)
  • Don't break the loop if a target is reached to ensure that time stays synchronized (7a2db4a)
  • Switch to SB3's DummyVecEnv to handle the multi-env logic (29bbe52)
  • Properly handle collision reward (703274e)
  • Ensure eval env is the same as training env (3a7833f)
  • Re-include time in the observation (a5c30e4)
  • Ensure observation is (1,X) in shape (a7ee23c)
  • Disable JIT for codecov, but also run the same setup with jit without codecov (4f2e626)

Documentation

Features

Miscellaneous Tasks

  • Remove the status updater. Was causing more issues than was worth. (bd80432)
  • Bump pandas from 2.0.0 to 2.1.0 (51ff0a1)
  • Bump pydantic from 1.10.6 to 2.3.0 (2f309aa)
  • Bump gymnasium from 0.28.1 to 0.29.1 (234a5bb)
  • Bump actions/download-artifact from 3 to 4 (0f3299c)
  • Bump actions/setup-python from 4 to 5 (d56ff9e)
  • Bump actions/upload-artifact from 3 to 4 (d406f45)
  • Flake8 config in .flake8 ini file (871c0ca)
  • Explicitly add gitignored file version.py (c2d4183)
  • Use requirements.txt file for all so that dependabot can auto-update (6b68265)
  • version -> _version to avoid name conflicts (f93a6df)
  • Bump seaborn from 0.12.2 to 0.13.2 (3af4c7b)
  • Bump matplotlib from 3.7.1 to 3.8.3 (0f7149f)
  • Bump codecov/codecov-action from 3.1.1 to 4.0.2 (dd37dc5)
  • Bump orhun/git-cliff-action from 2 to 3 (e4c9070)
  • Bump JamesIves/github-pages-deploy-action (71b93c7)
  • Bump actions/checkout from 3 to 4 (465029a)
  • Bump scipy from 1.10.1 to 1.12.0 (386e883)
  • Bump numpy from 1.24.2 to 1.26.4 (8a02a35)
  • Bump pydantic from 2.3.0 to 2.6.2 (ff1f8a6)
  • Bump codecov/codecov-action from 4.0.2 to 4.1.0 (bb6c90e)
  • Bump pandas from 2.1.0 to 2.2.1 (cd083b1)
  • Bump pydantic from 2.6.2 to 2.7.1 (a10848d)
  • Add a fifth action that controls the scaling of the propeller actions (17a6e79)
  • Switch to using "unwrapped" (a5467e2)
  • Import order (d6f9879)
  • Further edits to energy example (5371a38)
  • Try out sbx (556968c)
  • Update types (28f728c)
  • Allow a reset state to be given within options (11bc080)
  • Make sure num_timesteps is set properly (8127e41)
  • Make sure num_timesteps is set properly (83606e4)
  • Make sure num_timesteps is set properly (6a8b455)
  • Change example rewards scheme to be normalized (3271621)
  • Use subprocvecenv when n_envs > 1 (f3b724f)
  • Make Monitor log other info keywords (010ab83)
  • Normalize reward by maximum action command T (ee96f4a)
  • Normalize reward by maximum action command T (fd66268)
  • Play around with how the control is structured. Only let policy define target x and y pos (e0d7690)
  • Enable maximum time to be specified from CLI (844d19b)
  • Reduce observation space to x-y plane (04347f6)
  • Include angular position and velocity in the observation (f3dcd89)
  • Plot actions (0216f3e)
  • Adjust observation shape to match observation (94cbc0e)
  • Ensure fig.tight_layout() is called for plotting during callbacks to avoid weird layouts (6490375)
  • Set target z to env z (769741b)
  • Use env.unwrapped pattern (d8674e3)
  • Ensure target is set before it is used within reset (8a8e3d5)
  • Adjust reward normalization (6d7a036)
  • Change step simulation time to be 3 (3d79c69)
  • Normalize reward by maximum action command T (f82ffff)
  • Enable maximum time to be specified from CLI (294cfbc)
  • Expose initial_state (ab834d7)
  • Log number of targets achieved (b07881e)
  • Move to relative control rather than absolute (c1df545)
  • Reduce step sim time down to 0.25s (6334782)
  • Reduce eval episodes to 10 (f930698)
  • Increase dx magnitude (915ec5f)
  • Reduce sub-env sim time to 0.1s (0b6d02a)
  • The reward is dependent on the target z as well, so we have to include that data in the observation to make the env fully observable (3ca0bc3)
  • Include clip_range in CLI inputs (4b2f8a9)
  • Increase dx magnitude (eaa10a4)
  • Include the next target in the observation (fd287ce)
  • Reduce sub-env sim time to 0.1s (d9b97da)
  • Plot targets (783177c)
  • Switch to a heading-velocity scheme and reintroduce the control action penalty (e8a4fb7)
  • Set squash_output to true when using SDE (a265f65)
  • Rename env to be more representative of what it is (db08c1a)
  • Pass total sim time to the mult DRL env (6040eca)
  • Bump pydantic from 2.7.1 to 2.8.2 (2b8b402)
  • Make reward calculations optional for polynomial envs (6e38d55)
  • Silence pybullet messages at import (1683157)
  • Update changelog for v0.8.0 [skip pre-commit.ci] (97f35d3)

Performance

  • Improve State.normed and move into main repo (1afdf85)
  • Improve to_x and from_x by up to 2x speeds (2669d4b)
  • Use numpy+numba in transformation calculations for better performance (fe5b953)
  • Use numba jit for core simulation methods (f9b27ca)
  • Use faster way of checking if any item is nan (eb81c10)
  • Use a faster method to zero clip than np.clip (ea5d3bc)

Refactor

  • Example got too big, so split into sub-modules (3960e07)
  • Rename to be more accurate (1de2e16)
  • Remove old env and optuna sweeps (14090b4)
  • Handle rewards normalization in the top-level env (8bfc7a7)