Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 50 million developers.Sign up
Bullet 2.89 includes a new implementation of volumetric deformable objects and cloth based on the Finite Element Method, thanks to Xuchen Han. Two-way coupling between deformables and rigid/multi body is achieved using a unified constraint solver.
PyBullet is improved for robotics sim-to-real with realistic models of Laikago quadruped and an implementation of Deep Mimic.
pip3 install pybullet
python3 -m pybullet_envs.examples.laikago
python3 -m pybullet_envs.deep_mimic.testrl --arg_file run_humanoid3d_backflip_args.txt
A lot of work this year went into improving PyBullet for robotics and reinforcement learning research.
The SDK was used in several published research papers by Google Brain Robotics, including our RSS 2018 paper "Sim-to-Real: Learning Agile Locomotion For Quadruped Robots" , see the video here
Some of the improvements are related to maintaining determinism when saving and restoring a simulation, and improving the accuracy of GJK convex collision detection and btMultiBody.
Bullet 2.87 has improved support for robotics, reinforcement learning and VR. In particular, see the "Reinforcement Learning" section in the pybullet quickstart guide at http://pybullet.org . There are also preliminary C# bindings to allow the use of pybullet inside Unity 3D for robotics and reinforcement learning.
Here are some videos:
- Minitaur pybullet trained with TF Agents PPO, improved motor model, randomization
- pybullet Ant trained using TensorFlow Agents
- pybullet KUKA grasp training/enjoy using Tensorflow+OpenAI gym+baselines DQN
Some example training the pybullet_pendulum using TensorFlow Agents PPO:
pip install pybullet, agents, tensorflow, gym
python -m pybullet_envs.agents.train_ppo --config=pybullet_pendulum --logdir=pendulum
tensorboard --logdir=pendulum --port=2222
python -m pybullet_envs.agents.visualize_ppo --logdir=pendulum/xxxxx --outdir=pendulum_video
The Bullet 2.86 has improved Python bindings, pybullet, for robotics, machine learning and VR, see the pybullet quickstart guide.
Furthermore, the PGS LCP constraint solver has a new option to terminate as soon as the residual (error) is below a specified tolerance (instead of terminating after a fixed number of iterations). There are optional multithreaded optimizations, thanks to lunkhound. There is preliminary support to load some MuJoCo MJCF xml files (see data/mjcf),see Bullet VR haptic experiments with a VR glove:
Bullet 2.85 (previously known as 2.84) introduces pybullet, easy to use Python bindings, as well as Virtual Reality support for HTC Vice and Oculus Rift. In addition, there is support for Inverse Kinematics and Inverse Dynamics. This release is marked as 'prerelease' until the documentation is updated. See also this video: https://www.youtube.com/watch?v=VMJyZtHQL50
Bullet Physics SDK 2.83 is a first release using the new example browser. See the docs/BulletQuickstart.pdf how to get started.
Note that the example browser needs a bit more work and some old demos are not in the new example structures yes, this is a todo for a future release.