Structure-Based Computational Modeling Architecture For .

2y ago
47 Views
2 Downloads
336.96 KB
8 Pages
Last View : 30d ago
Last Download : 3m ago
Upload by : Kaydence Vann
Transcription

Structure-Based Computational Modeling Architecture for RoboticsAbhinandan Jain1Abstract— We describe a computational architecture formeeting a diverse range of robot modeling needs encompassinganalysis, simulation and embedded modeling for robotic systems. The architecture builds upon the spatial operator algebratheoretical framework for computational dynamics. It allowsapplications to meet the broad range of computational modelingneeds coherently and with fast, structure-based computationalalgorithms. The paper describes the SOA computational architecture, the DARTS computational dynamics software, andapplication modeling layers.I. INTRODUCTIONComputational models pervade all aspects of robotics,from the design and analysis of systems, to use withinonboard planning and control architectures for system development and test, and during their operation. RecentDARPA programs such as Autonomous Robotics Manipulation (ARM) and the DARPA Robotics Challenge (DRC)are focused on increasing autonomous robot operation inunstructured environments. Autonomous manipulation andmobility requires increased sophistication and robustness,and this in turn increases modeling needs for manipulationand control, grasp design and analysis, task planning, leggedlocomotion, online calibration etc [1].Such robotics demands have stimulated the developmentof physics-based simulators to support development andtesting [2–5]. However significant challenges remain and theDRC program is investing in the development of simulatorsfor use by the robotics community. Challenges in computational modeling include the large variety of modelingrequirements, the complexity of the numerical algorithms,designing models that adequately capture the physics, obtaining correct parameters for seeding the models, and obtainingfast computational performance.The challenges are even greater for models used withinautonomy software. Such embedded models support task andmotion planning, state estimation in the presence of noise anduncertainty and real-time closed-loop control. Computationalspeed requirements are significantly higher and the types ofinformation needed span a much broader range. Thus whilea simulator is required to do one function well, i.e., simulatethe system state time history, embedded models have toperform several functions well.Due to their inherent complexity, embedded computationalmodels are often platform specifid, over-simplified or pointsolutions to meet a narrow a range of functions or tailoredto the needs of specific autonomy modules. Low-fidelity and1 A. Jain is with the Jet Propulsion Laboratory, California Instituteof Technology, 4800 Oak Grove Drive, Pasadena, CA 91109, USAAbhi.Jain@jpl.nasa.govfragmented models degrade the overall system performance.Fragmentation requires extra measures to ensure the consistency of modeling assumptions and expectations as well asto keep changing model parameters and data in sync acrossthe system modules. In addition, there is the added cost ofimplementing, testing and validating these special purposemodels.In this paper we describe a computational modeling architecture for robotic systems that has been designed to overcome these challenges for robotics analysis, simulations andembedded modeling. Our approach is to develop a highly capable modeling layer to serve as a foundation for the diverseand demanding needs of application layers. The architectureis illustrated in Figure 1. Its lowest layer is the mbedded modelsDARTS computationaldynamicsSOA theoreticalframeworkFig. 1. Overall robotics computational mechanics architecture built uponthe SOA theory, the DARTS software library for analysis, simulation andembedded modeling applications.operator algebra (SOA) theoretical framework for computational mechanics [6]. SOA provides mathematical tools forexpressing, analyzing and computing a very broad range ofrobot mechanics quantities. It’s expressiveness allows it tocoherently meet the large variety of mechanics modelingneeds for robot models. It uses spatial operators for theconcise mathematical description and analysis of dynamicsquantities, as well as the generation of fast, structure-basedcomputational algorithms. Section II provides an overviewof the SOA framework, and Section II-A describes theSOA processes for developing low-order, structure-basedcomputational algorithms.The next layer of the architecture is the DARTS computational dynamics C library whose design is based upon theSOA framework. DARTS provides methods for the computation of a broad range of robot modeling quantities and isdescribed in Section III. The DARTS library also includes anumber of dynamics solvers needed for time simulation ofrobot dynamics. These solvers utilize the underlying DARTSmethods and differ in the type of dynamics they handle, as

