boosting is successful for both binary and multi - class classification  . among those popular variants, we are particularly focusing on logitboost  in this paper .originally , logitboost is motivated by statistical view  , where boosting algorithms consists of three key components : the loss , the function model , and the optimization algorithm . in the case of logitboost , these are the logit loss , the use of additive tree models , and a stage - wise optimization , respectively. there are two important factors in the logitboost setting .firstly , the posterior class probability estimate must be normalised so as to sum to one in order to use the logit loss .this leads to a coupled classifier output , _i.e. _ , the sum - to - zero classifier output .secondly , a dense hessian matrix arises when deriving the tree node split gain and node value fitting .it is challenging to design a tractable optimization algorithm that fully handles both these factors .consequently , some simplification and/or approximation is needed . proposes a `` one scalar regression tree for one class '' strategy .this breaks the coupling in the classifier output so that at each boosting iteration the model updating collapses to independent regression tree fittings , where denotes the number of classes . in this way, the sum - to - zero constraint is dropped and the hessian is approximated diagonally .unfortunately , friedman s prescription turns out to have some drawbacks .a later improvement , abc - logitboost , is shown to outperform logitboost in terms of both classification accuracy and convergence rate  .this is due to abc - logitboost s careful handling of the above key problems of the logitboost setting . at each iteration ,the sum - to - zero constraint is enforced so that only scalar trees are fitted for classes .the remaining class called the base class is selected adaptively per iteration ( or every several iterations ) , hence the acronym abc ( adaptive base class ) .also , the hessian matrix is approximated in a more refined manner than the original logitboost when computing the tree split gain and fitting node value .  in this paper , we propose two novel techniques to address the challenging aspects of the logitboost setting . in our approach , one vector tree is added per iteration .we allow a dimensional sum - to - zero vector to be fitted for each tree node .this permits us to explicitly formulate the computation for both node split gain and node value fitting as a dimensional constrained quadratic optimization , which arises as a subproblem in the inner loop for split seeking when fitting a new tree . to avoid the difficulty of a dense hessian, we propose that for * each * of these subproblems , only two coordinates ( _ i.e. _ , two classes or a class pair ) are adaptively selected for updating , hence the name aoso ( adaptive one vs one ) logitboost .figure [ fig - tree - model ] gives an overview of our approach . in section [ sec - subset sel ]we show that first order and second order approximation of loss reduction can be a good measure for the quality of selected class pair .  following the above formulation , abc - logitboost , although derived from a somewhat different framework in  , can thus be shown to be a special case of aoso - logitboost , but with a less flexible tree model . in section [ sec - compabc ]we compare the differences between the two approaches in detail and provide some intuition for aoso s improvement over abc .the rest of this paper is organised as follows : in section [ sec - algo ] we first formulate the problem setting for logitboost and then give the details of our approach . in section [ sec - comp ] we compare our approach to ( abc-)logitboost . in section [ sec - exp ] , experimental results in terms of classification errors and convergence rates are reported on a range of public datasets .we begin with the basic setting for the logitboost algorithm . for -class classification ( ) , consider an example training set where denotes a feature value and denotes a class label .class probabilities conditioned on , denoted by , are learned from the training set . for a test example with known and unknown , we predict a class label by using the bayes rule : .  instead of learning the class probability directly, one learns its `` proxy '' given by the so - called logit link function : with the constraint  . for simplicity and without confusion ,we hereafter omit the dependence on for and for other related variables .the is obtained by minimizing a target function on training data : where is shorthand for and is the logit loss for a single training example : where if and otherwise .the probability is connected to via ( [ eq - link ] ) .  to make the optimization of ( [ eq - total loss ] ) feasible, a model is needed to describe how depends on .for example , linear model is used in traditional logit regression , while generalized additive model is adopted in logitboost : where each , a dimensional sum - to - zero vector , is learned by greedy stage - wise optimization .that is , at each iteration is added only based on . formally , this procedure repeats times with initial condition . owing to its iterative nature , we only need to know how to solve ( [ eq - fm ] ) in order to implement the optimization .   the in ( [ eq - fm ] ) is typically represented by scalar regression trees ( _ e.g. _ , in logitboost  or the real adaboost.mh implementation in ) or a single vector tree ( _ e.g. _ , the real adaboost.mh implementation in ) . in this paper , we adopt a single vector tree .we further restrict that it is a binary tree ( _ i.e. _ , only binary splits on internal node are allowed ) and the split must be vertical to coordinate axis , as in or .formally , where describes how the feature space is partitioned , while with a sum - to - zero constraint is the node values / vector associated with .see figure [ fig - tree - model ] for an example .   solving ( [ eq - fm ] ) with the tree model ( [ eq - vector tree ] ) is equivalent to determining the parameters at the -th iteration . in this subsectionwe will show how this problem reduces to solving a collection of convex optimization subproblems for which we can use any numerical method . following friedman s logitboost settings , herewe use newton descent .also , we will show how the gradient and hessian can be computed incrementally .we begin with some shorthand notation for the _ node loss _ : where denotes the index set of the training examples on some either internal or terminal node ( _ i.e. _ , those falling into the corresponding region ) . minimizing ( [ eq - node loss ] )is the bridge to in that :  1 .  to obtain with given , we simply take the minimizer of ( [ eq - node loss ] ) : where denotes the index set for .2 .  to obtain , we recursively perform binary split until there are -terminal nodes .the key to the second point is to explicitly give the node split gain .suppose an internal node with training examples ( for the root node ) , we fix on some feature and re - index all the examples according to their sorted feature values .now we need to find the index with that maximizes the node gain defined as loss reduction after a division between the -th and -th examples : where , and ; , and are the minimizers of ( [ eq - node loss ] ) with index sets , and , respectively .generally , this searching applies to all features .the best division resulting to largest ( [ eq - node gain ] ) is then recorded to perform the actual node split .note that ( [ eq - node gain ] ) arises in the context of an outer loop , where is number of features .however , a nave summing of the losses for ( [ eq - node loss ] ) incurs an additional factor in complexity , which finally results in an unacceptable complexity for a single boosting iteration .a workaround is to use a newton descent method for which both the gradient and hessian can be incrementally computed .let , respectively be the gradient vector and hessian matrix at . by dropping the constant that is irrelevant to , the taylor expansion of ( [ eq - node loss ] ) w.r.t . up to second order is : by noting the additive separability of ( [ eq - node loss taylor ] ) and using some matrix derivatives , we have  [ cols="^,^ " , ]   where the diagonal matrix .we then use ( [ eq - node loss taylor ] ) to compute the approximated node loss in ( [ eq - node gain ] ) .thanks to the additive form , both ( [ eq - taylor d1 ] ) and ( [ eq - taylor d2 ] ) can be incrementally / decrementally computed in constant time when the split searching proceeds from one training example to the next .therefore , the computation of ( [ eq - node loss taylor ] ) eliminates the complexity in the nave summing of losses . ) by simply setting the derivative to . here also , the computation can be incremental / decremental .since the loss design and adaboost.mh are not our main interests , we do not discuss this further .]   to minimise ( [ eq - node loss taylor ] ) , we give some properties for ( [ eq - node loss taylor ] ) that should be taken into account when seeking a solver .we begin with the sum - to - zero constraint .the probability estimate in the logit loss ( [ eq5-log loss ] ) must be non - zero and sum - to - one , which is ensured by the link function ( [ eq - link ] ) .such a link , in turn , means that is unchanged by adding an arbitrary constant to each component in . as a result, the single example loss ( [ eq5-log loss ] ) is invariant to moving it along an all-1 vector .that is , where is an arbitrary real constant ( note that is , coincidentally , the orthogonal complement to the space defined by sum - to - zero constraint ) .this property also carries over to the approximated node loss ( [ eq - node loss taylor ] ) :  [ theo - inv ] .this is obvious by noting the additive separability in ( [ eq - node loss taylor ] ) , as well as that , holds since is sum - to - one .  for the hessian , we have by noting the additive form in ( [ eq - taylor d1 ] ) . in is shown that by brute - force determinant expansion . herewe give a stronger property :  [ theo - h ] is a positive semi - definite matrix such that 1 ) , where is the number of non - zero elements in ; 2 ) is the eigenvector for eigenvalue 0 .the proof can be found in this paper s extended version .the properties shown above indicate that 1 ) is singular , so that unconstrained newton descent is not applicable here , and 2 ) could be as high as , which prohibits the application of the standard fast quadratic solver designed for low rank hessians . in the followingwe propose to address this problem via block coordinate descent , a technique that has been successfully used in training svms  .for the variable in ( [ eq - node loss taylor ] ) , we only choose two ( the least possible number due to the sum - to - zero constraint ) coordinates , _ i.e. _ , a class pair , to update while keeping the others fixed .suppose we have chosen the -th and the -th coordinate ( how to do so is deferred to next subsection ) .let and be the free variables ( such that ) and for , .plugging these into ( [ eq - node loss taylor ] ) yields an unconstrained one dimensional quadratic problem with regards to the scalar variable : where the gradient and hessian collapse to scalars :  to this extent , we are able to obtain the analytical expression for the minimizer and minimum of ( [ eq - node loss taylor scalar ] ) :  by noting the non - negativity of ( [ eq - taylor d2 scalar ] ) .based on ( [ eq - newton step 1d ] ) , node vector ( [ eq - node vector ] ) can be approximated as where and are respectively computed by using ( [ eq - taylor d1 scalar ] ) and ( [ eq - taylor d2 scalar ] ) with index set .based on ( [ eq - newton dec 1d ] ) , the node gain ( [ eq - node gain ] ) can be approximated as where ( or , ) and ( or , ) are computed by using ( [ eq - taylor d1 scalar ] ) and ( [ eq - taylor d2 scalar ] ) with index set ( or , ) .   in  methods for selecting are proposed .one is based on a first order approximation .let and be the free variables and the rest be fixed to . for a with sufficiently small fixed length , let and where is some small enough constant .the first order approximation of ( [ eq - node loss taylor ] ) is : it follows that the indices , resulting in largest decrement to ( [ eq20 - 1 order exp ] ) are : another method that can be derived in a similar way takes into account the second order information : both methods are procedures that are better than the nave enumeration .however , in our implementation we find that ( [ eq - subsel 2 ] ) achieves better results for aoso - logitboost .pseudocode for aoso - logitboost is given in algorithm [ alg - aosoboost ] . , ,  , , .obtain by recursive region partition .node split gain is computed as ( [ eq - node gain appro ] ) , where the class pair ( , ) is selected using ( [ eq - subsel 2 ] ) .compute by ( [ eq - node vector appro ] ) , where the class pair ( , ) is selected using ( [ eq - subsel 2 ] ) . , .in this section we compare the derivations of logitboost and abc - logitboost and provide some intuition for observed behaviours in the experiments in section [ sec - exp ] .   to solve ( [ eq - fm ] ) with a sum - to - zero constraint , abc - logitboost uses independent trees : in  , the so - called base class is selected by exhaustive search per iteration , _i.e. _ , trying all possible , which involves growing trees . to reduce the time complexity ,li also proposed other methods . in  , is selected only every several iterations , while in  , is , intuitively , set to be the class that leads to largest loss reduction at last iteration .  in abc - logitboostthe sum - to - zero constraint is explicitly considered when deriving the node value and the node split gain for the scalar regression tree .indeed , they are the same as ( [ eq - node vector appro ] ) and ( [ eq - node gain appro ] ) in this paper , although derived using a slightly different motivation . in this sense ,abc - logitboost can be seen as a special form of the aoso - logitboost since : 1 ) for each tree , the class pair is fixed for every node in abc , while it is selected adaptively in aoso , and 2 ) trees are added per iteration in abc ( using the same set of probability estimates ) , while only one tree is added per iteration by aoso ( and are updated as soon as each tree is added ) .  since two changes are made to abc - logitboost , an immediate question is what happens if we only make one ? that is ,what happens if one vector tree is added per iteration for a single class pair selected only for the root node and shared by all other tree nodes , as in abc , but the are updated as soon as a tree is added , as in aoso .this was tried but unfortunately , * degraded performance * was observed for this combination so the results are not reported here .  from the above analysis , we believe the more flexible model ( as well as the model updating strategy ) in aoso is what contributes to its improvement over abc , as seen section [ sec - exp ] ) .   in the original logitboost , the hessian matrix ( [ eq - taylor - d2-sample ] ) is approximated diagonally . in this way, the in ( [ eq - fm ] ) is expressed by uncoupled scalar tress : with the gradient and hessian for computing node value and node split gain given by : here we use the subscript for and to emphasize the -th tree is built independently to the other trees ( _ i.e. _ , the sum - to - zero constraint is dropped ) .although this simplifies the mathematics , such an aggressive approximation turns out to harm both classification accuracy and convergence rate , as shown in li s experiments  .in this section we compare aoso - logitboost with abc - logitboost , which was shown to outperform original logitboost in li s experiments  .we test aoso on all the datasets used in , as listed in table [ tab - datasets ] . in the top sectionare uci datasets and in the bottom are mnist datasets with many variations ( see for detailed descriptions ) .to exhaust the learning ability of ( abc-)logitboost , li let the boosting stop when either the training converges ( _ i.e. _ , the loss ( [ eq - total loss ] ) approaches , implemented as ) or a maximum number of iterations , , is reached .test errors at last iteration are simply reported since no obvious over - fitting is observed . by default , , while for those large datasets ( _ * covertype290k , poker525k , pokder275k , poker150k , poker100k * _ )  .we adopt the same criteria , except that our maximum iterations , where is the number of classes .note that only one tree is added at each iteration in aoso , while are added in abc .thus , this correction compares the same maximum number of trees for both aoso and abc .the most important tuning parameters in logitboost are the number of terminal nodes , and the shrinkage factor . in , li reported results of ( abc-)logitboost for a number of - combinations .we report the corresponding results for aoso - logitboost for the same combinations . in the following ,we intend to show that * for nearly all - combinations , aoso - logitboost has lower classification error and faster convergence rates than abc - logitboost*.   table [ tab - mnist10k ] shows results of various - combinations for a representative datasets .results on more datasets can be found in this paper s extended version .  in table[ tab - summary ] we summarize the results for all datasets . in , li reported that abc - logitboost is insensitive to , on all datasets except for _ * poker25kt1 * _ and _ * poker25kt2*_. therefore , li summarized classification errors for abc simply with and , except that on _ * poker25kt1 * _ and _ * poker25kt2 * _ errors are reported by using the other s test set as a validation set . based on the same criteria we summarize aoso in the middle panel of table [ tab - summary ] where the test errors as well as the improvement relative to abc are given .in the right panel of table [ tab - summary ] we provide the comparison for the best results achieved over all - combinations when the corresponding results for abc are available in or .we also tested the statistical significance between aoso and abc .we assume the classification error rate is subject to some binomial distribution .let denote the number of errors and the number of tests , then the estimate of error rate and its variance is .subsequently , we approximate the binomial distribution by a gaussian distribution and perform a hypothesis test . the -values are reported in table [ tab - summary ] .for some problems , we note logitboost ( both abc and aoso ) outperforms other state - of - the - art classifier such as svm or deep learning .( _ e.g. _ , the test error rate on _ * poker * _ is for svm and for both abc and aoso ( even lower than abc ) ; on _ * m - image * _ it is for dbn-1 , for abc and for aoso ) . see this paper s extended version for details .this shows that the aoso s improvement over abc does deserve the efforts .recall that we stop the boosting procedure if either the maximum number of iterations is reached or it converges ( i.e. the loss ( [ eq - total loss ] ) ) .the fewer trees added when boosting stops , the faster the convergence and the lower the time cost for either training or testing .we compare aoso with abc in terms of the number of trees added when boosting stops for the results of abc available in .note that simply comparing number of boosting iterations is unfair to aoso , since at each iteration only one tree is added in aoso and in abc .results are shown in table [ tab - conv ] and table [ tab - conv - minist10k ] . except forwhen - is too small , or particularly difficult datasets where both abc and aoso reach maximum iterations , we found that trees needed in aoso are typically only to of those in abc .figure [ fig - other ] shows plots for test classification error vs. iterations in both abc and aoso and show that aoso s test error decreases faster .more plots for aoso can be found in this paper s extended version .we present an improved logitboost , namely aoso - logitboost , for multi - class classification . compared with abc - logitboost, our experiments suggest that our adaptive class pair selection technique results in lower classification error and faster convergence rates .we appreciate ping li s inspiring discussion and generous encouragement .comments from nips2011 and icml2012 anonymous reviewers helped improve the readability of this paper .this work was supported by national natural science foundation of china ( 61020106004 , 61021063 , 61005023 ) , the national key technology r&d program ( 2009bah40b03 ) .nicta is funded by the australian government as represented by the department of broadband , communications and the digital economy and the arc through the ict centre of excellence program .

