Monotone Co-Design Problems; Or, Everything Is the Same
Total Page:16
File Type:pdf, Size:1020Kb
Monotone Co-Design Problems; or, Everything is the Same Andrea Censi Abstract— This paper describes a theory of co-design. The better computation (which increases the power consumption). objects of investigation are “design problems”, defined as tuples In practice, practitioners decouple problems based on their of “function space”, “implementation space”, and “resources intuition, and then locally refine the designs. space”, along with the relations that relates implementation to function and implementation to resource usage. “Co-design Contribution: This paper describes a theory to deal with problems” are defined as the composition of design problems by co-design problems in a principled way. three operations, roughly equivalent to the concepts of series, A “design problem” is defined as a tuple of “function parallel, and feedback. “Monotone” design problems are those space”, “implementation space”, and a “resources space”, plus for which functions are partially ordered and there is an order- the two maps that relate implementations to functions and preserving map between functions and resources. The main results is that any composition of monotone co-design problem implementation to resources. A design problem defines a is monotone, and that there exists a systematic procedure to set of optimization problems, equivalent to “find the minimal obtain the solution to the composed problem explicitly from the resources needed to implement a given function”. A “co-design solution of the primitive problems. problem” is the composition of design problems using three I. INTRODUCTION operations, equivalent to “series”, “parallel”, and “feedback”, which allows expressing recursive co-design constraints. The title of this paper is inspired by that of a course called “Monotone design problems” are those where both function Everything is the Same: Modeling Engineered Systems taught space and resources space are partially ordered, and that the by Todd Murphey from Northwestern University [1]. The relation between function implemented and resources needed premise of the class is the “systems view” that allows the is monotone (order-preserving). The first main result in this unified modeling of all components of a complex system under paper (Theorem 1) is that the interconnection of any number the same interface, namely differential equations. Formalisms of monotone design problems is still monotone. The second such as bond graphs [2] make it clear that there is a strong main result (Theorem 2) is that if we have a procedure to solve formal equivalence of many heterogenous systems. the primitive design problems, then there exists a systematic So “everything in the same” in the analysis of a system. procedure to solve any co-design problem defined from them. Yet “everything is different” in the design of a system. This paper is a generalization of previous work [3], where Take robotics as the prototypical example of an hetero- the composition was limited to one cycle. The previous paper geneous multi-domain co-design problem. The design of a is a good introduction to this one. The main example in robotic system involves the choice of physical components, this paper focuses on a mechatronic system, while [3] gives such as the actuators, the sensors, the power supply, the examples about computation, control, and illusionism. computing units, and network links if the system is distributed. Not less important is the choice of the software components, II. BACKGROUND including perception, planning, and control modules. All these components define constraints on each other. Each This section includes background material on partial orders physical component has SWAP characteristics such as its and clarifies the notation used. Davey and Priestley [4] and shape (which must contained somewhere), the weight (which Roman [5] are possible reference texts. adds to the payload), and power (which needs to be provided In the following, let ; P be a poset. “ P ” will be written as “ ” if the contexthP is clear.i Let P( ) be the power by something else) and excess heat (which must be dissipated P somehow). Analogously, the software components have similar set of . We shall be working with the set of antichains of , denotedP here as A , and the set of upper sets, denoted U P. requirements. For example, a planner needs a state estimate. P P An estimator provides a state estimate, and requires a sensor. Definition 1 (Antichains). S is an antichain if no Everything costs money to buy or develop or license. elements are comparable: for x;⊆ y PS, x y implies x = y. 2 What makes the design problem non trivial is that these Call A the set of all antichains in . constraints are recursive. For example, a battery provides P P power, which is used by actuators to carry the payload. A Definition 2 (Upper sets). S is an upper set if x S ⊆ P 2 larger battery provides more power, but it also increases the and x y implies y S. Call U the set of upper sets of . 2 P P payload, so more power is needed. For control, typically a : : : U is a lattice with UP = , UP = ; UP = , better state estimate saves energy in the execution, but requires P : : ⊇ ? ; > : P UP = , UP = . Note that we are setting UP = better sensors (which increase the cost and the payload) or ^ [ _ : \ ⊇ rather than UP = , which is the usual way of making U ⊆ P Andrea Censi <[email protected]> is with the Laboratory for Information and a lattice. This will make some things easier later, as we will Decision Systems (LIDS) at the Massachusetts Institute of Technology. deal with monotone maps, rather than antitone maps. Two operators that are needed later are the upper closure Definition 7 (Directed set). A set S is directed if each operator , which maps any set to an upper set, and the Min pair of elements in S has an upper bound.⊆ P In other words, for operator" that maps any set to an antichain. all a; b S, there exists c S such that a c and b c. 2 2 Definition 3 (Upper closure). maps a subset to the smallest Definition 8. A poset is a directed complete partial order upper set that includes it: " (DCPO) if each of its directed subsets has a supremum (least of upper bounds). It is a complete partial order (CPO) if it : P( ) U ; " P ! P also has a bottom element . S y x S : x y : ? 7! f 2 P j 9 2 g Definition 9 (Scott continuity). A map f between two DCPOs and is called Scott-continuous if for each Definition 4 (Minimal elements). The minimal elements P Q of S are directed subset D , the image f(D) is directed, ⊆ P and f(sup D) = sup⊆f P(D). Scott-continuity⊆ implies Q mono- : Min S = x S (y S) (y x) (x = y) : tonicity (Def. 6). f 2 j 2 ^ ) g III. DESIGN PROBLEMS Note that Min refers to the minimal elements (elements that are not dominated), while “min” is the least element The basic objects considered in this paper are design prob- (an element that dominates all others). If min S exists, then lems. The following is the definition of a simple (“atomic”) Min S = min S . However, Min S = does not imply design problem; the next sections shows how design problems min S exists.f g 6 ; can be composed together. In general, all antichains are the minimal elements of an Definition 10. A design problem is a tuple upper set. In fact, for any antichain A A , A = Min A. 2 P " dp = F; R; I; exec; eval However, it is not true, in general, that each upper set U h i is generated by its minimal elements, as in U = Min U. where (Fig. 2): Take as a counterexample the poset [0; 1]; and the" upper • F is a set, called “function space”; set U = (0; 1]. Then U has no minimalh elements:≤i Min U = . • R is a poset, called “resources space”; A sufficient condition for antichains and upper set to be in; a 21 • I is a set, called “implementation space”; 1-to-1 correspondence is the following. • the map exec: I F, mnemonics for “execution”, maps ! Definition 5. A poset satisfies the descending chain condition an implementation to the function it realizes; (DCC) if there is no infinite descending chain x x • the map eval: I R, mnemonics for “evaluation”, evalu- 0 1 ! x ::: that does not stabilize; xn = xn for some finite n. ates the resources needed for an implementation. 2 +1 The set of all design problems is called DP. 21 One can verify thefunctions poset [0; 1];implementationsdoes not satisfyresources the DCC by considering the infiniteh descending≤i chain 1 1=2 ≥ ≥ 1=3 1=4 1=n ::: for n N. ≥ ≥ · · · ≥ ≥ 2 Fig. 2. Lemma 1. If the DCC is satisfied, and the axiom of dependent choice is assumed true, there is a 1-to-1 correspondence functions implementations resources between the set of upper sets U and the antichains A P P A design problem defines a family of optimization problems, given by and Min (Fig. 1). " functions implementations resourcesparametrized by the desired function f. Proof. See [6] for a proof and a counterexample that shows Problem 1. Given f F, find the implementations in I that the axiom of dependent choice is necessary. realize the function f2with minimal resources (or provide a proof that therefunctions are none):implementations resources 8 A = Min U U = A >using i I; Fig. 1. A U ↑ < 2 MinR eval(i); (1) > A = Min U :s.t. exec(i)U ==f:A A U ↑ Lemma 2. It follows that A is a lattice with AP given by Note the use of “Min ” in (1), which indicates the set P R of minimal (non-dominated) elements.