A Hybrid Dynamic Systems Approach to Optimal ... - Semantic Scholar

1 downloads 0 Views 559KB Size Report
Example of the continuous state of a mobile robot: xR = (x, y, v, θ)T. Hybrid Dynamic System Modeling and Optimization of Multiple Robot Coopera- tion. A hybrid ...
Preprint submitted to: RoboCup International Symposium, July 18-19, 2005, Osaka, Japan.

A Hybrid Dynamic Systems Approach to Optimal Dynamic Role Assignment and Physics-Based Robot Trajectory Planning in RoboCup Markus Glocker and Oskar von Stryk Technische Universit¨ at Darmstadt, Department of Computer Science Hochschulstr. 10, D-64289 Darmstadt, Germany {glocker,stryk}@sim.tu-darmstadt.de WWW home page: http://www.sim.informatik.tu-darmstadt.de Abstract. Based on a nonlinear hybrid dynamic systems approach a new paradigm for goal-oriented dynamic cooperation of multiple robots is investigated within the RoboCup scenario. The time dependent hybrid state of the whole system consists of discrete (roles, actions) and continuous (position, orientation, velocity) state variables of all mobile robots and objects involved. The evolution in time of the system’s state is described by a hybrid state automaton. The presented approach enables a tight and formal coupling of discrete and continuous state dynamics, i.e., of dynamic role and action assignment and sequencing as well as of the physical motion behavior of a single robot. The problem of optimal hybrid state trajectories that minimize a merit function for optimal multi-robot cooperation subject to further constraints is transformed to a mixed-integer dynamic optimization problem which is solved numerically. The new approach enables the integration of physics-based trajectory planning and dynamic role assignment in architectures and design methodologies for multi-robot control. The approach presented in this paper can also be applied to any other scenario of mobile multi-robot cooperation where the physical motion properties are of high significance.

1

Introduction

Efficient, flexible and robust coordination of a multi-robot team to successfully complete a tightly coupled task in a dynamic environment may be achieved through dynamically assuming and exchanging roles in a synchronized manner based on information about the states and actions of the teammates. In this paper, we suggest a hybrid dynamic systems framework to model cooperative tasks and dynamic role assignment between multiple robots taking into account their individual physical properties. Optimal performance of the team can be modeled by a hybrid dynamic optimization problem which can be solved numerically. Dynamic Coordination and Role Assignment of Multiple Mobile Robots. The many different approaches to multi-robot coordination range from completely

behavior based methods [14] to three layer architectures [16]. The role assignment or task allocation problem has been addressed, e.g., by the behavior-based architecture Alliance [15], the publish/subscribe architecture Murdoch [9] or a market based approach [5]. In RoboCup dynamic task allocation and role assignment is a basic problem in all leagues where, however, often specialized solutions have been developed, which often cannot be applied easily to other cooperative tasks of mobile robots (cf. [17] and RoboCup Symposia 2000 – 2004). Recently an effort towards an abstract, top-down formulation of qualitative and league independent strategies in RoboCup has been started [6]. v θ y

(x,y) x

Fig. 1. Example of the continuous state of a mobile robot: xR = (x, y, v, θ)T

Hybrid Dynamic System Modeling and Optimization of Multiple Robot Cooperation. A hybrid systems framework of role assignment in cooperative multi-robot systems has recently been presented [4]. For describing role behavior as well as role and action changes during cooperative task performance a hybrid state automation is suggested, which consists of a discrete state (role or action) and a continuous state, which is characterized by equations of motions and algebraic constraints. The method is investigated for cooperative transport and search tasks. The question of cost functions for optimal role assignment on basis of the hybrid state automation has not yet been addressed. For applications in the RoboCup Small Size League and in another adversial game called RoboFlag, a method to model complex multi-robot problems has been developed [13, 8]. Hereby the robots are assumed to have an omnidirectional drive and the behavior of the opponent team is assumed to be known and is described by a discrete state machine. In respect to a simplified (linear) dynamic model, the multi robot problems are formulated as mixed logic (linear) dynamic systems [1]. Using a special discretization this system is approximated by a time mixed logic linear time discrete dynamic system [13] and solved using mixed integer linear programming methods [7]. In a related approach the alignment of tasks to be completed to the robots solved using Branch and Bound techniques [8]. Benefits of the Proposed Approach. Based on nonlinear hybrid dynamic systems a modeling formalism is developed which enables a tight an formal coupling of discrete and continuous system dynamics, i.e., of dynamic role and action assignment and sequencing and the pysical locomotion behavior of a cooperating team of mobile robots, and their goal-oriented optimization. Previous approaches for computation of optimal role assignment and robot trajectories in cooperative 2