well as the algorithms they use. These solvers are describedin Section III-A.The robot modeling applications build upon the SOAand DARTS layers. In Section IV we discuss models forsupporting robotics analysis. In particular we detail thePyCraft toolkit for the development, testing and maturationof advanced computational dynamics techniques. Section Vturns to the important area of dynamics simulation. DARTSand its solvers form the heart of the Dshell simulation framework for the development of system level physics-basedsimulations. Dshell provides ways to organize and managethe large number of component models in these simulationsand to reuse these component and sub-system models acrosssimulations. Dshell has been adapted to develop rover andflight dynamics system simulations. Finally, in Section VIwe describe the RoboDarts embedded modeling layer thatis built upon DARTS. RoboDarts is designed for use byautonomy software to meet the diverse modeling needs forplanning, estimation and real-time control. Specific attentionis paid to performance speed, time variability of the tasksand environment and the robot platform’s interactions withthem.II. SOA THEORETICAL FRAMEWORKThe spatial operator algebra (SOA) theory and mathematical framework for multibody dynamics [6] has beendeveloped over two decades of research. SOA provides amathematical language for succinctly characterizing and analyzing complex dynamics quantities for articulated roboticssystems. It also provides a natural avenue for developing fast,structure-based computational dynamics algorithms. Thesefeatures make possible its use as a powerful architecture forthe computational mechanics of robotic systems.SOA makes use of minimal coordinate system representations. Thus inter-link hinge motion is parameterized by minimal set of coordinates instead of with redundant coordinatessubject to constraints. This reduces the size of the equationsof motion and avoids the need to manage constraint violationerrors required with redundant coordinates. A side-effect ofusing minimal coordinates is that the mass matrix, and othersystem matrices, are dense and configuration dependent andthus, more complex. However, these quantities have richstructure that the SOA provides the mathematics tools tohandle.The mapping between joint and link velocities serves as asimple example to introduce the notion of spatial operators.The 6-dimensional spatial velocity V(k) of the kth link depends on that of its parent link’s spatial velocity V(k 1) viathe relationship V(k) φ (k 1, k)V(k 1) H (k) θ̇ (k),where φ (k 1, k) denotes the rigid body propagation matrixfor the pair of links, H (k) characterizes the permissiblehinge motion across the connecting hinge and θ(k) the kthhinge coordinates. This component level relationship canbe converted into a system level relationship of the formV φ H θ̇ , where V and θ̇ are system level vectorsobtained by stacking up the vector contributions from eachlink. φ and H are block matrices whose elements are definedby the component φ (k 1, k) and H (k) link-level matrices.φ and H are examples of spatial operators.The concise V φ H θ̇ relationship reflects the richstructure of the φ operator. Indeed, for tree/serial topologysystems, φ (I Eφ ) 1 , where Eφ is another spatialoperator whose structure is closely related to the adjacencymatrix for the graph associated with the connection topologyof the linkages [7]. Eφ is always nilpotent for serial/treetopology systems.The mathematical structure of the spatial operators makepossible several transformations and simplifications of dynamics quantities. A seminal example of this is the systemmass matrix, M(θ). It has been shown to have the factoredform M(θ) HφMφ H , where M is a block-diagonalspatial operator with link spatial inertias. While this factorization involves non-square factors, the following sequenceof analytical spatial operator expressions with alternativefactorizations involving square factors. and an expression forits inverse, can be derived [8]:M HφMφ H [I HφK]D[I HφK] [I HφK] 1 I HψK(1)M 1 [I HψK] D 1 [I HψK]These expressions involve the additional ψ, D, and K spatialoperators described in [6]. The analytical expressions in Eq. 1are remarkable in that they hold generally for arbitrary sizeserial/tree topology systems. They are direct consequences ofthe intrinsic mathematical structure of the spatial operators.Indeed, the Eφ and φ operators are special instances of abroader family of spatial kernel operator (SKO) and spatialpropagation operator (SPO) operators [6]. The ψ operatoris also an instance of an SPO operator.It has been shown using graph theory ideas that spatialoperator expressions, such as in Eq. 1, generalize to thecase where the component bodies and hinges are flexible[6]. Remarkably, they hold even when the system graphis transformed into simpler graphs by aggregating groupsof bodies into new variable geometry compound bodies.This observation forms the basis of constraint embeddingtechniques that transform non-tree topology graphs into treegraphs, and thus extend the applicability of Eq. 1 to evennon-tree topology systems [6].Spatial operator analysis applies to a number of robotdynamics problems such as joint space dynamics, operationalspace dynamics, under-actuated systems, sensitivity analysis,diagonalized dynamics etc. The SOA provides a unified wayto tie together results and analysis obtained from disparateapproaches, and to understand the relationships among them.Also, the SOA has been used for several novel analyses andresults not possible by other means [6]. The rich structureof spatial operators arises, perhaps not coincidentally, fromthe close mathematical parallels with concepts and analysistechniques developed in the optimal estimation arena.

