{"id":610,"date":"2021-05-21T03:35:07","date_gmt":"2021-05-21T03:35:07","guid":{"rendered":"http:\/\/pybullet.org\/wordpress\/?p=610"},"modified":"2022-02-13T00:36:17","modified_gmt":"2022-02-13T00:36:17","slug":"tiny-differentiable-simulator","status":"publish","type":"post","link":"https:\/\/pybullet.org\/wordpress\/index.php\/2021\/05\/21\/tiny-differentiable-simulator\/","title":{"rendered":"NeuralSim: Augmenting Differentiable Simulators with Neural Networks"},"content":{"rendered":"\n<p>We are developing a new differentiable simulator for robotics learning, called Tiny Differentiable Simulator, or TDS. The simulator allows for hybrid simulation with neural networks. It allows different automatic differentiation backends, for forward and reverse mode gradients. TDS can be trained using Deep Reinforcement Learning, or using Gradient based optimization (for example LFBGS). In addition, the simulator can be entirely run on CUDA for fast rollouts, in combination with Augmented Random Search. This allows for 1 million simulation steps per second.<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Training a CUDA TDS Ant using C++ ARS Linear policy.\" width=\"474\" height=\"356\" src=\"https:\/\/www.youtube.com\/embed\/-MfUXSAehnw?start=54&#038;feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><figcaption>Tiny Differentiable Simulator training  a policy using ARS simulation in CUDA<\/figcaption><\/figure>\n\n\n\n<p>TDS is used in a couple of research papers, such as the ICRA 2021 <a href=\"https:\/\/arxiv.org\/abs\/2011.04217\">NeuralSim: Augmenting Differentiable Simulators with Neural Networks&#8221;, by Eric Heiden, David Millard, Erwin Coumans, Yizhou Sheng and Gaurav S. Sukhatme.<\/a><br><br>You can checkout the source code here: <br><a href=\"https:\/\/github.com\/google-research\/tiny-differentiable-simulator\">https:\/\/github.com\/google-research\/tiny-differentiable-simulator<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are developing a new differentiable simulator for robotics learning, called Tiny Differentiable Simulator, or TDS. The simulator allows for hybrid simulation with neural networks. It allows different automatic differentiation backends, for forward and reverse mode gradients. TDS can be trained using Deep Reinforcement Learning, or using Gradient based optimization (for example LFBGS). In addition, &hellip; <a href=\"https:\/\/pybullet.org\/wordpress\/index.php\/2021\/05\/21\/tiny-differentiable-simulator\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">NeuralSim: Augmenting Differentiable Simulators with Neural Networks<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_links_to":"","_links_to_target":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/610"}],"collection":[{"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=610"}],"version-history":[{"count":4,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/610\/revisions"}],"predecessor-version":[{"id":617,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/610\/revisions\/617"}],"wp:attachment":[{"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=610"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=610"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pybullet.org\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=610"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}