multi-robot systems need to rely on linear motion dynamic models [8] whereas the approach presented in this paper enables to consider nonlinear, physicsbased motion dynamics. Compared to previously used models of multi-robot cooperation with general, hybrid dynamic state automata [4] we consider the not yet discussed problem of optimization for these general models.

2

Hybrid Dynamic System Model and Optimization of Multiple Robot Cooperation

For the RoboCup scenario, a model of the time dependent hybrid state of the total system consisting of discrete (actions, roles) and continuous (position, orientation, velocity) states of all robots, the ball and mobile obstacles is presented. Role or action assignment are described by a hybrid state automaton. 2.1

Continuous State and Dynamics of Robot and Ball

Continuous State. The state variable xR describes the actual position, orientation and velocity of a robot R or, analogously, of the ball B. Commonly used quantities are (cf. Fig. 1) T

xR = (xR , yR , vR , θR )

T

or (xR , yR , x˙ R , y˙ R ) .

(1)

Motion Dynamics. The physical behavior of a mobile, wheeled or legged robot may in general be described by a system of nonlinear, first order ordinary differential equations ¡ ¢ x˙ R (t) = f R xR (t), uR (t), t .

(2)

The right hand side f R depends on the specific vehicle kinematics. But in this general form, also robot kinetics up to the dynamics of the drive train can be considered at any desired level of detail [11, 12]. The control variable uR represents the control of the kinematic or kinetic robot model used, e. g.,     x˙ R vR cos θR µ ¶  y˙ R   vR sin θR  wR     x˙ R =  =  = f R (xR , uR , t) where uR = ωR . v˙ R   wR ωR θ˙R In this basic example, wR corresponds to the acceleration or braking force and ωR to the angular acceleration or moment. For given initial value xR (0) and control history uR (t), 0 ≤ t ≤ tf , the robot trajectory xR (t), 0 ≤ t ≤ tf , can under mild assumptions uniquely be determined from the equations of motion (2). The trajectory of a rolling or sliding ball may in general also be described by an equation of motion like (2). The orientation of the ball is usually constant 3

and the velocity decreases linearly     x˙ B vB cos θB  y˙ B   vB sin θB     x˙ B =   v˙ B  =  −wB  = f B (xB , t), where wB = const. > 0 .(3) 0 θ˙B The trajectory of the free rolling or sliding ball can be computed explicitly for a given initial value xB (0). Constraints. The control variables of each robot are constrained and also the feasible values of the state variables uR,min ≤ uR (t) ≤ uR,max , xR,min ≤ xR (t) ≤ xR,max ,

(4) (5)

where the constants uR,min,j , xR,min,k ∈ IR ∪ {−∞} and uR,max,j , xR,max,k ∈ IR ∪ {+∞} usually depend on the specific type of robot R. To avoid collissions with stationary or moving obstacles or to obey rules (field area, penalty area etc.) general state variable inequality constraints must be considered 0 ≤ g R (xR (t), t). 2.2

(6)

Hybrid Dynamic System Model and Trajectory Optimization of a Single Robot

Discrete State. According to [6] the basic actions of an individual soccer playing robot are distinguished, for example, qR ∈ QR = {goto ball, dribble ball, kick ball to goal} and a role can be composed of several actions. The motion capabilities of a robot as modeled in (2) as well as the constraints (4) – (6) may in general be different for different types of action (e. g. locomotion without ball versus dribbling with ball). Thus, the dynamic model of a robot’s locomotion must be extended to a general, action dependent model x˙ R = f R,qR (xR , uR , t) uR,qR ,min ≤ uR (t) ≤ uR,qR ,max xR,qR ,min ≤ xR (t) ≤ xR,qR ,max 0 ≤ g R,qR (xR (t), t) .