Abstract: this paper presents an improvement to model learning when using multi - class logitboost for classification . motivated by the statistical view , logitboost can be seen as additive tree regression . two important factors in this setting are : 1 ) coupled classifier output due to a sum - to - zero constraint , and 2 ) the dense hessian matrices that arise when computing tree node split gain and node value fittings . in general , this setting is too complicated for a tractable model learning algorithm . however , too aggressive simplification of the setting may lead to degraded performance . for example , the original logitboost is outperformed by abc - logitboost due to the latter s more careful treatment of the above two factors .  in this paper we propose techniques to address the two main difficulties of the logitboost setting : 1 ) we adopt a vector tree ( _ i.e. _ , each node value is vector ) that enforces a sum - to - zero constraint , and 2 ) we use an adaptive block coordinate descent that exploits the dense hessian when computing tree split gain and node values . higher classification accuracy and faster convergence rates are observed for a range of public data sets when compared to both the original and the abc - logitboost implementations .


spacecraft attitude control and reaction wheel desaturation are normally regarded as two different control system design problems and are discussed in separate chapters in text books , such as . while spacecraft attitude control using magnetic torqueshas been one of the main research areas ( see , for example , and extensive references therein ) , there are quite a few research papers that address reaction wheel momentum management , see for example , and references therein . in , dzielsk et al . formulated the problem as an optimization problem and a nonlinear programming method was proposed to find the solution .their method can be very expensive and there is no guarantee to find the global optimal solution .chen et al . discussed optimal desaturation controllers using magnetic torques and thrusters .their methods find the optimal torques which , however , may not be able to achieve by magnetic torque coils because given the desired torques in a three dimensional space , magnetic torque coils can only generate torques in a two dimensional plane .like most publications on this problem ,the above two papers do not consider the time - varying effect of the geomagnetic field in body frame , which arises when a spacecraft flies around the earth .giulietti et al . considered the same problem with more details on the geomagnetic field , but the periodic feature of the magnetic field along the orbit was not used in their proposed design . in addition , all these proposed designs considered only momentum management but not attitude control .since both attitude control and reaction wheel desaturation are performed at the same time using the same magnetic torque coils , the control system design should consider these two design objectives at the same time and some very recent research papers tackled the problem in this direction , for example , . in , tregouet et al. studied the problem of the spacecraft stabilization and reaction wheel desaturation at the same time .they considered time - variation of the magnetic field in body frame , and their reference frame was the inertial frame .however , for a low earth orbit ( leo ) spacecraft that uses earth s magnetic field , the reference frame for the spacecraft is most likely local vertical local horizontal ( lvlh ) frame .in addition , their design method depends on some assumption which is not easy to verify and their proposed design does not use the periodic feature of the magnetic field . moreover , their design is composed of two loops , which is essentially an idea of dealing with attitude control and wheel momentum management in separate considerations . in , a heuristic proportional controller was proposed and a lyapunov function was used to prove that the controller can simultaneously stabilize the spacecraft with respect to the lvlh frame and achieve reaction wheel management .but this design method does not consider the the time - varying effect of the geomagnetic field in body frame .although these two designs are impressive , as we have seen , these designs do not consider some factors in reality and their solutions are not optimal .  in this paper, we propose a more attractive design method which considers as many factors as practical .the controlled attitude is aligned with lvlh frame . a general reduced quaternion model , including ( a ) reaction wheels , ( b ) magnetic torque coils , ( c ) the gravity gradient torque , and ( d ) the periodic time - varying effects of the geomagnetic field along the orbit and its interaction with magnetic torque coils , is proposed .the model is an extension of the one discussed in . a single objective function , which considers the performance of both attitude control and reaction wheel management at the same time , is suggested .since a well - designed periodic controller for a period system is better than constant controllers as pointed out in , this objective function is optimized using the solution of a matrix periodic riccati equation described in , which leads to a periodic time - varying optimal control . based on the algorithm for the periodic riccati equations ,we show that the design can be calculated in an efficient way and the designed controller is optimal for both the spacecraft attitude control and for the reaction wheel momentum manage at the same time .we provide a simulation test to demonstrate that the designed system achieves more accurate attitude than the optimal control system that uses only magnetic torques . moreover , the designed controller based on lqr method works on the nonlinear spacecraft system .the remainder of the paper is organized as follows .section 2 derives the reduced quaternion spacecraft control system model using reaction wheel and magnetic control torques with the attitude defined as the rotation of the body frame respect to the lvlh frame .section 3 reduces the nonlinear spacecraft system model to a linearized periodic time - varying model which includes the time - varying geomagnetic field along the orbit , the gravity gradient disturbance torque , the reaction wheel speed control , and the magnetic torque control .section 4 introduces a single objective function for both attitude control and wheel management .it also gives the optimal control solutions for this linear time - varying system in different conditions .simulation test is provided in section 5 .the conclusions are summarized in section 6 .throughout the discussion , we assume that the inertia matrix of a spacecraft is a diagonal matrix .this assumption is reasonable because in practical spacecraft design , spacecraft inertia matrix j is always designed as close to a diagonal matrix as possible .( it is actually very close to a diagonal matrix . ) for spacecraft using earth s magnetic torques , the nadir pointing model is probably the mostly desired one .therefore , the attitude of the spacecraft is represented by the rotation of the spacecraft body frame relative to the local vertical and local horizontal frame .this means that the quaternion and spacecraft body rate should be represented in terms of the rotation of the spacecraft body frame relative to the lvlh frame ( see for the definition of lvlh frame ) .let ^{\tr} ] the orbit rate ( the rotation of lvlh frame ) with respect to the inertial frame represented in the lvlh frame , is a known constant . ] , and ^{\tr} ] where  is the inertia matrix of the three reaction wheels aligned with the spacecraft body axes , and ^{\tr} ] , we can represent in body frame as \left [ \begin{array}{c } 0 \\ 0 \\-|\r| \end{array } \right ] .\label{rl}\ ] ] denote the last column of as , and using the following relation  and ( [ rl ] ) , we can rewrite ( [ gg1 ] ) as   let ^{\tr} ] be the spacecraft magnetic torque coils induced magnetic moment in the spacecraft coordinates .the desired magnetic control torque may not be achievable because provides only a torque in a two dimensional plane but not in the three dimensional space .however , the spacecraft magnetic torque coils induced magnetic moment is an achievable engineering variable .therefore , equation ( [ dynamics2 ] ) should be rewritten as where . \label{ffunction}\ ] ] notice that the cross product of can be expressed as product of an asymmetric matrix and the vector with .\label{productm}\ ] ] denote the system states ^{\tr} ] , the spacecraft control system model can be written as follows :   \u + \t_d ,  \label{nonlineara } \\ \j_w  \dot{\boldsymbol{\omega } } = \t_w , \label{nonlinearb }  \\\dot{\q}=\g(\q , \boldsymbol{\omega } ) \label{nonlinearc}.\end{gathered}\ ] ]  [ dynamicsall ]  the reduced quaternion , instead of the full quaternion , is proposed in this model because of many merits discussed in .the nonlinear model of ( [ dynamicsall ] ) can be used to design control systems .one popular design method for nonlinear model involves lyponuv stability theorem , which is actually used in .a design based on this method focuses on stability but not on performance .another widely known method is nonlinear optimal control design , it normally produces an open loop controller which is not robust and its computational cost is high .therefore , we propose to use linear quadratic regulator ( lqr ) which achieves the optimal performance for the linearized system and is a closed - loop feedback control .our task in this section is to derive the linearized model for the nonlinear system ( [ dynamicsall ] ) .  using the linearization technique of , we can express in ( [ n9 ] ) approximately as a linear function of as follows \omega_0 = \left [  \begin{array}{ccc }  0 & 0 & 2\omega_0 \\ 0 & 0 & 0 \\ -2\omega_0 & 0 & 0 \\ \end{array }  \right ] \q  + \left [  \begin{array}{c }  0 \\ \omega_0\\ 0 \\ \end{array }  \right ] .\label{9}\end{aligned}\ ] ] similarly , we can express in ( [ ginterm1 ] ) approximately as a linear function of as follows = \left [  \begin{array}{ccc }  6\omega_0 ^ 2 ( j_{3}-j_{2 } ) &  0 & 0 \\ 0 & 6\omega_0 ^ 2 ( j_{3}-j_{1 } )  & 0 \\ 0 & 0 & 0 \\ \end{array }  \right ] \q : = \t \q . \label{22}\end{aligned}\ ] ] since and are functions of , the linearized spacecraft model can be expressed as follows : \left [ \begin{array}{c } \dot{\boldsymbol{\omega } }  \\ \dot{\boldsymbol{\omega } } \\ \dot{\q } \end{array } \right ] =  \left [ \begin{array}{ccc } \frac{\partial{\f}}{\partial{\boldsymbol{\omega } } }  & \frac{\partial{\f}}{\partial{\boldsymbol{\omega } } }   & \frac{\partial{\f}}{\partial{\boldsymbol{q } } }  + \t \\ \0 & \0  & \0 \\  \frac{\partial{\g}}{\partial{\boldsymbol{\omega } } }  & \0 & \frac{\partial{\g}}{\partial{\q } } \end{array } \right ] \left [ \begin{array}{c } { \boldsymbol{\omega } }  \\ { \boldsymbol{\omega } } \\{ \q } \end{array } \right ] + \left [ \begin{array}{cc } -\i & -\b^{\times } \\\i  & \0 \\  \0  & \0  \end{array } \right ] \left [ \begin{array}{c } \t_w  \\ \m \end{array } \right ] + \left [ \begin{array}{c } \t_d  \\\0  \\ \0 \end{array } \right ] , \label{linearmodel}\end{aligned}\ ] ] where , , , , and are evaluated at the desired equilibrium point , , and . using the definition of ( [ productm ] ) , ( [ 9 ] ) , ( [ 22 ] ) , and ( [ ffunction ] ) , we have + \left [ \begin{array}{ccc } 0 & 0 & j_2 \omega_0 \\ 0 & 0 & 0 \\  -j_2 \omega_0  & 0 & 0 \end{array } \right ] - \left [ \begin{array}{ccc } 0 & 0 & \omega_0 \\ 0 & 0 & 0 \\  -\omega_0  & 0 & 0 \end{array } \right ] \j  \nonumber \\  & = &  \left [ \begin{array}{ccc } 0 & 0 & \omega_0(-j_1+j_2-j_3 ) \\ 0 & 0 & 0 \\  \omega_0(j_1-j_2+j_3 )  & 0 & 0 \end{array } \right ] , \label{12}\end{aligned}\ ] ] \j_w  \nonumber \\  & = &  \left [ \begin{array}{ccc } 0 & 0 & -\omega_0 j_{w_3 } \\ 0 & 0 & 0 \\  \omega_0 j_{w_1 }  & 0 & 0 \end{array } \right ] , \label{12a}\end{aligned}\ ] ] and  - ( \boldsymbol{\omega}_{lvlh}^b ) ^{\times } \j   \left [ \begin{array}{ccc } 0 & 0 & 2 \omega_0 \\ 0 & 0 & 0 \\  -2 \omega_0  & 0 & 0\end{array } \right ]  \nonumber \\  &  \approx  &  \omega_0 \left (  \left [ \begin{array}{c } 2j_1q_3  \\ j_2 \\-2j_3q_1 \end{array } \right]^{\times } -\left [ \begin{array}{ccc } 0 & 0 & 1  \\ 0 & 0 & 0 \\  -1  & 0 & 0 \end{array } \right ] \j \right ) \left [ \begin{array}{ccc } 0 & 0 & 2\omega_0  \\ 0 & 0 & 0 \\  -2\omega_0  & 0 & 0 \end{array } \right ]  \nonumber \\  &  \approx  &  \omega_0 \left[ \begin{array}{ccc } 0 & 0 & j_2-j_3  \\ 0 & 0 & 0 \\  j_1-j_2  & 0 & 0 \end{array } \right ]  \left [ \begin{array}{ccc } 0 & 0 & 2\omega_0  \\ 0 & 0 & 0 \\  -2\omega_0  & 0 & 0 \end{array } \right ]  \nonumber \\  &  =  &   \left [ \begin{array}{ccc } 2\omega_0 ^ 2  ( j_3-j_2 )  & 0 & 0\\ 0 & 0 & 0 \\  0  & 0 & 2\omega_0 ^ 2  ( j_1-j_2 )  \end{array } \right ] .\label{12b}\end{aligned}\ ] ] from ( [ gfunction ] ) , we have  substituting ( [ 22 ] ) , ( [ productm ] ) , ( [ 12 ] ) , ( [ 12a ] ) , ( [ 12b ] ) , ( [ 14 ] ) , and ( [ 15 ] ) into ( [ linearmodel ] ) , we have & =  &  \left [ \begin{array}{ccc } \j^{-1 } \frac{\partial{\f}}{\partial{\boldsymbol{\omega } } }  & \j^{-1 }  \frac{\partial{\f}}{\partial{\boldsymbol{\omega } } }   & \j^{-1 } \left ( \frac{\partial{\f}}{\partial{\boldsymbol{q } } }  +  \t \right ) \\\0 & \0  & \0 \\  \frac{\partial{\g}}{\partial{\boldsymbol{\omega } } }  & \0 & \frac{\partial{\g}}{\partial{\q } } \end{array } \right ] \left [ \begin{array}{c } { \boldsymbol{\omega } }  \\ { \boldsymbol{\omega } } \\ { \q } \end{array } \right ] + \left [ \begin{array}{cc } -\j^{-1 }  & -\j^{-1 } \b^{\times } \\ \j_w^{-1 }  & \0\\  \0  & \0  \end{array } \right ] \left [ \begin{array}{c } \t_w  \\ \m \end{array } \right ] + \left [ \begin{array}{c } \j^{-1 } \\\0  \\ \0 \end{array } \right ] \t_d  \nonumber \\  & = & \left [ \begin{array}{ccccccccc } 0  &  0  &  \omega_0\frac{j_1-j_2+j_3}{-j_1 }  &  0  &  0  &  \frac{\omega_0 j_{w_3}}{-j_1 }  &  8\omega_0 ^ 2 \frac{j_3-j_2}{j_1 }  &  0  &  0 \\ 0  &  0  &  0  &  0  &  0  &  0  &  0  &  6\omega_0 ^ 2 \frac{j_3-j_1}{j_2 }  &  0 \\  \omega_0\frac{j_1-j_2+j_3}{j_3 }  &  0  &  0  &  \frac{\omega_0 j_{w_1}}{j_3 }  &  0  &  0  &  0  &  0  &  2\omega_0 ^ 2 \frac{j_1-j_2}{j_3 } \\ 0  &  0  &  0  &  0  &  0  &  0  &  0  &  0  &  0 \\ 0  &  0  &  0  &  0  &  0  &  0  &  0  &  0  &  0 \\ 0  &  0  &  0  &  0  &  0  &  0  &  0  &  0  &  0 \\ 0.5  &  0  &  0  &  0  &  0  &  0  &  0  &  0  &  0 \\ 0  &  0.5  &  0  &  0  &  0  &  0  &  0  &  0  &  0 \\ 0  &  0  &  0.5  &  0  &  0  &  0  &  0  &  0  &  0  \end{array } \right ]  \left [ \begin{array}{c } \omega_1\\ \omega_2 \\ \omega_3 \\ \omega_1 \\\omega_2 \\ \omega_3 \\ q_1\\ q_3 \end{array } \right ]  \nonumber \\ & +  &  \left [ \begin{array}{cccccc } -j_1^{-1 }  &  0  &  0  &  0  &  \frac{b_3}{j_1 }  &  -\frac{b_2}{j_1 }    \\ 0  &  -j_2^{-1 }  &  0  &  -\frac{b_3}{j_2 }  &  0  &  \frac{b_1}{j_2 }   \\ 0  &  0  &  -j_3^{-1 }  & \frac{b_2}{j_3 }  & -\frac{b_1}{j_3 }  &  0    \\ j_{w_1}^{-1 }  &  0  &  0  &  0  &  0  &  0    \\ 0  &  j_{w_2}^{-1 }  &  0  &  0  &  0  &  0    \\ 0  &  0  &  j_{w_3}^{-1 }  &  0  &  0  &  0    \\ 0  &  0  &  0  &  0  &  0  &  0    \\ 0  &  0  &  0  &  0  &  0  &  0    \\ 0  &  0  &  0  &  0  &  0  &  0    \end{array } \right ]  \left [ \begin{array}{c } t_{w_1 } \\ t_{w_1 } \\t_{w_1 } \\ m_1 \\ m_2 \\m_3  \end{array } \right ]  + \left [ \begin{array}{c } t_{d_1}/j_1 \\ t_{d_2}/j_2 \\t_{d_3}/j_3 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \end{array } \right ]  : = \a\x+\b\u+\d . \label{linearmodel1}\end{aligned}\ ] ]  it is worthwhile to notice that ( [ linearmodel1 ] ) is in general a time - varying system . the time - variation of the system arises from an approximately periodic function of , where is the orbital period , is the orbital radius ( approximately equal to the spacecraft altitude plus the radius of the earth ) , and  .this magnetic field can be approximately expressed as follows :  = \frac{\mu_f}{a^{3 } } \left [  \begin{array}{c }  \cos(\omega_0t)\sin(i_m ) \\-\cos(i_m ) \\2\sin(\omega_0t)\sin(i_m )  \end{array }  \right ] , \label{field}\ ] ] where is the inclination of the spacecraft orbit with respect to the magnetic equator , wb - m is the field s dipole strength .the time is measured at the ascending - node crossing of the magnetic equator .therefore , the periodic time - varying matrix in ( [ linearmodel1 ] ) can be written as .\label{varyb}\ ] ] a special case is when , i.e. , the spacecraft orbit is on the equator plane of the earth s magnetic field . in this case ,^{\tr} ] .the objective function of ( [ object ] ) should be revised to .\label{object1}\ ] ]our simulation has several goals .first , we would like to show that the proposed design achieves both attitude control and reaction wheel momentum management .second , we would like to compare with the design which does not use reaction wheels , our purpose is to show that using reaction wheels achieves better attitude pointing accuracy . more important, we would like to demonstrate that the lqr design works very well for attitude and desaturation control for the nonlinear spacecraft in the environment close to the reality .finally , we will discuss the strategy in real spacecraft control system implementation .the proposed design algorithm has been tested using the same spacecraft model and orbit parameters as in with the spacecraft inertia matrix given by the orbital inclination and the orbit is assumed to be circular with the altitude km . in view of equation ( [ period ] ) , the orbital period is seconds and the orbital rate is rad / second . assuming that the total number of samples taken in one orbit is , then , each sample period is second .it is easy to see that all parameters are selected the same as so that we can compare the two different designs .select ) ] .we have calculated and stored for using algorithm [ desat ] .assuming that the initial quaternion error is , initial body rate vector is radians / second , and the initial wheel speed vector is radians / second , applying the feedback ( [ soluv ] ) to the linearized system ( [ linearmodel1 ] ) and ( [ varyb ] ) , we get the linearized spacecraft rotational rate response described in figure [ fig : linearscw ] , the reaction wheel response descried in figure [ fig : linearwheelw ] , and the spacecraft attitude responses given in figures [ fig : linearscq ] .  comparing the response obtained here using both reaction wheels and magnetic torque coils and the response obtained in that uses magnetic torquesonly , we can see that both control methods stabilize the spacecraft , but using reaction wheels achieve much accurate nadir pointing .also reaction wheel speeds approach to zero as goes to infinity .therefore , the second design goal for reaction wheel desaturation is achieved nicely .it is nature to ask the following question : can the designed controller ( [ soluv ] ) , which is based on the linearized model , stabilize the original nonlinear spacecraft system ( [ dynamicsall ] ) with satisfied performance ?we answer this question by applying the designed controller to the original nonlinear spacecraft system ( [ dynamicsall ] ) .more specifically , the lvlh frame rotational rate is calculated using the accurate nonlinear formula ( [ n9 ] ) not the approximated linear model ( [ 9 ] ) .the gravity gradient torque is calculated using the accurate nonlinear formula ( [ ginterm1 ] ) not the approximated linear model ( [ 22 ] ) .the earth s magnetic field is calculated using the much accurate international geomagnetic reference field ( igrf ) model not the simplified model ( [ field ] ) .this is done as follows .given the altitude of the spacecraft ( km ) , the orbital radius is kilo meters and the lateral speed of the spacecraft is  . assuming that the ascending node at ( `` now '' ) is the axis of the ecef frame , the velocity vector ^{\tr}$ ] . using algorithm 3.4 of , we can get the spacecraft coordinate in eci frame at any time after . converting eci coordinate to ecef coordinate , we can calculate a much accurate earth magnetic field vector using igrf model , which has been implemented in matlab . applying this earth magnetic field vector and feedback control designed by the lqr method to ( [ dynamicsall ] ) , we control the nonlinear spacecraft system using the lqr controller .also , we allow randomly generated larger initial errors ( possibly time large than we used in the previous simulation test ) in this simulation test .the nonlinear spacecraft system response to the lqr controller is given in figures [ fig : nonlinearscw ] , [ fig : nonlinearwheelw ] , and [ fig : nonlinearscq ] .these figures show that the proposed design does achieve our design goals .moreover , the difference between the linear ( approximate ) system response and nonlinear ( true ) system response for the lqr design is very small !   in real space environment , even the magnetic field vector obtained from the high fidelity igrf model may not be identical to the real magnetic field vector which can be measured by magnetometer installed on spacecraft .therefore , it is suggested to use the measured magnetic field vector to form in the state feedback ( [ soluv ] ) . because of the interaction between the magnetic torque coils and the magnetometer , it is a common practice that measurement and control are not taken at the same time ( some time slot in the sample periodis allocated to the measurement and the rest time in the sample period is allocated for control ) .therefore , a scaling for the control gain should be taken to compensate for the time loss in the sample period when measurement is taken .for example , if the magnetic field measurement uses half time of the sample period , the control gain should be doubled because only half sample period is used for control .this is similar to the method used in .in this paper , we developed a reduced quaternion spacecraft model which includes gravity gradient torque , geomagnetic field along the spacecrat orbit and its interaction with the magnetic torque coils , and the reaction wheels .we investigate a time - varying lqr design method to control the spacecraft attitude to align the body frame with the local vertical local horizontal frame and to desaturate the reaction momentum at the same time .a periodic optimal controller is proposed for this purpose .the periodic controller design is based on an efficient algorithm for the periodic time - varying riccati equations .simulation test is given to show that the design objective is achieved and the control system using both reaction wheels and magnetic torques accomplishes more accurate attitude than the control system using only magnetic torques .99 , kluwer academic publishers , dordrecht , holland , 1978 . spacecraft dynamics andcontrol : a practical engineering approach , cambridge university press , cambridge , uk , 1997 .silani e. and lovera m. magnetic spacecraft attitude control : a survey and some new results , control engineering practice , 13 , pp .357 - 371 , 2005 .rodriquez - vazouez , a. martin - prats , m. a. and bernelli - zazzera f. spacecraft magnetic attitude control using approximating sequence riccati equations , ieee transactions on aerospace and electronic systems , 51(4 ) , pp .3374 - 3385 , 2015 .dzielsk , j. bergmann e. and paradiso j. a computational algorithm for spacecraft control and momentum management , proceedings of the 1990 american control conference , pp .1320 - 1325 , 1990 .chen x. steyn , w. h. hodgart , s. and hashida , y. optimal combined reaction - wheel momentum management for earth - pointing satellites , journal of guidance , control , and dynamics , 22(4 ) , pp .543 - 550 , 1999 .giulietti , f. quarta , a. a. and tortora , p. optimal control laws for momentum - wheel desaturation using magnetorquers , journal of guidance , control , and dynamics , 29(6 ) , pp .1464 - 1468 , 2006 .treqouet , j - f .arzelier , d. peaucelle , d. pittet , c. and zaccarian , l. reaction wheel desaturation using magnetorquers and and static input allocation , ieee transactions on control system technology , 23(2 ) , pp .525 - 539 , 2015 .de angelis , e.l .giulietti , f. de ruiter , a.h.j . andavanzini , g. spacecraft attitude control using magnetic and mechanical actuation , to appear in journal of guidance , control , and dynamics .yang , y. quaternion based model for momentum biased nadir pointing spacecraft , aerospace science and technology , 14(3 ) , pp .199 - 202 , 2010 .flamm , d.s . a new shift - invariant representation for periodic linear system , systems and control letters , 17(1 ) , pp . 9 - 14 , 1991 .khargonekar , p. p. poolla , k. and tanenbaum , a. robust control of linear time - invariant plants using periodic compensation , ieee transactions on automatic control , 30 ( 11 ) , pp .1088 - 1096 , 1985 .yang , y. an efficient algorithm for periodic riccati equation for spacecraft attitude control using magnetic torques , submitted , 2016 .available in arxiv:1601.01990 .yang , y. spacecraft attitude determination and control : quaternion - based method , annual reviews in control , 36 ( 2 ) , pp .198 - 219 , 2012 . , books / cole thomson learing , belmont , ca , 2004 .wie , b. vehicle dynamics and control , aiaa education series , reston , va , 1998 .yang , y. analytic lqr design for spacecraft control system based on quaternion model , journal of aerospace engineering , 25(3 ) , pp .448 - 453 , 2012 .yang , y. quaternion based lqr spacecraft control design is a robust pole assignment design , journal of aerospace engineering , 27(1 ) , pp .168 - 176 , 2014 .lewis , f.l .vrabie , d. and syrmos , v.l . optimal control , 3rd edition , john wiley & sons , inc ., new york , usa , 2012 .paiaki , m.l .magnetic torque attitude control via asymptotic period linear quadratic regulation , journal of guidance , control , and dynamics , 24(2 ) , pp .386 - 394 , 2001 .yang , y. controllability of spacecraft using only magnetic torques , ieee transactions on aerospace and electronic system , 52(2 ) , pp . 955 - 962 , 2016 .arnold , w.f . ,iii and laub , a.j .generalized eigenproblem algorithms and software for algebraic riccati equations , proc .ieee , 72 , pp .1746 - 1754 , 1984 .bittanti , s. periodic riccati equation , the riccati equation , edited by s. bittanti , et .al , spriner , berlin , pp .127 - 162 , 1991 .hench , j.j . andlaub , a.j .numerical solution of the discrete - time periodic riccati equation , ieee transactions on automatic control , 39(6 ) , pp .1197 - 1210 , 1994 .curtis , h. d. orbital mechanics for engineering students , elsevier butterworth - heinemann , burlington , ma , 2005 .finlay , c.c .et al , special issue `` international geomagnetic reference field - the twelfth generation '' , earth , planets and space , 67:158 , 2015 .yang , y. attitude control in spacecraft orbit - raising using a reduced quaternion model , advances in aircraft and spacecraft science , vol . 1 , no . 4 ( 2014 ) pp .427 - 441 .

