Simplified and Abstracted Geometry for Forward Dynamics

From GICL Wiki
Revision as of 18:04, 10 October 2006 by D Wilkie (Talk | contribs)

Jump to: navigation, search





  • simplifications and abstractions for geometric data are needed for simulations
  1. CAD data too complex
  2. robotic/mechatronic assemblies more complex than necessary
  3. only "vital few" components needed
  • such simulation are useful, and will be more useful in the future
  1. consistent conditions for experiments
  2. less time consuming and costly
  3. greater test-space accessible
  • they have been investigated in the computer graphics field
  • forward dynamics and CAD data pose specific challenges distinct from those of graphics
  • simplification and abstraction in this context thus needs specific attention: metrics, methods, empirical studies, model requirements definition
  • our bio-inspired robot is an ideal platform on which to investigate these issues.

The need for simulation and abstraction of robot and mechanism geometry arises out of the large size of CAD data and the computational cost of simulations involving them. Typical tessellations for CAD data viewing, inside CAD programs, results in a very high number of triangles, more than can be effectively simulated with current hardware. Even with hardware advances, it will always be advantageous in some situations to cull away data that is ultimately irrelevent to answering a posed technical problem. The motivation for simplification and abstraction then exists, but just how to simplify or abstract is a question that to our knowledge has not been addressed in the area of forward dynamics simulation incorperating geometric data.

Geometric simplification has played an important role in the computer graphics field by allowing believable viewing of scenes too complex for timely computation. However, the approaches used in computer graphics for geometric simplification have as their goal the realistic portrayal of a scene to a viewer, not the similarity between the simplified or abstracted system and the physical ground truth. In physical simulations, the model does not need to look like the original. If a robot's legs can be abstracted as a pair of oval wheels that hit contact points appropriately, this might be acceptable for a physical simulation. However, it would be completely inappropriate for a graphical system. This offers a freedom of abstraction and simplification that does not exist in the graphics world. However, other constraints apply: in rigid-body dynamics simulations of robots and complex mechanisms, geometry plays a key role in determining where the contact points, and thus collision joints, occur; different simplification methods will lead to different simulated results. The choice of simplification method can be the determining factor of whether a simulation is accurate enough.


Snake-like robots [1] offer several advantages over conventional wheeled or legged robots. For example, robotic snakes have a low center of gravity, which makes them very stable when moving on inclines. In addition, if a snake-like robot were to fall over, it could easily recover by articulating its body in the proper way. Unlike their walking or wheeled counterparts, snake-like robots spread their weight out over a large area, thus exerting less force per unit area over the surface on which they are moving. This characteristic means that robots of this class are better suited for moving over soil or sand, compared to wheeled and legged robots that are very likely to get stuck in such environments.

We have designed a robotic snake capable of undergoing efficient rectilinear motion Currently, robotic snakes are available which can perform rectilinear motion by articulation each of their segments in a repeated sequence. A paper published in IEEE Transactions on Robotics and Automation titled “The Kinematics of Hyper-Redundant Robot Locomotion” [3] outlines various methods for accomplishing this task. In fact, this paper concentrates on creating rectilinear locomotion through body movements alone. Chirikjian classifies snake-like robots as either inextensible or extensible. The former are capable of only bending their segments with respect to each other while the latter can actually expand and contract like an accordion. He outlines several locomotion algorithms for robots of these types, but does not address the construction of such robots. We observe that robots of this family tend to be slow and require extensive operator input. In addition, the precise interaction between segments, which is required for efficient locomotion, can be difficult to achieve. “Limbless locomotion: Learning to crawl with a snake robot,” [1] goes to great detail in discussing the possible construction of inextensible snake-like robots, but does not settle on a particular design.

Our approach, developed through the study of these papers, as well as several prototypes that were built earlier in Philadelphia-area laboratories, proposes a completely new robotic snake design. This design does not fall into any of the previous classes, as our robot would propel itself using many small “feet”, with locomotion similar to that of a millipede. Obviously, a robot of this design will be efficient at performing rectilinear motion. Since this robot will actually walk, rather than drag itself, it should be capable of navigating rough terrains easily and efficiently. For this reason, it is expected that our design would be more maneuverable that existing prototypes.

Example Problem


Empirical Results



Model Simplification(PDF)

Adaptive Dynamics(PDF)

Milling Machine Simplification(PDF)

Geometric Model Simplification for CAD(PDF)

Relevant Master's Thesis