(7) (8) (9) (10)

Also for the ball discrete states with different types of motion must be distinguished, e. g. qB ∈ QB = {free, contact, reflect}. If qB = free then the motion of the ball is described by Eq. (3), if qB = contact its is determined, e.g., by a dribbling robot and if qB = reflect the ball is reflected from an object. 4

Hybrid System State. The total system consists of one robot and ball so far. The system’s (time dependent) hybrid state can now be described by a discrete and a continuous state µ ¶ µ ¶ qR xR ∈ Q ⊂ QR × QB , x = , (11) q= qB xB where Q only consists of feasible combinations of the discrete states of the robot qR and the ball qB . The trajectory x(t) can be determined by a numerical solution of the equations of motion (7) for a given discrete state, a given initial value of the continuous state and the control history.

req/iq

qR dribble = qB contact

req/iq

.

xR = fR,q (xR , uR ) R

qR goto ball = qB free . xR = fR,q (xR , uR )

req/iq

kick ball qR = contact qB .

xR = fR,q (xR , uR )

R

R

req/iq

Fig. 2. Example of a hybrid state automaton modeling robot behavior as a sequence of actions with time dependent discrete and continuous state variables.

Time Dependent Behavior. The behavior of the total system can now be modeled as a sequence of actions in combination with the corresponding continuous state trajectory. The overall systems stays in its current discrete state q(t), as long as its invariants are satisfied. As soon as these are violated the system switches to another discrete state. The change from one discrete state to another requires that switching functions r, which depend on the continuous state and are given in equality or inequality form, must be satisfied at the switching time ts r eq,q (ts −0),q (ts +0) (x(ts − 0), x(ts + 0)) = 0 , r iq,q (ts −0),q (ts +0) (x(ts − 0), x(ts + 0)) ≥ 0 . Here the notation q(ts ± 0) := limδ>0,δ→0 q(ts ± δ) is used. For example, the transition from the discrete state qR = goto ball to qR = dribble ball requires, that the (x, y)-coordinates of the robot and the ball must be equal or within a certain distance. Also the orientations θR and θB must allow the robot to bring the ball under control, which may not be possible if the ball reaches the robot in its back. Optimal Robot Trajectories (Dynamic Optimization Problem (DO1)). If a feasible sequence of ns discrete system states q i := q(t) ,

ts,i−1 ≤ t ≤ ts,i ,

i = 1, . . . , ns ,

(12)

where ts,0 := 0 and ts,ns := tf , and the initial state x(0) are given, then the optimal robot trajectory x∗R (t), 0 ≤ t ≤ tf , and the optimal switching times t∗s,i , 5

i = 1, . . . , ns , can be determined as the solution of the dynamic optimization problem (optimal control problem) (DO1) which is defined by Eqs. (13) – (20). min J[uR ] uR subject to

µ ˙ x(t)

=

f q i (x(t), u(t), t) = ts,i−1 < t < ts,i ,

f R,qR,i (xR (t), uR (t), t)) f B,qB,i (xB (t), t)

(13) ¶ (14)

i = 1, . . . , ns

x(0) 0

= =

x0 = const., r eq,q i−1 ,q i (x(ts,i − 0), x(ts,i + 0)) ,

0



r iq,q i−1 ,q i (x(ts,i − 0), x(ts,i + 0)) , i = 1, . . . , ns − 1 , (17)

0

=

r eq,q ns (x(tf )) ,

0 ≤ r iq,q ns (x(tf )) ,

(15) (16) (18)

uR,qR,i ,min ≤ uR (t) ≤ uR,qR,i ,max , xR,qR,i ,min ≤ xR (t) ≤ xR,qR,i ,max ,(19) 0 ≤ g R,qR,i (xR (t), t) , ts,i−1 < t < ts,i , i = 1, . . . , ns . (20) The cost function (13) can be of general form J[uR ] = ϕns (x(tf ), tf ) + +

