EOS❤️RL.env Notes
How to install EOS
- BIOS/UEFI boot from USB, choose EOS NVIDIA
- update with
yay --mflags --nocheck -S python-future
- yay -S openssh, enable sshd
- clash-verge-rev-bin, system proxy Use auto config URL, same as firefox
- install ibus-rime, enable ibus-wayland from system setting - vkeyboard, use
F4
choose 简化字 - visual-studio-code-bin, vim, ?ccache
yay -S miniforge
with file.condarc
:- 清华大学开源软件镜像站
- SUSTech Open Source Mirrors which contains nvidia
- PyTorch:
conda create -n isaac38 python=3.8 numpy pandas jupyterlab matplotlib tensorboard
conda activate isaac38
conda install pytorch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 pytorch-cuda=12.1 -c pytorch -c nvidia
# isaacgym:
# np.float to float
# export LD_LIBRARY_PATH=$CONDA_PREFIX/lib
# conda install -c conda-forge libstdcxx-ng
Conda: Saving environment variables
cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activate.d/env_vars.sh
touch ./etc/conda/deactivate.d/env_vars.sh
choreonoid
yay -S cmake eigen fmt python-numpy assimp ode fcl
QT_QPA_PLATFORM=xcb ./your_qt_application
Isaac Gym
- robots are simulated using PhysX reduced coordinate articulations(root+dof, which usage are Get/Set)
- use Temporal Gauss Seidel (TGS) solver to compute the future states of objects in our physics simulation
- actor = rigid bodies + joints(dof states)
- tensor API = data abstraction of PhysX
- access physics data in flat buffers. physics state is exposed to python users as global tensors
- the core of Isaac Gym is implemented using C++ and CUDA
- sim2real:
- asymmetric actor-critic & history
- domain randomization (friction, mass…)
- add noise to obs
- randomly push
- curriculum learning
- normalization
- delay
- armature
- actuator constrained
- IsaacGym 不支持 capsule 需用 cylinder
replace_cylinder_with_capsule = True
set_xxxxxx_tensor_indexed
use actor indices- Whenever you call
unwrap_tensor
, make sure that there is a Python reference to that tensor that will prevent it from being garbage-collected - Another limitation with the GPU pipeline is that tensor
refresh
functions should be called only once per step, before any calls to tensor setter functions - Aggregates do not provide extra simulation functionality, but allow you to tell PhysX that a set of actors will be clustered together, which in turn allows PhysX to optimize its spatial data operations
- state and error (in reward) must be standardized
pkg | how to install | usage |
---|---|---|
PhysHOI | $pip install termcolor==1.1.0 rl-games==1.1.4 |
|
urdf-viz | $yay -S rust && cargo install urdf-viz |
$WINIT_UNIX_BACKEND=x11 urdf-viz file |
urdfdom | $yay -S graphviz urdfdom |
|
BVHView | $XDG_SESSION_TYPE=x11 bvhview |