A. Structure Based Computational AlgorithmsWe now examine the intimate connections between spatialoperator expressions and low-order computational algorithmsthat is one of the hallmarks of the SOA-based computationalarchitecture. As a case in point, we observed earlier theequivalency between the link-level velocity recursive relationships (and the implied computational procedure) and theV φ H θ̇ spatial operator expression. The connectionbetween spatial operator expressions and recursive computational procedures is in fact much broader and deeper. Thus,while a spatial operator expression of the form φ x maysuggest the need for a matrix/vector product for evaluation(quadratic order cost), it turns out that such a productcan always be evaluated via a linear-order recursive scatteralgorithm that starts at the base of the tree and traversesthe links towards the tip bodies as shown on the right ofFigure 2. The recursive algorithm for computing the linkvelocities is a special case of such a scatter algorithm.Similarly, dual spatial operator expressions such as φx do noty φxTips-to-basegatherrecursionkn y(n)1 y(1)y φ xBase-to-tipsscatterrecursion1 y(1)kn y(n)Fig. 2. Tips-to-base gather and base-to-tips scatter recursions to evaluateφx and φ x, respectively for tree-topology systems.require expensive matrix/vector products either, but insteadcan always be evaluated using a linear-order, recursive gatheralgorithm that starts at the tips and traverses the links towardsthe base body while accumulating results from convergingbranches. An example application of a gather computation isthe computation of compensating torques for an end-effectorforce. The value of this torque is J fe , where J is the endeffector Jacobian and fe the end-effector spatial force. Thespatial operator expression for the Jacobian is J B φ H ,and thus the torque J f HφBfe which can be directlycomputed using a recursive gather sequence.The recursive path of the gather and scatter algorithmsare isomorphic to the topological structure of the system, andhence we refer to them as structure-based algorithms. As thesystem topology changes, the gather and scatter recursionpaths change accordingly so that the computations remaincorrect. Such structure-based algorithms always exist forspatial operator expression involving SKO and SPO spatialoperators such as Eφ , φ, ψ etc.Inverse dynamics computations require evaluation of theM(θ) θ̈ product. While direct evaluation is expensive andrequires the explicit evaluation of the M mass matrix, we caninstead use the spatial operator expression M in Eq. 1 to notethat this product has the form HφMφ H θ̈ . This expressioncan be evaluated using a scatter recursion for Mφ H θ̈ followed by a gather recursion on the result to compute thefull product. This procedure is of linear cost and does notrequire the explicit evaluation of M. It is essentially the wellknown Newton-Euler inverse dynamics algorithm [9].Forward dynamics computations require the evaluation ofM 1 (θ)T. Once again, the cost of this evaluation can bereduced to linear-order by using the spatial operator expression for M 1 from Eq. 1 so that we need to evaluate [I HψK] D 1 [I HψK]T. From simple examination we seethat this can be evaluated using a gather recursion followedby a scatter recursion without ever explicitly requiring M orM 1 . This procedure is in fact the well known linear costarticulated body (AB) forward dynamics algorithm [8, 10].The above examples illustrate the ability to convert spatialoperator expressions for dynamics quantities into low-order,structure-based computational algorithms from simple examination of the expression structure. Other more advancedexamples of such mapping also extend to (Lyapunov) spatialoperator expressions involving matrix/matrix products suchas φXφ and the dual φ Xφ spatial operator expressions.The former appears within the mass matrix spatial operatorexpression in Eq. 1. Expressions such as these can alsobe computed using low-order scatter and gather algorithmsbased on a operator decomposition of such products into ablock diagonal matrix, and off diagonal terms that can becomputed from the block diagonal part. We refer the readerto [6] for additional details. The well-known composite-rigidbody algorithm for the mass matrix [11] and the articulatedbody inertia algorithm [8, 10] are both examples for thefirst Lyapunov quadratic form. The latter quadratic formappears in the operational space inertia spatial operatorexpression B ψ H D 1 HψB, and forms the basis for thefastest available computational algorithm for its evaluation[6]. For additional examples of such spatial operator tostructure-based algorithms we refer the reader to reference[6]. The key take away messages are that not only is itpossible to obtain fast computational methods from analyticalspatial operator expressions, but that a large and diversefamily of such fast algorithms emerge naturally from theSOA approach.III. DARTS COMPUTATIONAL DYNAMICSAs described above, the SOA framework provides us witha mathematical vocabulary and tools that cover a broadspectrum of dynamics analysis needs and fast algorithmsfor computing them. We have used the SOA architecture todevelop the Dynamics Algorithms for Real-Time Simulation(DARTS) computational dynamics C software. Earlier generations of DARTS implemented the SOA rigid and flexiblebody forward dynamics algorithms for spacecraft simulation.More recent versions of DARTS more completely exploit thericher structure-based SOA computational architecture. ThusDARTS is not designed for a specific function, eg. dynamicssimulation, but rather encompasses the broad family ofSOA based methods that can be combined to meet differentmodeling needs.