ns Z X i=1

nX s −1

ϕi (x(ts,i − 0), x(ts,i + 0))

i=1 ts,i

Li (x(t), u(t), t) d t

(21)

ts,i−1

with real-valued functions ϕi , Li . It should be noted that the continuous state of the robot or the ball at the end of the execution of an action does not need to be restricted or to be given explicitly as a specific address or region as in [6] but can be defined implicitly through the solution of the (hybrid) dynamic optimization problem. Dynamic Action Assignment and Trajectory Planning (HDO1). The optimal sequence of actions of the robot, i.e., the discrete state values q i , i = 1, 2, . . . , ns , can be determined by extending the previously described optimization problem (DO1) for optimal robot trajectories and switching times to a hybrid, discretecontinuous dynamic optimization problem (HDO1) [2, 3, 18]: Assuming a maximum number of possible actions ns,max of the robot until reaching its final state, the resulting hybrid dynamic optimization problem reads as min J[uR ] uR ,q 1 ,...,q ns ,max

(22)

subject to Eqs. (14) – (20) and subject to the feasibility of actions (11). In general not alle feasible actions q i ∈ Q can follow or proceed each other. Thus, additional constraints must be considered, e.g., as logical constraints © ¡ ¢ª true l q 1 , . . . , q ns . (23) 6

2.3

Opponent Models

There exist several alternatives for modeling the motion behavior of the opponents. A continuous state xG is defined analogously to xR , for example, T xG = (xG , yG , vG , θG ) . Stationary and Moving Obstacles. If the position of an opponent (xG , yG ) is known and constant, it can be considered as a stationary obstacle in the formulation of the state constraints (20). If the opponents motion is known as xG (t), 0 ≤ t ≤ tf , it can be considered as a moving obstacle in the formulation of the constraints (20) as g R,qR,i (xR (t), xG (t), t) ≥ 0 (e. g., Sect. 4.1 and Fig. 4). Reactive Behavior. If the opponent’s motion behavior can be assumed to be known and reactive with respect to the continuous states of the ball xB and/or of the striker xR then the trajectory of the defending opponent xG (t), 0 ≤ t ≤ tf , can be obtained, e.g., by the solution of a corresponding dynamic model x˙ G (t) = f G (xG (t), uG (t), t) for uG (t) = uG (xB (t), xR (t), xG (t)) starting from a given initial state xG (0) and depending on the trajectories of the striker and the ball (see Sect. 4.2 and Fig. 5 for an example). For a given sequence of actions or a given strategy of the opponent to select his actions this reactive model can be extended analogously by a discrete state q G and corresponding dynamic model x˙ G = f G,qG . Altogether a model of the opponent’s behavior results in implicit or explicit form xG (t) = F G (xR (t), xB (t)), which can be considered again in the formulation of the state variable inequality constraints (20). 2.4

Hybrid Dynamic System Model and Optimization of Multiple, Cooperating Robots (HDOnR )

Instead of a single robot a team of nR robots is considered. The basic actions are extended by the possibility for a double pass, for example, qRi ∈ QRi = {goto ball, dribble ball, kick ball to goal, pass ball to team mate, receive ball}. The discrete and continuous state variables and controls of the total system are       q R1 x R1 u R1  ..   ..      .  q = . (24) , x = .  , u =  .. .  q Rn   x Rn  R R uRnR qB xB The equations of motion (7) of all robots of the team x˙ Ri (t) = f Ri ,qR (xRi (t), uRi (t), t) i

(25)

and of the ball are summarized to ˙ x(t) = f q i (x(t), u(t), t) 7

(26)

T

where f q i := (f R1 ,qR1 ,i , . . . , f Rn ,qRn ,i , f B,qB,i ) . The conditions at initial, R R switching and final times ts,i for the total system can be formulated analogously to Eqs. (15) – (18), the inequality constraints analogously to (19) – (20) and the cost function in general form analogously to (21). For dynamic action assignment and trajectory planning within the team of robots the optimal sequence of robot actions q ∗i , i.e. the values of the discrete state of the total system q i := q(t),

