Skip to content

Commit f432a6f

Browse files
MarcDclsaraffin
andauthored
Adding FRASA to the projects page (#2059)
* Adding FRASA to the projects page * Updating changelog.rst * Ignore mypy errors for np arrays (python 3.11+) --------- Co-authored-by: Antonin Raffin <[email protected]>
1 parent 9caa168 commit f432a6f

File tree

8 files changed

+24
-7
lines changed

8 files changed

+24
-7
lines changed

docs/misc/changelog.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ Documentation:
3939
- Added Decisions and Dragons to resources. (@jmacglashan)
4040
- Updated PyBullet example, now compatible with Gymnasium
4141
- Added link to policies for ``policy_kwargs`` parameter (@kplers)
42+
- Added FRASA to the project page (@MarcDcls)
4243

4344
Release 2.4.0 (2024-11-18)
4445
--------------------------
@@ -1739,4 +1740,4 @@ And all the contributors:
17391740
@DavyMorgan @luizapozzobon @Bonifatius94 @theSquaredError @harveybellini @DavyMorgan @FieteO @jonasreiher @npit @WeberSamuel @troiganto
17401741
@lutogniew @lbergmann1 @lukashass @BertrandDecoster @pseudo-rnd-thoughts @stefanbschneider @kyle-he @PatrickHelm @corentinlger
17411742
@marekm4 @stagoverflow @rushitnshah @markscsmith @NickLucche @cschindlbeck @peteole @jak3122 @will-maclean
1742-
@brn-dev @jmacglashan @kplers
1743+
@brn-dev @jmacglashan @kplers @MarcDcls

docs/misc/projects.rst

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,3 +250,19 @@ It enables solving environments involving partial observability or locomotion (e
250250
| Authors: Corentin Léger, Gautier Hamon, Eleni Nisioti, Xavier Hinaut, Clément Moulin-Frier
251251
| Github: https://github.com/corentinlger/ER-MRL
252252
| Paper: https://arxiv.org/abs/2312.06695
253+
254+
255+
FRASA: Fall Recovery And Stand up agent
256+
---------------------------------------
257+
258+
A Deep Reinforcement Learning agent for a humanoid robot that learns to recover from falls and stand up.
259+
260+
The agent is trained using the MuJoCo physics engine. Real world experiments are conducted on the
261+
Sigmaban humanoid robot, a small-sized humanoid designed by the *Rhoban Team* to compete in the RoboCup Kidsize League.
262+
The results, detailled in the paper and the video, show that the agent is able to recover from
263+
various external disturbances and stand up in a few seconds.
264+
265+
Authors: Marc Duclusaud, Clément Gaspard, Grégoire Passault, Mélodie Daniel, Olivier Ly
266+
Github: https://github.com/Rhoban/frasa
267+
Paper: https://arxiv.org/abs/2410.08655
268+
Video: https://www.youtube.com/watch?v=NL65XW0O0mk

stable_baselines3/common/callbacks.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,7 @@ def _on_step(self) -> bool:
490490
timesteps=self.evaluations_timesteps,
491491
results=self.evaluations_results,
492492
ep_lengths=self.evaluations_length,
493-
**kwargs,
493+
**kwargs, # type: ignore[arg-type]
494494
)
495495

496496
mean_reward, std_reward = np.mean(episode_rewards), np.std(episode_rewards)

stable_baselines3/common/envs/bit_flipping_env.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ def convert_to_bit_vector(self, state: Union[int, np.ndarray], batch_size: int)
103103
# Convert to binary representation
104104
bit_vector = ((bit_vector[:, :] & (1 << np.arange(len(self.state)))) > 0).astype(int)
105105
elif self.image_obs_space:
106-
bit_vector = state.reshape(batch_size, -1)[:, : len(self.state)] / 255
106+
bit_vector = state.reshape(batch_size, -1)[:, : len(self.state)] / 255 # type: ignore[assignment]
107107
else:
108108
bit_vector = np.array(state).reshape(batch_size, -1)
109109
return bit_vector

stable_baselines3/common/off_policy_algorithm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,7 @@ def _store_transition(
487487
next_obs[i] = infos[i]["terminal_observation"]
488488
# VecNormalize normalizes the terminal observation
489489
if self._vec_normalize_env is not None:
490-
next_obs[i] = self._vec_normalize_env.unnormalize_obs(next_obs[i, :])
490+
next_obs[i] = self._vec_normalize_env.unnormalize_obs(next_obs[i, :]) # type: ignore[assignment]
491491

492492
replay_buffer.add(
493493
self._last_original_obs, # type: ignore[arg-type]

stable_baselines3/common/vec_env/base_vec_env.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ def tile_images(images_nhwc: Sequence[np.ndarray]) -> np.ndarray: # pragma: no
4343
# img_HhWwc
4444
out_image = out_image.transpose(0, 2, 1, 3, 4)
4545
# img_Hh_Ww_c
46-
out_image = out_image.reshape((new_height * height, new_width * width, n_channels))
46+
out_image = out_image.reshape((new_height * height, new_width * width, n_channels)) # type: ignore[assignment]
4747
return out_image
4848

4949

stable_baselines3/common/vec_env/dummy_vec_env.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def step_async(self, actions: np.ndarray) -> None:
5656
def step_wait(self) -> VecEnvStepReturn:
5757
# Avoid circular imports
5858
for env_idx in range(self.num_envs):
59-
obs, self.buf_rews[env_idx], terminated, truncated, self.buf_infos[env_idx] = self.envs[env_idx].step(
59+
obs, self.buf_rews[env_idx], terminated, truncated, self.buf_infos[env_idx] = self.envs[env_idx].step( # type: ignore[assignment]
6060
self.actions[env_idx]
6161
)
6262
# convert to SB3 VecEnv api

stable_baselines3/her/her_replay_buffer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ def add( # type: ignore[override]
157157
self.ep_start[self.pos] = self._current_ep_start.copy()
158158

159159
if self.copy_info_dict:
160-
self.infos[self.pos] = infos
160+
self.infos[self.pos] = infos # type: ignore[assignment]
161161
# Store the transition
162162
super().add(obs, next_obs, action, reward, done, infos)
163163

0 commit comments

Comments
 (0)