Since relative pose, velocity and acceleration computationspermeate dynamics computations, DARTS includes a genericlayer for frame to frame queries. The frames layer providesmethods to obtain relative data for any pair of frames definedin the system. Lazy evaluation and data caching is used foron demand computation and to avoid recomputing unchangedvalues. This abstraction layer considerably simplifies linklevel computations. The frames can be specialized to becomelinks, viewing cameras, or other moving elements such asplanetary bodies.DARTS provides classes for bodies and hinges that connect them. The bodies are organized as a directional graph(digraph) consisting of a spanning tree, and additional bilateral constraints that may be present. Bilateral constraintsare themselves defined by hinges that characterize the permissible motion across the constraints. A variety of hingetypes with 0 to 6 degrees of freedom are available to choosefrom. These classes help to define the physical model of thesystem.Computational algorithms operate on user defined subgraphs of the physical graph. Thus an inverse dynamicscomputation can be limited to a part of the system bydefining a subgraph for the subsystem. The SOA scatter/gather structure-based algorithms traverse just the linksin the subgraph. When the subgraph happens to be thefull system, the inverse dynamics for the full system iscomputed. The ability to work with subgraphs is very usefulfor systems such as mobile and multi-arm platforms, whereintermediate information for sub-systems is often needed forplanning and control. The lazy evaluation and data cachingapproaches for frames are used for dynamics computationsas well. Thus velocity changes do not require recomputationof configuration dependent quantities.DARTS includes implementations of all the SOA scatter/gather algorithms described in Section II such as for inverse dynamics, articulated body forward dynamics, composite body inertias, composite momentum, operational spaceinertias etc. The forward dynamics algorithm actually isa mixed dynamics variation of the standard AB forwardalgorithm, in that it allows the accelerations for arbitrarycoordinates to be prescribed, i.e., specified as inputs, andthe algorithm solves for the required hinge torques. Themixed dynamics is handled by a simple modification of thestandard AB gather/scatter sweeps. DARTS also has methodsto iteratively solve for coordinates consistent with constraintson the system that can be used for inverse kinematicscomputations.DARTS also supports treating a subgraph of bodies as avariable geometry compound body. Such an aggregation stepcan be used to eliminate loops from the graph topology ofthe system as needed for constraint embedding dynamics.All of the SOA algorithms are applicable to the transformedsubgraph.DARTS allows the run-time addition and deletion ofbodies as well as their reattachment. Being structure-based,the SOA algorithms continue to work as is after such changesto the system topology. Geometrical shapes can be attachedto the bodies. The geometry information can be used bycollision detection and 3D visualization modules as needed.Interfaces exist for the automatic synchronization of theDARTS state with such support modules.A. DYNAMICS SOLVERSPhysics-based simulations are important application problems for dynamics modeling. Simulations use solvers tocompute time trajectories of the system state by solving andpropagating the equations of motion which have th