ts,i−1 + 0 ≤ t ≤ ts,i − 0,

i = 1, 2, . . . , ns ,

(27)

can be determined together with the optimal robot trajectories x∗Ri and switching times t∗s,i as the solution of the hybrid dynamic optimization problem: min J[u] u,q 1 ,...,q ns ,max

(28)

subject to the mentioned constraints and subject to the feasibility of actions, i.e. q ∈ Q ⊂ QR1 × . . . × QRnR × QB .

(29)

Here, Q denotes the set of feasible combinations of robot actions in the team. For example, the action dribble ball can only be executed by atmost one robot a one time. Furthermore, constraints of the form (23) must be considered, as in general not all feasible actions q i ∈ Q can succeed or preceed each other.

3

Numerical Mixed Integer Optimal Control

Transformation of (HDOnR ) to MIDO. If a maximum number of switching times (i.e., discrete state transitions) is assumed, then an unknown sequence of discrete state variables q i = q(t) ∈ Q, ts,i−1 < t < ts,i−1 , (Gl. (27)) can be transformed to an integer variable iq ∈ Iq ⊂ ZZni .

(30)

The constraints (23) describing the feasibility of succeeding or preceeding actions are hereby transformed to linear constraints on the integer variables iq li,min ≤ li (iq ) ≤ li,max ,

li ∈ IRniq .

(31)

Thus, the previously introduced hybrid dynamic optimization problems (HDO1) and (HDOnR ) are transformed to mixed-integer dynamic optimization problems (MIDO) and numerical methods for this class of problems can be applied. Numerical Solution of MIDO. The numerical solution approach consists of a decomposition of MIDO in coupled discrete and dynamic optimization problems at outer and inner levels (see [2, 3, 18] for details). At the inner optimization level dynamic optimization problems of type (DO1) are considered of which the nonlinear state dynamics is defined on multiple 8

1. phase x˙ = f q (.)

2. phase

i. phase x(t)

1

x˙ = f q (.) i

x(0) q

q x(tf ) t

0 = ts,0

ts,1

ts,2

ts,i−1

ts,i

ts,ns = tf

Fig. 3. Illustration of a continuous state trajectory with nonlinear state dynamics defined in ns phases. Phase transitions occur at switching times ts,i .

phases (Fig. 3). For each phase ts,i−1 ≤ t ≤ ts,i a time discretization grid is introduced. Along this time grid the continuous state variables x(t) and the control variables u(t) are approximated by piecewise polynomial functions [18]. Thus, the dynamic optimization problem is transformed in to a large, sparse nonlinear constrained optimization problem which is solved numerically by a sparse sequential quadratic programming method [10]. At the outer iteration level an investigation of the discrete solution space is performed. For this purpose, branch-and-bound methods are applied which are based on a representation of the integer als binary variables. Their performance depends on obtaining good lower and upper bounds on the cost function (21).

4

Examples

For the purpose of demonstration, simple point mass models of the dynamics of the free moving robot and of the robot dribbling the ball (cf. Eq. 7) and of the rolling ball are used without loss of generality       x˙ R vx,R vx,R  y˙ R      vy,R vy,R = ∨  x˙ R =  (32)  v˙ x,R   ux,R − Fx,R   αB ux,R − Fx,R  v˙ y,R uy,R − Fy,R αB uy,R − Fy,R     x˙ B vx,B  y˙ B   vy,B     x˙ B =  (33)  v˙ x,B  =  −Fx,B  . v˙ y,B −Fy,B Hereby F∗,F = 2v∗,R and F∗,F = 0.2v∗,B model the force resulting from drag and friction. The control u∗,R represents the force to accelerate or decelerate the robot. The coefficient αB is used as a simple model of the reduced mobility of a player while dribbling the ball. The maximum possible speed of a robot is considered as an inequality constraint of type (20) 2 0 ≤ vmax − vx2 (t) − vy2 (t)

with maximum speed vmax = 0.32 cm s

−1

9

used in the computations.

(34)

4.1

One Striker Versus One Defender

velocity of the striker

velocity of the ball