Abstract: two popular types of spacecraft actuators are reaction wheels and magnetic torque coils . magnetic torque coils are particularly interesting because they can be used for both attitude control and reaction wheel momentum management ( desaturation control ) . although these two tasks are performed at the same time using the same set of actuators , most design methods deal with only one of the these tasks or consider these two tasks separately . in this paper , a design with these two tasks in mind is formulated as a single problem . a periodic time - varying linear quadratic regulator design method is then proposed to solve this problem . a simulation example is provided to describe the benefit of the new strategy .   * keywords : * spacecraft attitude control , reaction wheel desaturation , linear time - varying system , reduced quaternion model , linear quadratic regulator .


in the paradigm of discrete - event systems ( des s ) , one can distinguish two fundamental types of control to satisfy given specifications .specifications prescribe constraints that assert some orderly flow of system activities based on system needs or limitations .one type is that of external supervisors controlling discrete - event processes or agents to satisfy given control constraints , while the other type is that of agents coordinating among themselves through their coordination modules ( cm s ) to satisfy given inter - agent constraints .the cm s are built - in strategies designed for the given constraints , and constitute an agent s local interface `` plugged '' onto the agent model via the synchronization operator , and through which every agent coordinates by interacting and communicating with other agents in the system .although the two types of control are mathematically related , they are clearly conceptually different .  in , we formulate and address the fundamental coordination problem of multiple agents coordinating to satisfy one common constraint . therein , by establishing the mathematical connection between the discrete - event coordination problem with the conceptually different discrete - event supervisory control problem , we successfully adapt concepts and techniques from supervisory control of des s for the development of a cm synthesis algorithm .  in this paper , we generalize the fundamental coordination problem to a networked coordination problem of multiple agents coordinating to satisfy multiple constraints distributed among them .the inter - agent constraints are distributed in such a way that each constraint is pre - specified for a subgroup of agents .these agent subgroups can be overlapping , meaning that an agent can be coordinating on different inter - agent constraints with different agents in the system , and hence conflict or blocking between their different coordinating actions may arise .in general , multiagent conflict can occur if some agent actions in a system state can permanently prevent some of the agents in the system from reaching their local design goals characterized by marked states under the discrete - event paradigm .this presents a challenging design problem of networked agent coordination which is commonly encountered in large scale distributed systems .  to address the networked coordination problem for large scale des s in a systematic fashion , we propose a novel compositional synthesis approach .this approach consists of two main steps . in the first step ,we construct for each agent a set of local cm s , one for each of the agent s relevant constraints , using the synthesis algorithm proposed in .the advantage of constructing local cm s is that we can avoid having to compute the product of all agent and constraint models , thereby mitigating the problem of state explosion . in the second step ,we generate a conflict resolution plan , and execute this plan to design additional deconflicting cm s for individual agents .a conflict resolution plan for a dcsn shows a sequential or partial order of applying deconflicting cm synthesis to successive pairs of potentially conflicting , constrained agent subgroups .deconflicting cm s are individual agent cm s to be interposed between every agent model and its local cm s , so that in coordinating among themselves , the agents can automatically resolve the conflicts that may otherwise occur due to the different inter - agent constraints on which each agent s local cm s are synthesized . composing the agent models and the local and deconflicting cm scan then be shown to constitute a correct solution to the networked coordination problem .our compositional synthesis approach for designing distributed coordinating agents is supported by two original ideas .the first is a new formalism called the distributed constraint specification network ( dcsn ) that can describe comprehensibly the networking constraint relationships among agents , on which the multiagent networked coordination problem is formulated and addressed ( sections [ sect - problemformulation ] and [ sect - subnetsynthesis ] ) .the second is multiagent conflict resolution planning that entails generating a compact and/or graph representation of conflict resolution plans and selecting some criterion - based optimal plan for a given dcsn ( section [ sect - conflictresolutionplanning ] ) . at the outset ,the background and preliminaries are presented ( section [ sect - pre ] ) .an example system introduced in section [ sect - problemformulation ] is used throughout the paper to illustrate the various aspects of the proposed approach .the proofs of all new results are presented in the appendix . a summary and a discussion of related workconclude the paper ( section [ sect - relatedwork - conclusion ] ) .in this paper , we will use small letters such as , , , to denote integers . for an integer ,the symbol denotes the index set .let be a finite alphabet of symbols representing individual events .a _ string _ is a finite sequence of events from .denote as the set of all strings from including the empty string .a string is a _ prefix _ of if  .a _ language _ over is a subset of .say is a _ sublanguage _ of if .the _ prefix closure _ of a language is the language consisting of all prefixes of its strings .clearly .a language is _ prefixed - closed _ if .given , the natural projection , which erases from a string every event , is defined recursively as follows : , and , , if , and , otherwise .for , denotes the language .the inverse image of , denoted by , is a mapping from to , and defined as : for , . clearly , for , .if a language is _ regular _ , then it can be _ generated _ by an automaton .an _ automaton _ is a 5-tuple , where is the finite set of states , is the finite set of events , is the ( partial ) transition function , is the _ initial state _ and is the subset of _ marker states_.  the definition of can be extended to as follows : , and .write to denote that is defined. the behaviors of automaton can then be described by the prefix - closed language and the marked language .formally , , and .let , , be two automata .then their _ synchronous product _ , denoted by , models a discrete - event system ( des ) of and operating concurrently by interleaving events generated by and , with synchronization on shared events .it has been shown that if then and  . if , then and .the synchronous product of automata , , ... , denoted by , can be defined recursively using the associativity of  .let be a set of nonblocking automata modeling discrete - event agents , with for .the event set ( of agent ) is partitioned into the controllable event set and the uncontrollable event set . interpreted from the agent viewpoint , an uncontrollable event is inherently autonomous and can be executed solely at the free will of the owner agent .let model a system of agents in freely interacting , with and .let .then , an inter - agent constraint for a group of agents can be prescribed by an automaton such that .the language is interpreted as the set of desirable event sequences that one wishes to impose on the group of agents . in other words , constraint specifies that the agents in must coordinate among themselves so that none of those event sequences in will ever be generated during their interaction , where . is then said to be a relevant constraint for agent group ._ : _ [ def - coordinationmodule ] a coordination module ( cm ) for an agent , , is an automaton with the following properties : ( i ) , and ( ii ) is -enabling , namely ,  ] .  in other words , is controllable provided no -string which is already a prefix of some string in , that when followed by an uncontrollable event in , would exit from .it has been shown that the _ supremal controllable sublanguage _ of w.r.t and exists , and is equal to if it is controllable .for an automaton , the procedure , which computes a nonblocking automaton such that is the supremal controllable sublanguage of , can be implemented with polynomial time complexity ._ : _ [ def - observablelanguage ] is said to be _w.r.t and ( or just observable if is understood ) if for which , the following two conditions are satisfied : ( 1 )  ] .the above conditions ensure that provides a sufficient view for an observer to determine all necessary control and marking actions . taken together, that is coordinable w.r.t and means that ( i ) if each agent coordinates properly ( by appropriately enabling and disabling its own controllable events ) , then the coordinated system behavior will conform to , and ( ii ) has sufficient information for determining its coordinating actions ( that ensure the conformance of the coordinated system behavior to ) .in distributed multiagent systems , there are often multiple distributed inter - agent constraints , each restricting a group of interacting agents . to specify the relevance relationships of distributed constraints among these agents, we define a formalism called the distributed constraint specification network ( dcsn ) .the dcsn allows a human designer to organize and interconnect the agents and their distributed constraints in a networking structure that , in our opinion , comprehensibly shows who needs to coordinate with whom over what constraints .[ ch - networkedparti - def - dcsn ] let , . a distributed constraint specification network ( dcsn ) is a tuple , where is an agent set of size and is an inter - agent constraint set of size , such that .each in a dcsn , where is the constraint index , is said to be a relevant constraint for agents in the group . without loss of generality , assume henceforth that , i.e. , every agent in is in for some , and so every agent needs to coordinate .then a dcsn can be redefined as .[ ch - networkedparti - def - subnet ] an element of is called a basic subnet of ; and a non - empty consisting of basic subnets is called a -constraint subnet of with constraint subset . where the constraint subset is arbitrary , a -constraint subnet is simply denoted by .by definition [ ch - networkedparti - def - subnet ] , a subnet of a dcsn is also a dcsn . intuitively , a dcsn is a formalism that represents interconnections among agents and constraints , associating every agent with its relevant inter - agent constraints . under the interconnections ,an inter - agent constraint induces a group of agents that it is relevant for .it is then clear that the agents in the agent group need to coordinate to satisfy the constraint .a dcsn can be graphically represented by an undirected hyper - graph with agents represented by rectangular nodes , and each constraint relevant for an agent group by an oval hyper - edge with arcs connecting it to all the agents in the group . through its graphical representation which is intuitively clear and easy to understand , a dcsn is designer comprehensible for modeling the inter - agent constraint relationships among agents , as the following example will demonstrate .  throughout this paper, we shall use a simple manufacturing transfer line example [ fig .[ ch - networkedparti - fig - overall ] ] to illustrate our theoretical development .the system under study consists of three agents , and [ figs .[ ch - networkedparti - fig - a1][ch - networkedparti - fig - a3 ] ] , and four constraints , , and [ figs .[ ch - networkedparti - fig - e1][ch - networkedparti - fig - b2 ] ] , organized into a dcsn ( fig .[ ch - networkedparti - fig - nw ] ) .the system works as follows . and are producer agents that continually follow a production plan : acquire manufacturing equipment and in either order , produce a workpiece , return the equipment to their initial location , move to the buffers location , place the finished workpiece into the respective buffer , and finally return to the initial state for a new production cycle . is a delivery agent that continually takes a work piece from either buffer 1 or buffer 2 , processes , and delivers it to customers .we fix  .the four constraints , , and are formulated to respectively ensure mutual exclusion of equipment use , and no overflow or underflow of buffers .the dcsn is composed of four basic subnets , , and . when depicted graphically , a nice feature of dcsn is that the constraint inter - connections between agents are explicitly shown for comprehensibility of design .for instance , in fig .[ ch - networkedparti - fig - nw ] , it is clear that would need to coordinate with for and , and with for .[ ch - networkedparti - prob - main ] given a dcsn of agents and inter - agent constraints , let and , where and .synthesize a set , where is a set of cm s for agent , such that , i.e. , the resulting coordinated system is nonblocking and satisfies every constraint in in a minimally restrictive manner . specifies the desired behavior , embodying all the event sequences that one wishes to impose on the system .a set of cm s is then said to satisfy ( every constraint in ) if .it can be easily shown that is controllable with respect to and .thus , for a set of cm s satisfying , . a cm set is then said to satisfy in a _ minimally interventive _manner if , implying that using such cm s , each agent would not unnecessarily disable its controllable events , unless not doing so could lead eventually to the violation of some inter - agent constraint in .   as discussed in the introduction , our compositional synthesis approach for a given dcsn can be described as follows .* - step 1 basic subnet synthesis : * synthesize for every agent a set of -connected local cm s , one for each of the agent s relevant constraints .this step is performed by applying the algorithm developed in to every basic constraint subnet of the dcsn , i.e. , every subnet containing one inter - agent constraint .* - step 2 subnet composition *  * * step 2.1 conflict resolution plan generation : * generate a conflict resolution plan for the dcsn .this plan is a sequence of subnet composition operations .each operation entails designing deconflicting cm s for the agents of the subnets concerned , so as to ensure nonblockingness , and hence correctness , when the subnets are composed together .* * step 2.2 conflict resolution plan execution : * compose subnets with conflict resolution by following a precedence order of subnet composition operations in the plan generated in step 2.1 .this is to completely deconflict the local cm s synthesized in step 1 to ensure nonblockingness of the whole dcsn .  in the remaining of this paper ,we explain how these steps are formally carried out .this section fills in the cm synthesis details of our approach , presenting for step 1 , the local cm synthesis algorithm developed in , and for step 2.2 , how the cm solutions obtained of smaller subnets can be composed to obtain a nonblocking solution for the resultant bigger subnet .  note that , having pointed out in the mathematical relation between multiagent coordination and supervisory control , we are able to identify and utilize some mathematical results developed for supervisory control to support subnet composition synthesis , by carefully redefining these results in the notation of our des multiagent coordination framework . in the following ,the supporting results are proposition 1 , lemma 1 and lemma 2 , and in the spirit of scientific rigor , these are validated by proofs presented in under our framework notation . in the increasingly cross - disciplinary research environment , we find it necessary to adopt this approach , in order to develop a standalone treatment of our new distributed agent coordination theory that contributes conceptually clear des methods for multiagent coordination , without the distracting shadow of terminology from the mathematically related , but conceptually different field of supervisory control .   given a dcsn of agents and inter - agent constraints, we consider the problem of synthesizing cm s for some basic subnet of , . to fix notation , let and .we are interested in synthesizing , for each agent in the subnet , a cm such that .the pseudo - code of the synthesis algorithm based on theorem [ th - mc - pro-1 ] is notationally redefined as procedure for basic subnet synthesis .recall from that computes and returns a minimal cardinality communication event set that the agents s in the subnets must communicate among themselves , constructs for each agent , , a cm from and , and is a cm reduced procedure adapted from the supervisor reduction procedure , which can often return a greatly state - size reduced cm automaton for agent , achieving the same behavior of .[ ch - networkedparti - ex - basicnet ] to illustrate the use of procedure , we apply it to the manufacturing transfer line example and synthesize cm s for agents and to cooperatively satisfy . by step 1 of , we first compute , which has 40 states and 82 transitions . next , by step 2 , the minimal communication sets for and are computed : and . following step 3 ,cm s , , are computed by applying procedure on and .each of these cm s has 11 states and 19 transitions .finally , in step 4 , is applied to reduce the state size of and , arriving at the state - reduced cm s , each with 2 states and 11 transitions ( see fig .[ ch - networkedparti - fig - basicnetex1 ] ) .to elaborate , using these cm s means : must inform whenever it takes or returns the equipment , and reciprocates in turn .similarly , the cm s and synthesized using for agents and to cooperatively satisfy are given in fig .[ ch - networkedparti - fig - basicnetex2 ] .we now consider how the cm solutions of two basic subnets can be composed together to obtain a solution for the resultant two - constraint subnet .given , let .we are interested in synthesizing , for each agent , a set of cm s such that . without loss of generality ,we assume .otherwise , the two basic subnets contain no common agents and would only need to be synthesized individually .one simple approach is to reorganize into a new subnet consisting of one constraint for the agent group .the solution for this reorganized basic subnet can then be obtained by applying .this approach , however , has a major drawback : it suffers from exponential complexity of computing the product of all agents and constraints and . for a large number of agents ,this computation may become prohibitively expensive .our compositional approach entails designing deconflicting cm s for the agents concerned to resolve any conflict between and .the need for additional deconflicting cm s will be clear from the following example .[ ex - blocking ] for , we apply to compute cm s of agents and for and .the cm s and for , and and for , are shown in figs .[ ch - networkedparti - fig - basicnetex1 ] and [ ch - networkedparti - fig - basicnetex2 ] .however , using only these cm s does not guarantee that and will interact correctly for the subnet .in fact , the system of and interacting using these cm s contains blocking states .for instance , the event sequence , which is allowed to be executed by the cm s , leads to the blocking situation of each agent holding one equipment and waiting forever to acquire the equipment held by the other agent .thus , the local cm s individually constructed for and do not generally constitute a correct solution for .the reason is that , in general , ; and whenever this happens , the system of coordinating agents using only their cm s constructed for the individual basic subnets will contain blocking states .we say that and are nonconflicting if is nonblocking .otherwise , they are conflicting .being nonconflicting means no deconflicting cm s need to be additionally constructed .this motivates the development of a procedure of testing for the nonconflicting of and .the simplest way of doing so is to directly compute and check whether or not it is a nonblocking automaton .however , this approach is computationally inefficient since it can be shown to have the same complexity order as that of computing the product of all agents and constraints .lemma [ ch - networkedparti - lemma - nonconflicttest2 ] leads us to a more efficient approach to testing the nonconflict of and .this and the next lemmas are formulated in terms of the concepts of language observer and output control consistent ( occ ) projection .[ def - observerandocc ] _ observer and occ projection : _ given an automaton with , and .  1 . is said to be a -observer if : , if is a prefix of then such that and . is said to be occ for if of the form , where is either or terminates with an event in , the following holds : and  ] .  in words , definition[ def - observerandocc].1 asserts that whenever can be extended to a string in by catenating to it a string , the underlying string can also be extended to a string in by catenating to it a string with .thus , definition [ def - observerandocc].1 says that every string in the abstract model is realizable by the original model .  by definition [ def - observerandocc].2 , along every , in between every observable but uncontrollable event that exists andits nearest `` upstream '' observable event ( or otherwise the empty string prior to the `` starting '' event of the string ) is a string of uncontrollable and unobservable events .thus , if is interpreted as ( the behavior of ) an underlying system model and as ( the behavior of ) the abstracted system model , then , that is occ for characterizes the semantics that every uncontrollable event in the abstracted model can never be disabled and hence prevented from occurring by disabling controllable events in the underlying model .the abstracted model output is , in this sense , `` control consistent '' with the underlying model .[ ch - networkedparti - lemma - nonconflicttest2 ] let and define and as projections from and to , respectively . then, if is a -observer and is a -observer , two basic subnets and are nonconflicting if and only if is a nonblocking automaton .thus , under the stated sufficiency conditions in lemma [ ch - networkedparti - lemma - nonconflicttest2 ] , testing the nonconflict of and can be reduced to checking whether or not is nonblocking . this way, we only need to first compute instead of , which results in a computationally cheaper nonconflict test for two reasons .the first is that such automata and can be individually computed in polynomial time , and the second is that their state sizes are often smaller than those of and , respectively .  nevertheless , if and are conflicting ( due to blocking ) , we need to design additional deconflicting cm s for the agents concerned to resolve the conflicts between and .together with the local cm s synthesized for and , deconflicting cm s will constitute a correct solution for .essentially , deconflicting cm s remove blocking states from when used by the agents of subnet .  in designing deconflicting cms for coordinating agents , our approach is to first synthesize an automaton as the basis for conflict resolution between two basic subnets , and then `` localize '' it to every agent as the agent s deconflicting cm if the agent shares some events with the conflict resolution ( automaton ) . formally , an automaton is said to be a conflict resolution for and if \equiv sup^{\{h , k\}} ] is a conflict resolution for and , where is a one - state automaton that generates as both the prefix - closed and marked languages .thus , can be computed as  ] .note that the smaller the cardinality of the set returned by step ( ii ) is , the more economical the computation would be for step ( iv ) .the problem of finding a minimal cardinality event set satisfying every condition in lemma [ ch - networkedparti - thm - leifeng ] has proven to be np - hard . however , a polynomial time algorithm exists to synthesize such an event set of reasonably small size .  from the foregoing discussion ,procedure is developed to design deconflicting cm s for and .it first checks if and are nonconflicting by applying lemma [ ch - networkedparti - lemma - nonconflicttest2 ] ( step 1 ) .if they are , then no deconflicting cm is needed .otherwise , lemma [ ch - networkedparti - thm - leifeng ] is applied to compute a conflict resolution for the two subnets ( step 2 ) .next , in step 3 , the procedure determines whether or not an agent needs to take part in resolving the conflict between the subnets , i.e. , if .if so , it computes for a deconflicting cm .note that such a deconflicting cm could simply be taken as .however , to achieve economy of implementation , it uses to obtain a reduced cm . in the worst case , and has to compute the synchronous product of all agents and constraints in the two subnets .it therefore has exponential complexity .however , is often efficient in practice since is often a strict subset of .* output : * a deconflicting cm for agent to resolve the conflict between and   [ ch - networkedparti - lemma - deconflictbasicsubnet ] for , let be the deconflicting cm computed for agent in step 3 of , or trivially a one - state automaton that generates and marks if no deconflicting cm is needed for , either because and are nonconflicting or because . then , .theorem [ ch - networkedparti - thm - subnet ] formally summarizes how we can compose ( the solution cm s of ) two basic subnets and to form ( a cm solution set for ) the two - constraint subnet .[ ch - networkedparti - thm - subnet ] for , let be the cm set for agent computed as follows : ( i ) includes every cm computed for when applying for and , and ( ii ) includes every deconflicting cm computed for when applying to resolve the conflict that exists between and .then , where is a synchronous product of all cm s in .   with slight modifications ,the theoretical results presented in the previous section can be generalized to composing two subnets and of sizes , to form a larger -constraint subnet . in doing so , we follow the same composition logic , i.e. , we first synthesize the cm s for each individual subnet , and then design , if necessary , deconflicting cm s for the agents to resolve the conflict between the two subnets . a procedure called for and is developed .it is almost identical to but extends based on a straightforward generalization of lemma [ ch - networkedparti - thm - leifeng ] .this section fills in step 2.1 of our compositional synthesis approach , presenting the formalism and algorithms for the representation and generation conflict resolution plans .[ ch - networkedpartii - def - subnetdecomposition ] given a dcsn consisting of basic subnets , ... , a subnet - decomposition is a set of subnets of such that : 1 ) every element subnet of is constraint - connected , 2 ) every basic subnet of is contained in one of the elements of , and 3 ) there is no basic subnet of that is contained in two different elements of .it follows that a conflict resolution plan for is a sequence of transitions of subnet - decompositions , starting with and ending with . characterizes the situation in which all the basic subnets are `` disconnected '' from each other , and characterizes the situation where all the basic subnets are already deconflicted together to form the complete dcsn .each transition from one subnet - decomposition to another characterizes an operation of deconflicting ( the cm solutions of ) subnets to form ( a cm solution of ) a larger subnet .a conflict resolution plan should only include transitions that correspond to resolving conflicts of subnets that contain common agents , since subnets that contain no common agents are trivially nonconflicting . generating a conflict resolution plan for is then equivalent to searching for a path of subnet - decomposition transitions from to .observe that a conflict resolution planning sequence for a dcsn is a reversal of a successive decomposition , starting with , of constraint - connected component subnets until only basic subnets remain .this suggests that the forward search problem of generating conflict resolution plans for a dcsn can be addressed as a backward search problem of successively decomposing into pairs of constraint - connected component subnets until only basic subnets are left .the space of all possible conflict resolution plans for can therefore be generated by enumerating all possible ways of successively decomposing this way .  because there are many subnet - decompositions that can be made from the same dcsn , the branching factor from the initial state to the goal state is greater than that from to .a backward search is , therefore , often more efficient than a forward search for the conflict resolution planning problem .  and/or graphs are suitable in representing decomposable problems .by recognizing that conflict resolution plans for a dcsn can be generated by enumerating all possible ways of successively decomposing it , definition [ ch - networkedpartii - def - andorgraph ] proposes a representation using and/or graphs for the conflict resolution plans of a dcsn .[ ch - networkedpartii - def - andorgraph ] the and/or graph of conflict resolution plans for a dcsn is a hyper - graph , where  1 . is the set of nodes of and defined as . is the set of hyper - edges of and defined as .the nodes in the and/or graph represent constraint - connected subnets of , and each of the hyper - edges is a pair denoting the decomposition of subnet into two component subnets and , or equivalently , the composition of and into . a hyper - edge points from a node representing a subnet to two nodes representing the component subnets .the node that represents the complete dcsn is referred to as the root node and denoted by , and the nodes representing basic subnets of are referred to as the leaf nodes .the set of all leaf nodes of is , and is denoted by .  in what follows ,a conflict resolution plan for is represented by a tree in that starts at and terminates at .formally , a tree in the and/or graph , starting at a node and terminating at a set of nodes , can be described recursively as follows .  *if , contains only one node and no edge , and we write . *otherwise , contains the node , an edge , and the nodes and edges of two trees and .each tree , , starts from one of s two successors , , and terminates at some , where and are disjoint and . in this case, we write .the set of all trees starting from and terminating at is denoted by . if , is called the root node of and a node in called a terminal node of .whenever the set of terminal nodes is arbitrary , the set of trees starting from a node is simply denoted by , and the set of all trees of is denoted by .a tree in is said to be complete . formally then , a complete tree is a conflict resolution plan .any tree in whose root node is not or whose leaf nodes are not all in is called a non - complete tree .a non - complete tree is a subgraph of one or more complete trees .a non - complete tree whose root node is is called a partial tree . in what follows ,a tree in is a partial conflict resolution plan .we now present an algorithm for generating the and/or graph representation of conflict resolution plans .our algorithm takes as input a dcsn and generates as output the and/or graph representation of conflict resolution plans for the dcsn .the basic idea of our algorithm is to first enumerate all possible decompositions of a dcsn into two constraint - connected component subnets .each such decomposition corresponds to an edge of the and/or graph connecting the root node representing to two nodes , with each representing a component subnet .the same decomposition process is then repeated for each of the component subnets , which are component dcsn s , until only basic subnets are left .recursive decomposition lends itself to straightforward and/or graph construction of all conflict resolution plans .  to facilitate the systematic enumeration of all possible decompositions of a subnet in a dcsn , we first convert the dcsn to a constraint relational network ( crn ) .in essence , the crn of a dcsn , formally defined in definition [ ch - networkedproblemii - def - crn ] below , is a constraint relational model which explicitly relates every pair of inter - agent constraints whose induced agent groups overlap .[ ch - networkedproblemii - def - crn ] the constraint relational network ( crn ) of a -constraint subnet is a tuple , where is the constraint set of size in and is a relation over , such that  ] , namely , $ ] is a conflict resolution for and .if the two basic subnets and are nonconflicting , the lemma is trivially true . otherwise , by step 3 of , for every agent with , we have . recall from that is a procedure that , given and , often returns a greatly state - size reduced cm automaton for agent achieving the same behavior of .it follows that for other agents that do no share events with , essentially no deconflicting cm is needed .therefore ,    if and are nonconflicting , the theorem is trivially true .otherwise , by lemma [ ch - networkedparti - lemma - deconflictbasicsubnet ] , we have where is a conflict resolution for and computed in step 2 of . since , , it follows that hence the theorem .let the lowest -value be . by contradiction ,assume that returns with .since , we also have .consider a partial tree that is a subgraph of an optimal plan with and that is contained in before is extracted from ( there must always be such trees since an optimal solution always exists ) .then , since is an admissible heuristic , we have .we now have . since in step 3a, always extracts from a tree with the lowest -value , it follows that will not be extracted from before is . andwhen is extracted from , it will be expanded in steps 3c and 3d , and eventually becomes before can ever be extracted from .the reason is that and is an admissible heuristic , meaning that any subgraph of that is expanded from in steps 3c and 3d will have its -value smaller than that of and therefore , extracted from before . finally ,if is ever be extracted from in step 3a , it will be returned as a solution by . in other words , will never be returned by , contradicting our initial assumption .hence the theorem .      * _ base : _ first , since , any tree that contains only one node representing a basic subnet of has both its -value and its depth equal to 0 .* _ inductive hypothesis : _ now , assume that any tree whose depth smaller than or equal to an integer and whose terminal nodes are all in has its depth equal to its -value .we then show that any tree with depth and with all terminal nodes in will also have its depth equal to its -value as follows .* * let be a tree with and with every terminal node in .since , .* * it follows that both the depths of and are equal to or smaller than .furthermore , every terminal node of and is in .therefore , by the inductive hypothesis , and . ** it then follows that , or . by the definition of , therefore , . *thus , by induction , if then . by the definitions of and , it then follows that if , .  to prove ( ii ) , consider a partial tree in that starts from and terminates at a set of nodes that are not necessarily leaf nodes . consider a terminal node of that is not a leaf node , which represents a constraint - connected subnet of  be an arbitrary tree that starts at and terminates at a subset of leaf nodes . is then a sub - plan for , namely , a plan to synthesize the subnet represented by .the depth of must then be equal to or greater than , since to synthesize the subnet represented by , we need to successively compose two different subnets of it at a time .since the depth of a tree starting from an arbitrary terminal node of and terminating at is equal to or greater than , by the recursive definitions of , it follows that the depth of any tree in that encompasses as a subgraph is equal to or greater than .in other words , is an admissible heuristic for .k. t. seow , m. t. pham , c. ma , and m. yokoo , `` coordination planning : applying control synthesis methods for a class of distributed agents , '' _ ieee transactions on control systems technology _ , vol .17 , no . 2 , pp . 405415 , 2009 .w. m. wonham , _ notes on control of discrete - event systems ece 1636f/1637s_.1em plus 0.5em minus 0.4emsystems control group , university of toronto , updated 1st july 2012 , http://www.control.toronto.edu/cgi-bin/dldes.cgi.  m. t. pham and k. t. seow , `` towards synthesizing optimal coordination modules for distributed agents , '' in _ proceedings of the 23th aaai conference on artificial intelligence _ , chicago , illinois , usa , july 2008 , pp .14791480 .k. t. seow , c. ma , and m. yokoo , `` multiagent planning as control synthesis , '' in _ proceedings of the 3rd international joint conference on autonomous agents and multi - agent systems _ , columbia university , new york , july 2004 , pp .972979 .w. m. wonham , _ control design software : tct_.1em plus 0.5em minus 0.4emdeveloped by systems control group , university of toronto , canada , updated 1st july 2008 , http://www.control.toronto.edu/cgi-bin/dlxptct.cgi .m. yokoo , _ distributed constraint satisfaction : foundations of cooperation in multi - agent systems_.1em plus 0.5em minus 0.4emspringer - verlag , heidelberg , germany , 2000 , springer series on agent technology .l. hunsberger , `` algorithms for a temporal decoupling problem in multi - agent planning , '' in _ proceedings the 18th national conference on artificial intelligence _ , edmonton ,alberta , july - august 2002 , pp . 468475 .l. planken , m. de weerdt , and c. witteveen , `` optimal temporal decoupling in multiagent systems , '' in _ proceedings of the 9th international joint conference on autonomous agents and multi - agent systems _ , toronto , may 2010 , pp .789796 .j. c. b. jr . ande. h. durfee , `` distributed algorithms for solving the multiagent temporal decoupling problem , '' in _ proceedings of the 10th international joint conference on autonomous agents and multi - agent systems _ ,taipei , may 2011 , pp .141148 .j. shen and v. r. lesser , `` communication management using abstraction in distributed bayesian networks , '' in _ proceedings of the fifth international joint conference on autonomous agents and multi - agent systems _ , future university - hakodate , hakodate , may 2006 , pp. 622629 .k. cai and w. m. wonham , `` supervisor localization : a top - down approach to distributed control of discrete - event systems , '' in _ second mediterranean conference on intelligent systems and automation ( cisa09 ) .aip conference proceedings _ , vol . 1107 , zarzis , march 2009 , pp .302308 . , `` supervisor localization of discrete - event systems based on state tree structures , '' in _ proceeding of the 51st ieee conference on decision and control _ , maui , hawaii , december 2012 , pp . 58225827 .p. n. pena , j. e. r. cury , and s. lafortune , `` testing modularity of local supervisors : an approach based on abstractions , '' in _ proceedings of the 8th international workshop on discrete event systems _ , ann arbor , michigan , july 2006 , pp .

Abstract: this paper presents a novel compositional approach to distributed coordination module ( cm ) synthesis for multiple discrete - event agents in the formal languages and automata framework . the approach is supported by two original ideas . the first is a new formalism called the distributed constraint specification network ( dcsn ) that can comprehensibly describe the networking constraint relationships among distributed agents . the second is multiagent conflict resolution planning , which entails generating and using and/or graphs to compactly represent conflict resolution ( synthesis - process ) plans for a dcsn . together with the framework of local cm design developed in the authors earlier work , the systematic approach supports separately designing local and deconflicting cm s for individual agents in accordance to a selected conflict resolution plan . composing the agent models and the cm s designed furnishes an overall nonblocking coordination solution that meets the set of inter - agent constraints specified in a given dcsn .