theoretical framework for computational dynamics. It allows applications to meet the broad range of computational modeling needs coherently and with fast, structure-based computational algorithms. The paper describes the SOA computational ar-chitecture, the DARTS computational dynamics software, and appl

Related Documents:

Computational Fluid Dynamic Modeling of Electrostatic Precipitators 05 March 2003 baffles, and perforated plates. Until about 1985 the engineering tool of choice to analyze ESP flow characteristics was a physical scale model. Since that time, the application of computational fluid dynamics (CFD) modeling to ESPs has proven successful. Both modeling

Today, advanced computational modeling supplements experimental inves-tigation. Accuracy of computational models relies significantly on the characterization of selec-ted inputs. No consensus exists on distributions or magnitudes to be used for modeling geo-metric imperfections and for modeling

What is Computer Architecture? “Computer Architecture is the science and art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals.” - WWW Computer Architecture Page An analogy to architecture of File Size: 1MBPage Count: 12Explore further(PDF) Lecture Notes on Computer Architecturewww.researchgate.netComputer Architecture - an overview ScienceDirect Topicswww.sciencedirect.comWhat is Computer Architecture? - Definition from Techopediawww.techopedia.com1. An Introduction to Computer Architecture - Designing .www.oreilly.comWhat is Computer Architecture? - University of Washingtoncourses.cs.washington.eduRecommended to you b

14 D Unit 5.1 Geometric Relationships - Forms and Shapes 15 C Unit 6.4 Modeling - Mathematical 16 B Unit 6.5 Modeling - Computer 17 A Unit 6.1 Modeling - Conceptual 18 D Unit 6.5 Modeling - Computer 19 C Unit 6.5 Modeling - Computer 20 B Unit 6.1 Modeling - Conceptual 21 D Unit 6.3 Modeling - Physical 22 A Unit 6.5 Modeling - Computer

Oracle Policy Modeling User's Guide (Brazilian Portuguese) Oracle Policy Modeling User's Guide (French) Oracle Policy Modeling User's Guide (Italian) Oracle Policy Modeling User's Guide (Simplified Chinese) Oracle Policy Modeling User's Guide (Spanish) Structure Path Purpose Program Files\Oracle\Policy Modeling This is the default install folder.

Computational Thinking 1. Algorithm 2. Data structure 3. Computational Analysis 4. Computational Modeling "Computer science is no more about computers than astronomy is about telescopes." Edsger Dijkstra Computer Science Science of Computation Solving problems, designing & building systems

computational science basics 5 TABLE 1.2 Topics for Two Quarters (20 Weeks) of a computational Physics Course.* Computational Physics I Computational Physics II Week Topics Chapter Week Topics Chapter 1 Nonlinear ODEs 9I, II 1 Ising model, Metropolis 15I algorithm 2 Chaotic

Botany for degree students. Bryophytes 8th ed. S. Chand and Co. Ltd. Delhi. Schofield, W.B. 1985. Introduction to Bryology. Macmillan Publishing Co. London. Hussain, F. and I. Ilahi. 2004. A text book of Botany. Department of Botany, University of Peshawar. Journals / Periodicals: Pakistan Journal of Botany, International Journal of Phycology and Phycochemsitry, Bryology, Phycology. Title of .