distance between ball and goalie

Fig. 4. Illustration of the solution of the one striker versus one defender example in phase space (x, y). The triangles represent the position and orientation of the optimized striker (white) and of the defending goalie (grey) which has been modeled as a moving obstacle (cf. Sect. 2.3). The ball is depicted as a circle.

As an example for problem (HDO1) we consider the computation of optimal robot trajectories and switching times for a given sequence of discrete actions goto ball - dribble ball - kick ball to goal (cf. Fig. 2). The cost function (21) consists of a weighted sum of the time needed to reach the final state and the required control effort, i.e., ϕns = ρt · tf , ϕi = 0, i = 1, . . . , ns − 1, Li = ρe · kuR (t)k22 , i = 1, . . . , ns ,(35) where ρt , ρe = const. As condition to be fulfilled at final time (18) the final position of the ball must be inside the goal (considering also the diameter of the ball). The condition for the switching time for execution of the kick is, that the resulting ball trajectory is not blocked and that the ball obeyes a minimum distance to the goalie while passing it. During the whole sequence of actions it is required that the ball obeyes a minimum distance to the opponent. 4.2

Two Strikers Versus One Defender

As an example for problem (HDOnR ) we consider the task-oriented dynamic role assignment and trajectory optimization of two strikers versus one defending goalie. For demonstration three different discrete states are considered       Mode 1 Mode 2 Mode 3  “Player one with ball”   “Player two with ball”    “Ball free”       x     ¨ ˙ ¨ ˙ ¨ 1 = f 1 (x1 , x˙ 1 , u1 )   1 = f 1,B (x1 , x1 , u1 ) ∨ x1 = f 1 (x1 , x1 , u1 ) ∨ x  x ¨ 2 = f 2,B (x2 , x˙ 2 , u2 )   x ¨ 2 = f 2 (x2 , x˙ 2 , u2 )  ¨ 2 = f 2 (x2 , x˙ 2 , u2 )   x ¨ B = f B (x2 , x˙ 2 , u2 ) x xB = x1 xB = x2 The task of the two strikers depicted by white triangles in Fig. 5 is to achieve a goal through minimizing a weighted cost function (35). It is assumed that the 10

velocity of striker 1

velocity of striker 2

velocity of the ball

Fig. 5. Solution of the two strikers versus one defender example in state phase (x, y).

defending goalie has a known reactive behavior and moves with its maximum speed towards the current position of the ball (cf. Sect. 2.3). Sequence of actions of both strikers, switching times of the phase transitions and robot trajectories are obtained as the numerical solution of a hybrid dynamic optimization problem (HDOnR ) with five phases. The computation takes a few minutes on a recent PC.

5

Conclusions and Outlook

A new paradigm has been presented for optimal, task-oriented multiple robot cooperation based on hybrid dynamic systems. The presented approach enables the innovative integration of physics-based optimal robot trajectory planning with dynamic role assignment in control architectures and integrated design methods. For application of the presented approach, dynamic models of the robots are needed which can be obtained from analytical and/or experimental investigations. At the start of the computations an estimate of the discrete and continuous (i.e. pose and velocity) of all objects is needed. This data are being collected and available in internal world models of many robot control architectures. The approach will support the efforts towards a league independent soccer theory and enable new insights through considering the strong influence of physics-based motion dynamics and properties of individual robots and objects on role assignment, strategy and tactics. From the investigation of comparable strategic problems in form (HDOnR ) but considering very different motion dynamic properties of robots in different leagues important conclusions may be expected as different locomotion properties will in general result in different optimal action and role assignments. The formal procedure for hybrid dynamic modeling and optimization of cooperative role assignment and trajectory planning enables a synchronization of individual robots as well as the investigation of cooperative robot tasks besides RoboCup where the physical locomotion properties are of high significance, for example, in cooperative search or transportation tasks. The next steps are to model and investigate further scenarios and to develop suitable approximations (e g., by mixed-integer linear or quadratic programming) to speed-up computations towards a future real-time application. 11

