A Framework for Comparison of Methods for Solving Complementarity Problems That Arise in Multibody Dynamics

Total Page:16

File Type:pdf, Size:1020Kb

A Framework for Comparison of Methods for Solving Complementarity Problems That Arise in Multibody Dynamics A FRAMEWORK FOR COMPARISON OF METHODS FOR SOLVING COMPLEMENTARITY PROBLEMS THAT ARISE IN MULTIBODY DYNAMICS By Ying Lu A Dissertation Submitted to the Graduate Faculty of Rensselaer Polytechnic Institute in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY Major Subject: COMPUTER SCIENCE Approved by the Examining Committee: Jeffrey C. Trinkle, Dissertation Adviser Christopher Carothers, Member Barbara Cutler, Member John Mitchell, Member Rensselaer Polytechnic Institute Troy, New York May 2016 (For Graduation August 2016) c Copyright 2016 by Ying Lu All Rights Reserved ii CONTENTS LIST OF TABLES . vii LIST OF FIGURES . viii ACKNOWLEDGMENT . xi ABSTRACT . xii 1. INTRODUCTION . .1 1.1 Motivation . .1 1.2 Contributions and Organization . .6 1.2.1 Contributions . .6 1.2.2 Organization . .7 2. PREVIOUS WORK . .8 2.1 Benchmark Frameworks . .8 2.1.1 Generality . .8 2.1.2 Veracity . .9 2.1.3 Flexibility . 10 2.2 Parallel Multibody Dynamics Simulation . 11 2.3 Open-Source Software . 13 2.4 Summary . 15 3. BACKGROUND . 16 3.1 Equations of Motion . 16 3.2 Constraints and Friction . 17 3.2.1 Unilateral Contact . 18 3.2.2 Bilateral Constraint . 20 3.2.3 Friction . 23 3.2.3.1 Approximations of the Friction Model . 27 3.3 Time-Stepping Method . 31 3.4 Complementarity Problems . 32 3.4.1 Mixed Nonlinear Complementarity Problem . 33 3.4.2 Mixed Linear Complementarity Problem . 34 iii 3.4.3 Linear Complementarity Problem . 35 3.5 Parallel Computing . 36 3.5.1 Parallel Architecture . 37 3.5.2 POSIX Threads . 38 3.5.3 Compute Unified Device Architecture . 38 3.6 Summary . 39 4. SOLUTION ALGORITHMS . 40 4.1 Pivoting Method . 41 4.2 First-Order Iterative Method . 43 4.2.1 Matrix Splitting . 43 4.2.1.1 Projected Jacobi . 45 4.2.1.2 Projected Successive Over-Relaxation . 45 4.2.1.3 Projected Gauss-Seidel . 47 4.2.1.4 Relaxation Metrics . 48 4.3 Generalized Newton Method . 49 4.3.1 Different Systems . 49 4.3.1.1 Fischer-Burmeister System . 49 4.3.1.2 Chen-Chen-Kanzow System . 50 4.3.1.3 Minimum-Map System . 51 4.3.2 The Local Newton Method . 51 4.4 Line Search Algorithm . 52 4.4.1 Wolfe Algorithm . 53 4.4.2 Armijo Algorithm . 53 4.4.3 Goldstein-Price Algorithm . 54 4.5 Prox Solver . 56 4.5.1 Fixed-Point Iteration . 56 4.5.2 Proximal Point Function . 57 4.5.3 Algorithm Implementation . 58 4.5.4 Traditional Parameter Choice Strategy . 61 4.6 Summary . 62 5. BPMD DATABASE AND FRAMEWORK . 63 5.1 Motivation . 64 5.2 BPMD Database . 65 iv 5.2.1 Database Schema . 66 5.2.2 Utilize the Database . 70 5.3 BPMD Framework . 72 5.3.1 Available Models and Solvers . 73 5.3.2 Synthetic Versus Realistic Data . 73 5.3.2.1 Synthetic Data . 74 5.3.2.2 Realistic Data . 80 5.3.3 Comparison Results . 82 5.4 Parameter Dependence on Vector b .................. 84 5.4.1 Limitation of the Relaxation . 89 5.5 Verification and Validation with 2dgad . 91 5.5.1 Experiment Setup . 93 5.5.2 System Parameter Estimation . 94 5.5.2.1 Random Sampling . 94 5.5.2.2 MPEC Formulation . 95 5.5.3 Compare Simulation with Experiment . 98 5.5.3.1 Validation Results with Random Sampling . 98 5.5.3.2 Validation Results with MPEC Formulation . 100 5.6 Summary . 100 6. ANALYSIS OF PARALLEL METHODS . 102 6.1 Why Compute in Parallel . 103 6.1.1 Multithreading Parallelization with Pthreads . 104 6.1.2 GPU Parallelization with CUDA . 105 6.1.3 Hardware Parameters . 105 6.2 Simulation Scenarios Setup . 106 6.2.1 Multiple Low-Complexity Models . 106 6.2.2 Single High-Complexity Model . 107 6.2.3 Multiple High-Complexity Models . 107 6.2.4 Many-Rigid-Body Model . 107 6.2.5 Single Exponential-Complexity Model . 108 6.3 Profiling and Timing Measurement . 109 6.4 Pthreads Parallelization Results . 110 6.4.1 Multiple Revolute Joints . 110 6.4.2 Single PR2 Robot . 111 v 6.4.3 A Pair of PR2 Robots . 111 6.4.4 Dropping Test with Many Bodies . 113 6.4.5 Joint Tree Test . 115 6.5 GPU Parallelization Strategy . 116 6.6 GPU Parallelization Results . 120 6.7 Summary . 121 7. CONTRIBUTION TO MULTIBODY DYNAMICS COMMUNITY . 122 7.1 Standard Solver Interface . 122 7.2 Coulomb Friction Model Integration . 125 7.3 Haptic Hand Contact Dynamics . 126 7.4 HDF5 Instrument Tool . 126 7.5 Summary . 128 8. CONCLUSIONS AND FUTURE WORK . 129 8.1 Conclusions . 129 8.2 Future Work . 131 REFERENCES . 134 vi LIST OF TABLES 4.1 The existence and uniqueness of solutions to LCP . 43 5.1 The high-level hierarchy of BPMD database . 67 5.2 Standard simulation data stored in our BPMD database . 68 5.3 Different methods and solvers in the BPMD framework . 73 5.4 Scaling analysis of direct method with synthetic data . 77 5.5 Scaling analysis of matrix splitting methods with synthetic data . 79 5.6 Scaling analysis of generalized Newton methods with synthetic data . 80 5.7 Average time per iteration for different solvers . 84 5.8 Optimal parameters estimated for each solver . 95 5.9 The unknowns in MPEC formulation . 95 5.10 Lower and upper bounds of the unknowns in MPEC formulation . 96 6.1 GPU device hardware information . 106 vii LIST OF FIGURES 1.1 Applications of multibody dynamics simulation in different fields . .2 1.2 The main steps in multibody dynamics simulation . .4 1.3 A simulation scene from the multibody dynamics simulation software Algoryx . .5 3.1 World coordinate {W} and body coordinate {B} ............. 18 3.2 Contact formulation between two rigid bodies . 19 3.3 Revolute joint . 21 3.4 Prismatic joint . 21 3.5 Prismatic joint and revolute joint in simulation scenarios . 22 3.6 Bilateral joints on a PR2 robot . 23 3.7 Coulomb friction model with three physical states . 25 3.8 Approximations of Coulomb friction.
Recommended publications
  • Master's Thesis
    MASTER'S THESIS Online Model Predictive Control of a Robotic System by Combining Simulation and Optimization Mohammad Rokonuzzaman Pappu 2015 Master of Science (120 credits) Space Engineering - Space Master Luleå University of Technology Department of Computer Science, Electrical and Space Engineering Mohammad Rokonuzzaman Pappu Online Model Predictive Control of a Robotic System by Combining Simulation and Optimization School of Electrical Engineering Department of Electrical Engineering and Automation Thesis submitted in partial fulfillment of the requirements for the degree of Master of Science in Technology Espoo, August 18, 2015 Instructor: Professor Perttu Hämäläinen Aalto University School of Arts, Design and Architecture Supervisors: Professor Ville Kyrki Professor Reza Emami Aalto University Luleå University of Technology School of Electrical Engineering Preface First of all, I would like to express my sincere gratitude to my supervisor Pro- fessor Ville Kyrki for his generous and patient support during the work of this thesis. He was always available for questions and it would not have been possi- ble to finish the work in time without his excellent guidance. I would also like to thank my instructor Perttu H¨am¨al¨ainen for his support which was invaluable for this thesis. My sincere thanks to all the members of Intelligent Robotics group who were nothing but helpful throughout this work. Finally, a special thanks to my colleagues of SpaceMaster program in Helsinki for their constant support and encouragement. Espoo, August 18,
    [Show full text]
  • Agx Multiphysics Download
    Agx multiphysics download click here to download A patch release of AgX Dynamics is now available for download for all of our licensed customers. This version include some minor. AGX Dynamics is a professional multi-purpose physics engine for simulators, Virtual parallel high performance hybrid equation solvers and novel multi- physics models. Why choose AGX Dynamics? Download AGX product brochure. This video shows a simulation of a wheel loader interacting with a dynamic tree model. High fidelity. AGX Multiphysics is a proprietary real-time physics engine developed by Algoryx Simulation AB Create a book · Download as PDF · Printable version. AgX Multiphysics Toolkit · Age Of Empires III The Asian Dynasties Expansion. Convert trail version Free Download, product key, keygen, Activator com extended. free full download agx multiphysics toolkit from AYS search www.doorway.ru have many downloads related to agx multiphysics toolkit which are hosted on sites like. With AGXUnity, it is possible to incorporate a real physics engine into a well Download from the prebuilt-packages sub-directory in the repository www.doorway.rug: multiphysics. A www.doorway.ru app that runs a physics engine and lets clients download physics data in real Clone or download AgX Multiphysics compiled with Lua support. Agx multiphysics toolkit. Developed physics the was made dynamics multiphysics simulation. Runtime library for AgX MultiPhysics Library. How to repair file. Original file to replace broken file www.doorway.ru Download. Current version: Some short videos that may help starting with AGX-III. Example 1: Finding a possible Pareto front for the Balaban Index in the Missing: multiphysics.
    [Show full text]
  • Software Design for Pluggable Real Time Physics Middleware
    2005:270 CIV MASTER'S THESIS AgentPhysics Software Design for Pluggable Real Time Physics Middleware Johan Göransson Luleå University of Technology MSc Programmes in Engineering Department of Computer Science and Electrical Engineering Division of Computer Science 2005:270 CIV - ISSN: 1402-1617 - ISRN: LTU-EX--05/270--SE AgentPhysics Software Design for Pluggable Real Time Physics Middleware Johan GÄoransson Department of Computer Science and Electrical Engineering, LuleºaUniversity of Technology, [email protected] October 27, 2005 Abstract This master's thesis proposes a software design for a real time physics appli- cation programming interface with support for pluggable physics middleware. Pluggable means that the actual implementation of the simulation is indepen- dent and interchangeable, separated from the user interface of the API. This is done by dividing the API in three layers: wrapper, peer, and implementation. An evaluation of Open Dynamics Engine as a viable middleware for simulating rigid body physics is also given based on a number of test applications. The method used in this thesis consists of an iterative software design based on a literature study of rigid body physics, simulation and software design, as well as reviewing related work. The conclusion is that although the goals set for the design were ful¯lled, it is unlikely that AgentPhysics will be used other than as a higher level API on top of ODE, and only ODE. This is due to a number of reasons such as middleware speci¯c tools and code containers are di±cult to support, clash- ing programming paradigms produces an error prone implementation layer and middleware developers are reluctant to port their engines to Java.
    [Show full text]
  • Physics Engine Design and Implementation Physics Engine • a Component of the Game Engine
    Physics engine design and implementation Physics Engine • A component of the game engine. • Separates reusable features and specific game logic. • basically software components (physics, graphics, input, network, etc.) • Handles the simulation of the world • physical behavior, collisions, terrain changes, ragdoll and active characters, explosions, object breaking and destruction, liquids and soft bodies, ... Game Physics 2 Physics engine • Example SDKs: – Open Source • Bullet, Open Dynamics Engine (ODE), Tokamak, Newton Game Dynamics, PhysBam, Box2D – Closed source • Havok Physics • Nvidia PhysX PhysX (Mafia II) ODE (Call of Juarez) Havok (Diablo 3) Game Physics 3 Case study: Bullet • Bullet Physics Library is an open source game physics engine. • http://bulletphysics.org • open source under ZLib license. • Provides collision detection, soft body and rigid body solvers. • Used by many movie and game companies in AAA titles on PC, consoles and mobile devices. • A modular extendible C++ design. • Used for the practical assignment. • User manual and numerous demos (e.g. CCD Physics, Collision and SoftBody Demo). Game Physics 4 Features • Bullet Collision Detection can be used on its own as a separate SDK without Bullet Dynamics • Discrete and continuous collision detection. • Swept collision queries. • Generic convex support (using GJK), capsule, cylinder, cone, sphere, box and non-convex triangle meshes. • Support for dynamic deformation of nonconvex triangle meshes. • Multi-physics Library includes: • Rigid-body dynamics including constraint solvers. • Support for constraint limits and motors. • Soft-body support including cloth and rope. Game Physics 5 Design • The main components are organized as follows Soft Body Dynamics Bullet Multi Threaded Extras: Maya Plugin, Rigid Body Dynamics etc. Collision Detection Linear Math, Memory, Containers Game Physics 6 Overview • High level simulation manager: btDiscreteDynamicsWorld or btSoftRigidDynamicsWorld.
    [Show full text]
  • Dynamic Simulation of Manipulation & Assembly Actions
    Syddansk Universitet Dynamic Simulation of Manipulation & Assembly Actions Thulesen, Thomas Nicky Publication date: 2016 Document version Peer reviewed version Document license Unspecified Citation for pulished version (APA): Thulesen, T. N. (2016). Dynamic Simulation of Manipulation & Assembly Actions. Syddansk Universitet. Det Tekniske Fakultet. General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal ? Take down policy If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim. Download date: 09. Sep. 2018 Dynamic Simulation of Manipulation & Assembly Actions Thomas Nicky Thulesen The Maersk Mc-Kinney Moller Institute Faculty of Engineering University of Southern Denmark PhD Dissertation Odense, November 2015 c Copyright 2015 by Thomas Nicky Thulesen All rights reserved. The Maersk Mc-Kinney Moller Institute Faculty of Engineering University of Southern Denmark Campusvej 55 5230 Odense M, Denmark Phone +45 6550 3541 www.mmmi.sdu.dk Abstract To grasp and assemble objects is something that is known as a difficult task to do reliably in a robot system.
    [Show full text]
  • Chapter 9 Animation System
    Chapter 10 Collision and Rigid Body Dynamics asyrani.com 10.1 Do You Want Physics in Your Game? Things You Can Do with a Physics System A LOT Is Physics Fun? Simulations (Sims) Gran Turismo Flight Simulator Need For Speed Physics Puzzle Games Bridge Builder Fantastic Contraption Crayon Physics The Incredible Machine Sandbox Games LittleBigPlanet GTA 5 Spore Goal-Based and Story-Driven Games A goal-based game has rules and specific objectives that the player must accomplish in order to progress; in a story-driven game , telling a story is of paramount importance. Integrating a physics system into these kinds of games can be tricky. We generally give away control in exchange for a realistic simulation, and this loss of control can inhibit the player’s ability to accomplish goals or the game’s ability to tell the story. Impact of Physics on a Game Predictability Tuning and control Emergent behaviors Engineering Impacts Collision Tools pipeline User interface detection Animation Rag doll AI and character physics motion Networking Record and Graphics and playback multiplayer Art Impacts Additional tool More-complex and workflow content complexity Loss of control Other Impacts Interdisciplinary impacts. The introduction of a dynamics simulation into your game requires close cooperation between engineering, art, and design. Production impacts. Physics can add to a project’s development costs, technical and organizational complexity, and risk. 10.2 Collision/Physics Middleware I-Collide SWIFT V-Collide RAPID ODE ODE stands for “Open Dynamics Engine ” (http://www.ode.org). As its name implies, ODE is an open-source collision and rigid body dynamics SDK.
    [Show full text]
  • Digital Control Networks for Virtual Creatures
    Digital control networks for virtual creatures Christopher James Bainbridge Doctor of Philosophy School of Informatics University of Edinburgh 2010 Abstract Robot control systems evolved with genetic algorithms traditionally take the form of floating-point neural network models. This thesis proposes that digital control sys- tems, such as quantised neural networks and logical networks, may also be used for the task of robot control. The inspiration for this is the observation that the dynamics of discrete networks may contain cyclic attractors which generate rhythmic behaviour, and that rhythmic behaviour underlies the central pattern generators which drive low- level motor activity in the biological world. To investigate this a series of experiments were carried out in a simulated physically realistic 3D world. The performance of evolved controllers was evaluated on two well known control tasks — pole balancing, and locomotion of evolved morphologies. The performance of evolved digital controllers was compared to evolved floating-point neu- ral networks. The results show that the digital implementations are competitive with floating-point designs on both of the benchmark problems. In addition, the first re- ported evolution from scratch of a biped walker is presented, demonstrating that when all parameters are left open to evolutionary optimisation complex behaviour can result from simple components. iii Acknowledgements “I know why you’re here... I know what you’ve been doing... why you hardly sleep, why you live alone, and why night after night, you sit by your computer.” I would like to thank my parents and grandmother for all of their support over the years, and for giving me the freedom to pursue my interests from an early age.
    [Show full text]
  • Systematic Literature Review of Realistic Simulators Applied in Educational Robotics Context
    sensors Systematic Review Systematic Literature Review of Realistic Simulators Applied in Educational Robotics Context Caio Camargo 1, José Gonçalves 1,2,3 , Miguel Á. Conde 4,* , Francisco J. Rodríguez-Sedano 4, Paulo Costa 3,5 and Francisco J. García-Peñalvo 6 1 Instituto Politécnico de Bragança, 5300-253 Bragança, Portugal; [email protected] (C.C.); [email protected] (J.G.) 2 CeDRI—Research Centre in Digitalization and Intelligent Robotics, 5300-253 Bragança, Portugal 3 INESC TEC—Institute for Systems and Computer Engineering, 4200-465 Porto, Portugal; [email protected] 4 Robotics Group, Engineering School, University of León, Campus de Vegazana s/n, 24071 León, Spain; [email protected] 5 Universidade do Porto, 4200-465 Porto, Portugal 6 GRIAL Research Group, Computer Science Department, University of Salamanca, 37008 Salamanca, Spain; [email protected] * Correspondence: [email protected] Abstract: This paper presents a systematic literature review (SLR) about realistic simulators that can be applied in an educational robotics context. These simulators must include the simulation of actuators and sensors, the ability to simulate robots and their environment. During this systematic review of the literature, 559 articles were extracted from six different databases using the Population, Intervention, Comparison, Outcomes, Context (PICOC) method. After the selection process, 50 selected articles were included in this review. Several simulators were found and their features were also Citation: Camargo, C.; Gonçalves, J.; analyzed. As a result of this process, four realistic simulators were applied in the review’s referred Conde, M.Á.; Rodríguez-Sedano, F.J.; context for two main reasons. The first reason is that these simulators have high fidelity in the robots’ Costa, P.; García-Peñalvo, F.J.
    [Show full text]
  • Desktop Haptic Virtual Assembly Using Physically-Based Part Modeling" (2005)
    Iowa State University Capstones, Theses and Retrospective Theses and Dissertations Dissertations 1-1-2005 Desktop haptic virtual assembly using physically- based part modeling Brad M. Howard Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/rtd Recommended Citation Howard, Brad M., "Desktop haptic virtual assembly using physically-based part modeling" (2005). Retrospective Theses and Dissertations. 18810. https://lib.dr.iastate.edu/rtd/18810 This Thesis is brought to you for free and open access by the Iowa State University Capstones, Theses and Dissertations at Iowa State University Digital Repository. It has been accepted for inclusion in Retrospective Theses and Dissertations by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. Desktop haptic virtual assembly using physically-based part modeling by Brad M. Howard A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Mechanical Engineering Program of Study Committee: Judy M. Vance (Major Professor) James H. Oliver Chris J. Harding Iowa State University Ames, Iowa 2005 11 Graduate College Iowa State University This is to certify that the master's thesis of Brad M. Howard has met the thesis requirements of Iowa State University Signatures have been redacted for privacy lll TABLE OF CONTENTS TABLE OF CONTENTS ....................................... ............... ............................. .....................
    [Show full text]
  • Physics-Based Simula1on
    Physics-based Simula1on • simple (independent par1cles), or complex (robust colliding, stacking, sliding 3D rigid bodies) • many many simulators! – PhysX (Unity, Unreal), Bullet, Open Dynamics Engine, MuJoCo, Havok, Box2D, Chipmunk, OpenSim, RBDL, Simulink (MATLAB), ADAMS, SD/FAST, DART, Vortex, SOFA, Avatar, Project Chrono, Cannon.js, … – many course projects, theses, abandon-ware Resources • hUps://processing.org/examples/ see “Simulate”; 2D par1cle systems • Non-convex rigid bodies with stacking 3D collision processing and stacking hUp://www.cs.ubc.ca/~rbridson/docs/rigid_bodies.pdf • Physically-based Modeling, course notes, SIGGRAPH 2001, Baraff & Witkin hUp://www.pixar.com/companyinfo/research/pbm2001/ • Doug James CS 5643 course notes hUp://www.cs.cornell.edu/courses/cs5643/2015sp/ • Rigid Body Dynamics, Chris Hecker hUp://chrishecker.com/Rigid_Body_Dynamics • Video game physics tutorial hUps://www.toptal.com/game/video-game-physics-part-i-an-introduc1on-to-rigid-body-dynamics • Box2D javascript live demos hUp://heikobehrens.net/misc/box2d.js/examples/ • Rigid body collisions javascript demo hUps://www.myphysicslab.com/engine2D/collision-en.html • Rigid Body Collision Reponse, Michael Manzke, course slides hUps://www.scss.tcd.ie/Michael.Manzke/CS7057/cs7057-1516-09-CollisionResponse-mm.pdf • Rigid Body Dynamics Algorithms. Roy Featherstone, 2008 • Par1cle-based Fluid Simula1on for Interac1ve Applica1ons, SCA 2003, PDF • Stable Fluids, Jos Stam, SIGGRAPH 1999. interac1ve demo: hUps://29a.ch/2012/12/16/webgl-fluid-simula1on Simula1on
    [Show full text]
  • Workshop Report
    "Toward High-Performance Computing Support for the Analysis, Simulation, and Planning of Robotic Contact Tasks," a workshop at Robotics Science and Systems, June 27, 28 2011, held on the campus of the University of Southern California. Supported by NSF Grant: CRI: CP-I: 0855024 Executive Summary of NSF Workshop The workshop was opened by Jeff Trinkle, who articulated the goals to the participants. The main goal of the first day was to establish an understanding of the state of the art in the following subareas: • Simulation capabilities and support functions • Future needs in robotics, engineering, games, etc. • Guidelines for model/method selection • Issues in high-performance computing The main goal of the second day was to discuss the needs of the robotics in terms of a computational simulation tool and support functions. Three break-out groups would be formed to discuss the following subtopics: • Software base and user support • Hardware and platforms • Validation and benchmarks In a final wrap-up meeting on the second day the issues and recommendations of the three break-out groups were discussed with additional consideration given to the possibility of applying for an NSF Community Infrastructure – Acquisition, Development, Deployment, and Operation (CI-ADDO) grant. The conclusions of the second day’s discussions were: • It is premature to develop an NSF-supported community software resource • A longer, larger workshop (perhaps through BIRS) involving the mechanics and numerical methods communities is in order • A repository should be developed that contains contact problems with known analytical solutions and instances of time-stepping subproblems that are difficult to solve State-of-the-art update from EuroMech Colloquium 516 The week after this workshop, Trinkle attended EuroMech Colloquium 516 in Grenoble France, July 6-8, 2011.
    [Show full text]
  • Simulation Tools for Model-Based Robotics: Comparison of Bullet, Havok, Mujoco, ODE and Physx
    Simulation Tools for Model-Based Robotics: Comparison of Bullet, Havok, MuJoCo, ODE and PhysX Tom Erez, Yuval Tassa and Emanuel Todorov. Abstract— There is growing need for software tools that can many of these engines are aimed at graphics and animation, accurately simulate the complex dynamics of modern robots. where it is often sufficient to achieve visually-plausible While a number of candidates exist, the field is fragmented. simulation, reducing the motivation to pursue the more It is difficult to select the best tool for a given project, or to predict how much effort will be needed and what the elusive goal of physically-accurate simulation. Simulating ultimate simulation performance will be. Here we introduce contact dynamics with a velocity-stepping method is in itself new quantitative measures of simulation performance, focusing problematic because it calls for solving NP-hard problems at on the numerical challenges that are typical for robotics as each simulation step. Consequently much recent effort in this opposed to multi-body dynamics and gaming. We then present area has focused on developing convex approximations that extensive simulation results, obtained within a new software framework for instantiating the same model in multiple engines yield similar contact behavior while being more tractable and running side-by-side comparisons. Overall we find that computationally [8], [9], [10], [11], further complicating the each engine performs best on the type of system it was designed question of physical accuracy. and optimized for: MuJoCo wins the robotics-related tests, The notion of a physics engine in multi-body dynamics while the gaming engines win the gaming-related tests without and gaming dates back to MathEngine, and indeed many of a clear leader among them.
    [Show full text]