References 1. A. Bemporad and M. Morari. Control of systems integrating logic, dynamics, and constraints. Automatica, 35(3):407–427, 1999. 2. M. Buss, M. Glocker, M. Hardt, O. von Stryk, R. Bulirsch, and G. Schmidt. Nonlinear hybrid dynamical systems: modeling, optimal control, and applications. In S. Engell, G. Frehse, and E. Schnieder, editors, Modelling, Analysis and Design of Hybrid Systems, volume 279 of Lecture Notes in Control and Information Sciences (LNCIS), pages 311–335, Berlin, Heidelberg, 2002. Springer-Verlag. 3. M. Buss, M. Hardt, and O. von Stryk. Numerical solution of hybrid optimal control problems with applications in robotics. In Proc. 15th IFAC World Congress on Automatic Control, Barcelona, Spain, July 21-26, pages 2077–2082. Elsevier Science, 2002. 4. L. Chaimowicz, V. Kumar, and M. F. M. Campos. A paradigm for dynamic coordination of multiple robots. Autonomous Robots, 17(1):7–21, 2004. 5. M. Dias and A. Stentz. A market approach to multirobot coordination. Technical report, Robotics Institute, Carnegie Mellon University, August 2001. 6. F. Dylla, A. Ferrein, G. Lakemeyer, J. Murray, O. Obst, T. R¨ ofer, F. Stolzenburg, U. Visser, and T. Wagner. Towards a league-independent qualitative soccer theory for RoboCup. In RoboCup 2004: Proc. RoboCup Intern. Symposium, volume 3271 of Lecture Notes in Artificial Intelligence, pages 611–618. Springer-Verlag, 2005. 7. M. G. Earl and R. D’Andrea. Multi-vehicle cooperative control using mixed integer linear programming. submitted to IEEE Transactions on Robotics, 2004. 8. M. G. Earl and R. D’Andrea. A decomposition approach to multi-vehicle cooperative control. submitted to IEEE Transactions on Robotics, 2005. 9. B. Gerkey and M. Matari´c. Sold!: Auction methods for multirobot coordination. IEEE Transactions on Robotics and Automation, 18(5):758 – 768, 2002. 10. P. Gill, W. Murray, and M. Saunders. SNOPT: An SQP algorithm for large-scale constrained optimization. SIAM Journal on Optimization, 12:979–1006, 2002. 11. M. Hardt and O. von Stryk. Dynamic modeling in the simulation, optimization, and control of legged robots. Z. Angew. Math. Mech., 83(10):648–662, 2003. 12. M. Hardt and O. von Stryk. The role of motion dynamics in the design, control and stability of bipedal and quadrupedal robots. In G. Kaminka, P. Lima, and R. Rojas, editors, RoboCup 2002: Robot Soccer World Cup VI, volume 2752 of Lecture Notes in Artificial Intelligence, pages 206–223. Springer-Verlag, 2003. 13. T. Kalm´ ar-Nagy, R. D’Andrea, and P. Ganguly. Near-optimal dynamic trajectory generation and control of an omnidirectional vehicle. Robotics and Autonomous Systems, 46:47–64, 2004. 14. M. Matari´c. Interaction and Intelligent Behavior. PhD thesis, MIT, 1994. 15. L. E. Parker. Alliance: An architecture for fault tolerant multi-robot cooperation. IEEE Transactions on Robotics and Automation, 14(2):220 – 240, 1998. 16. R. Simmons, T. Smith, M. B. Dias, D. Goldberg, D. Hershberger, A. Stentz, and R. M. Zlot. A layered architecture for coordination of mobile robots. In MultiRobot Systems: From Swarms to Intelligent Automata, Proceedings from the 2002 NRL Workshop on Multi-Robot Systems, May 2002. 17. P. Stone and M. Veloso. Task decomposition, dynamic role assignment, and lowbandwidth communication for real-time strategic teamwork. Artificial Intelligence, 110(2):241–273, 1999. 18. O. von Stryk and M. Glocker. Numerical mixed-integer optimal control and motorized traveling salesmen problems. APII – JESA (Journal europ´een des syst`emes automatis´es – European Journal of Control), 35(4):519–533, 2001.

12