A Urpi

M Bonuccelli

S Giordano
email: silvia.giordano@die.supsi.ch

Modelling cooperation in mobile ad hoc networks: a formal description of selfishness

The advance in wireless technologies makes now viable to start to develop ad hoc networks. However, without a mechanism that prevents misbehaviors, these networks could result easily unreliable. We develop a model, based on game theory, capable of formally explaining characteristics of ad hoc networks (as the nodes' selfishness or the network mobility). It also allows to formally study and analyze strategies for cooperation. As example, we describe a simple strategy that enforces packet forwarding among nodes.

Introduction

A Mobile Ad Hoc Network is a collection of mobile wireless nodes. It has no authority and is dynamic in nature. Energy conservation issue is essential for each node and leads to potential selfish behavior. Nodes can tend to limit their support to other nodes as this costs energy and has no revenue. Thus, despite the fact that technology and networking are here to stay, practical problems certainly arise from being highly uncoordinated. And the nodes move, which introduces uncertainty and complexity into the forwarding process. The need of mechanisms for stimulate cooperation became evident as ad hoc networks started to be studied for uses different than the military one. However, the general approach followed was proposing a mechanism or a protocol and to study the behavior of the proposed mechanism. Models based on game theory have not been explored much in the ad hoc networks literature. There exist some works ( [START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes -Fairness In Distributed Ad-hoc NeTworks[END_REF][START_REF] Buttyan | Stimulating cooperation in self-organizing mobile ad hoc networks[END_REF][START_REF] Michiardi | Core: A collaborative reputation mechanism to enforce node cooperation in mobile ad hoc networks[END_REF][START_REF] Srinivasan | Cooperation in wireless ad hoc networks[END_REF]) introducing strategies for cooperation in ad hoc networks that implicitly are based on a game theoretic model. However, these models are nor formal neither general, and they do not derive their strategy from the equilibrium concept. The absence of a general and formal model led to difficulties in comparisons and analytical studies of proposed solutions. In this paper, we propose an approach to cooperation based on Bayesian games, where the players are the nodes in the network. Consider an ad hoc network where nodes have to periodically choose an action (whether to forward or not to forward) without being fully informed about the traffic in the whole network. Each node is endowed with some information about its neighbors and their actions, which includes its neighborhood, the traffic it sent and has to send, and the traffic it received. Prior to choosing its next action, a node has an opportunity to analyze the past behavior of its neighbours and its priorities in terms of energy consumption and throughput, and to decide, consequently, how to act. In deciding to whom to forward packets and to whom to discard packets, the node trades-off the costs (energy consumption), the benefits (network throughput) and the collaboration offered to the network by the neighbours. This implicit incentive brings a neighbor to act in a selfish way only when obliged by energy constraints, but each node tends to cooperate with collaborative nodes. We develop a general model where we include: the Bayesian secret type of each player, that is the classification of nodes in terms of their traffic generation process (energy class); the dynamic process of energy consumption; the payoff of each player, that is the linear combination of the energy spent for some forwarding that goes to success and the throughput expressed in terms of the packets sent over the packets she wanted to send; and the dynamic process of nodes mobility. The generaliza-tion provides a richer model in terms of answering theoretical as well as practical questions. In terms of the networks literature ours is a generic model of ad hoc networks that allows to describe and study new strategies, as well as the protocols and strategies previously published. Our results establish in a formal way that nodes in ad hoc networks are selfish, and give a theoretical explanation of selfishness. Thus it is formally defined why the dynamic process of communication in ad hoc networks converges to a non-collaborative network with probability one. Furthermore, the energy consumption affects the nodes behavior in a more realistic way: A node evaluates its energy consumption not only in terms of avoiding to forward packets for other nodes, as it is done in other works, but also by reducing the number of its packets sent, whenever there is high probability that the packets will not be forwarded. Finally, we formally proof that, on average, nodes will never forward more packets than they send themselves. Based on these conclusions, we give the characteristics of the strategies that, enforced by the theoretical aspects solved with our model, exploit the nature of ad hoc networks for enforcing the cooperation among nodes. As an example, we describe a simple strategy that enforces packet forwarding among nodes. The rest of the paper is organized as follows. In Section 2 we discuss the related work. Section 3 introduces the new cooperation model for ad hoc networks. In Section 4 we illustrate the properties of our model, and Section 5 gives an analysis of existing works in terms of our model. Then the characteristics and properties of the enforceable policies that can be derived with our model are presented in Section 6. Finally, we conclude the paper and illustrate the future work (Section 7).

Related work

The cooperation enforcement in mobile ad hoc networks is recently receiving great attention, since it is a critical service that must be guaranteed. In [START_REF] Marti | Mitigating routing misbehavior in mobile ad hoc networks[END_REF], which is the starting point for many other works, Marti et al are not concerned about cooperation itself, but about offered throughput in the network, which is of course affected by selfishness. They do not introduce a formal model to describe their solution, but propose to equip every node with a watchdog, a unit that listens to all the communications that arrive to the node, in order to keep under control what is going on in the neighborhood. With these data, selfish nodes can be excluded from routes, making selfishness very advantageous, but not dangerous. Buchegger and Le Boudec introduce the CONFI-DANT protocol in [START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes -Fairness In Distributed Ad-hoc NeTworks[END_REF]. Again, they do not introduce a formal model, motivating their solution by means of simulation, but it is possible to deduce that they adopt an evolutionary approach: they see nodes as an interacting population, and look for a strategy that yields more benefit than any other strategy that a newcomer node can adopt ( [START_REF] Dawkins | The selfish gene[END_REF]). Nodes have to be equipped with a watchdog unit, to observe the actions of neighbours, and adapt to their behavior. Moreover, they need to warn themselves about new discovered selfish nodes, with exchanges of alarm messages, in order to cut off misbehaving nodes from all the network services. The solution proposed in [START_REF] Michiardi | Core: A collaborative reputation mechanism to enforce node cooperation in mobile ad hoc networks[END_REF][START_REF] Michiardi | Game theoretic analysis of security in mobile ad hoc networks[END_REF] by Michiardi and Molva overcomes some problems related to the alert messages, and introduce the concept of redemption: a misbehaving node can be integrated again in the network if it start cooperating. The reputation of nodes is collected locally, with some indirect deduction about well behaving nodes that can be useful when considering mobility. Authors analyze their solution in game theoretical terms, showing that games can be very useful in such an anarchic setting. A radically different solution was proposed in [START_REF] Buttyan | Enforcing service availability in mobile ad-hoc wans[END_REF][START_REF] Buttyan | Stimulating cooperation in self-organizing mobile ad hoc networks[END_REF] by Buttyan and Hubaux. A mobile ad hoc network is modeled as a market, where services are exchanged. A virtual economy, based on a virtual currency called nuglet (or bean), is then introduced, forcing nodes to pay to have their packets forwarded, and to being paid when they forward some data. Selfishness is avoided with a rewarding technique: one node is free to be selfish, but behaving in this way it will soon end its nuglets, and it will not be able to send any packet. Unfortunately, the nuglet manager must be put in a tamper-proof hardware module, since it is not possible to avoid forging or stealing. In [START_REF] Srinivasan | Cooperation in wireless ad hoc networks[END_REF], Srinivasan et al. propose a trade-off between the previous solutions, introducing energy as the main concern. They analyze a mechanism based on the TIT FOR TAT strategy (see Sec-tion 6), that leads to a Pareto efficient point in the network, using game theory as foundation of their analysis. The model however lacks of generality, since authors used many strong assumptions about the nature of communications.

A new model 3.1 Definitions and assumptions

We assume that time is discrete and divided in frames t 1 , . . . , t n (see Section 4 for a discussion on their size, and on the low importance of the synchrony hypothesis, implicitly holding with this assumption). Node i has the following informations at the beginning of frame t k :

• N i (t k ), the set of its neighbors1 during the frame, assumed to be fixed during each frame (see Section 4),

• B i (t k ), the remaining energy of unit i,

• ∀j ∈ N i (t k ).T j i (t k ), the traffic node i generated as source, and that it has to send to neighbor j during the frame, in terms of number of packets (j can be the final destination for some of them and just a relay for the remaining),

• ∀j ∈ N i (t k-1 ).F i j (t k-1 ), the number of packets, that j forwarded for i during the previous frame (i can be the source for some of the packets, and a relay preceding j in the chain for the others),

• ∀j ∈ N i (t k-1 ).R j i (t k-1
), the number of packets i received as final destination during the previous frame from neighbor j, that could be source for some of them and relay node for the others,

• ∀j ∈ N i (t k-1 ). R j i (t k-1
) is the number of packets i received from j as final destination, being j the source (

R j i (t k ) ≤ R j i (t k )
). Thinking about a real mobile ad hoc network, it can be difficult to understand how the value of F i j (t x ) is known by node i. If in the network communications are symmetric (i.e. ∀i, j, k.i ∈ N j (t k ) ⇐⇒ j ∈ N i (t k )), then for example it is possible to use a watchdog unit ( [START_REF] Marti | Mitigating routing misbehavior in mobile ad hoc networks[END_REF]), or some higher level mechanisms like end to end acknowledgements. However, it is not the main focus of this paper to explain how to compute all the needed data. We assume that to send a packet a constant amount of energy c σ is spent, while receiving has a negligible cost in comparison, since we assume a shared medium where a packet is received anyway from every node in the transmission range of who is transmitting. Nodes are divided in n energy classes e 1 , . . . , e n , each with a specific generation process, without restriction. Associated to every class e k there is moreover a constant 0 ≤ α e k ≤ 1, defining the importance given to energy by nodes in e k : if α e k = 0 then energy is not a matter, while at the contrary α e k = 1 implies that energy is a resource tremendously important (see Section 3.2, where the payoff function is defined). The class of node i is indicated by e(i), and it is assumed to be fixed. Finally, we are interested in modeling and understanding selfishness, so malicious behaviors are intentionally not considered. A selfish node does not want to damage any other node, it just wants to save energy while using the network.

The forwarding game

It is possible to model an ad-hoc network during a single frame by means of a Bayesian game ( [START_REF] Osborne | A Course in Game Theory[END_REF]) in the following way:

• the players are the nodes in the network,

• player i, as action, sets S j i (t k ), i.e. the number of packets she2 will send to every node j ∈ N i (t k ) (a fraction of T j i (t k )), and F j i (t k ), i.e. the number of packets, received from j during previous frame, she will forward for her.

• the secret type of player i is her energy class e(i), that affects her traffic generation distribution,

• her payoff is

α e(i) W i (t k ) + (1 -α e(i) )G i (t k ) (1)
where 0 ≤ α e(i) ≤ 1 is the already introduced class dependent evaluation of energy importance, W i (t k ) is a measure of the energy spent with success, i.e. the ratio between packets that neighbours forwarded after a request by i, or received as final destination, and sent packets, defined as:

W i (t k ) w(k) if S i (t k-1 ) + F i (t k-1 ) > 0 0 otherwise (2) with w(k) j∈Ni(t k ) (F i j (t k ) + R i j (t k )) S i (t k-1 ) + F i (t k-1 )
and G i (t k ) is the ratio of sent packets over packets that player i wanted to send, defined as:

G i (t k ) g(t k ) if j∈Ni(t k ) T j i (t k ) > 0 0 otherwise (3) with g(t k ) j∈Ni(t k ) S j i (t k ) j∈Ni(t k ) T j i (t k )
• player i has a prior belief for every player j ∈ N i (t k ), i.e. a distribution on the energy class of j.

It is worth noting that the payoff function is always between 0 and 1, and that sending at least one packet in every frame (if there are packets to send, of course) is always at least as good as not sending anything. In a few words, every node tries to maximize its payoff function, with the following constraints:

c σ (S i (t k ) + F i (t k )) ≤ B i (t k ) (4)
T i (t k ) ≥ 0, S i (t k ) ≥ 0, F i (t k ) ≥ 0 (5) S i (t k ) ≤ T i (t k ) (6)
Constraint 4 means that it can not be spent more energy than the battery can provide and constraints 5 and 6 just better characterize the admissibility space.

A sequence of frames is the infinite repetition of the game, with a discount factor δ depending on the mobility of the network (i.e. the probability to have a neighbor in the transmission range also in following frames): the less a neighborhood is stable, the smaller is δ, since a misbehavior by j in the present frame (i.e. a non cooperative move, as we will see in Section 4) could never be punished if j is moving out of the neighborhood of i in the near future. This approach allows us to model a local knowledge, since the payoff of every player is influenced just by the moves of players modeling neighbor nodes. A discussion on local versus global knowledge strategies is given in Section 6.

An example

Let us begin with a didactic case: a "mobile" adhoc network with two nodes that mutually need the other node to reach (for example an access point) and that also exchange messages between them (Figure 1). If there is a unique class, then there is not uncertainty about the type of the other node, and the scenario is very simple. In the single shot scenario, Nash equilibria are (of course) dependent on the value of α (and then on the energy class the nodes belong to). If α = 0, nodes do not care about spent energy, and their payoff function is obviously G i (t k ). For this reason, in all the equilibria of the game, nodes send all the traffic they need to (i.e. ∀k.S i (t k ) = T i (t k ), maximizing their payoff) and they forward a number of other node's packets between 0 and the number of packets they were demanded to. On the contrary, if α = 1 nodes are extremely concentrated on power, and their payoff is given by W i (t k ). There is just one Nash equilibrium in which nodes do not forward any packet, and send just traffic destined to the other node, since both maximize their payoff setting F i (t k ) to 0. Finally, if 0 < α < 1, nodes are sensible to both the goals (which is a more realistic case), then a few equilibria (generally just one) exist, in which F i (t k ) = 0 for both players, and S i (t k ) is the best tradeoff between wasted energy and throughput needs. It is possible to show that for α small enough, there exist equilibria in which more packets than the ones for the other node are sent.

If there are two different energy classes 3 , and α e(1) = 0 and α e(2) = 0 (i.e. both units are energy constrained), then nothing changes, since for every node the best strategy is not to forward (F j i (t k ) = 0) and to send a number of packets not much greater than the amount of packets directed to the other node (S j i (t k ) ≈ R j i (t k )), for α great enough. If α e (i) = 0 for one of the nodes (let us suppose this holds for node 1), then it is possible to prove the following Proposition 3.1 If node 1 belongs to class 1 with associated α 1 = 0 and node 2 belongs to class 2, with associated 1 ≥ α 2 > 0, then the forwarding game in the single shot has at least 2 S2(t k ) equilibria, in which:

• node 1 sends all its packets, and forwards any number of node 2's packets between 0 and S 2 (t k ) (all the probability assignments to F 1 (t k ) have the same payoff, leading to the lower bound on the number of equilibria,

• node 2 actions are conditioned by the value of α 2 and by the distribution on the type of node 1.

The first point follows directly from the definition of the payoff when α 1 is equal to 0: W i (t k ) does not influence the result, which is maximized when

G i (t k ) = 1.
Player 2, on the contrary, can raise her payoff by setting the value of F i (t k-1 ) to 0 in every frame. After this, if α 2 is near 0, then in all the equilibria she will try to send as much packets as possible, being G 2 (t k ) the important part of her satisfaction. When α 2 is closer to 1, the number and the quality of equilibria depends on her prior belief about player 1: if she thinks that the probability of having a class 1 neighbor is high, then there are more "efficient" equilibria, in which player 2 sends more packets than the one destined to player 1, trying to benefit by the power of her neighbor.

Properties of the model

The game theoretical model we presented induces some basic considerations at this point. Selfishness is described and motivated by the a priori lack of thrust among nodes: without any enforcing pol-Figure 1: A two nodes ad hoc network.

icy, and in presence of players4 that care at least a minimum about energy, it is not possible to count on the others' help, and the best strategy (in order to not be used without any advantage for her) is to maximize the personal payoff in a selfish way by being the first that does not help others. This fact, of course, rouses a chain reaction, resulting in every player thinking just to herself, and in a network working just for one hop communications. Note that the situation is dramatically similar to a multi player prisoner's dilemma ( [START_REF] Luce | Games and Decisions[END_REF]). It is of course an extreme case, in which avarice and uncertainty leads to self destruction. A first criticism that could be moved to our proposal is the presence of frames, i.e. groups of time slots, that introduce synchrony in a highly decoupled system. In fact we introduced the frame concept just for presentation clearness, but it would be possible to build the same model without them.

In fact, in all the proofs we present in this paper, frames are relative to each player, who evaluates what happened using data she collected by herself. Moreover, another possible solution to avoid frames, is to use very short time slots. In every time slot, a node can have to send one packet, and it has to decide whether to send it or not, and whether to forward its neighbours' traffic it eventually received during previous time slot. The more the packet is assumed small on average, the smaller is the time slot duration, leading to a continuous time model to the limit. Frames contain a variable number of time slots, and the duration of frame k can be set to the number of time slots during which communi-cating nodes (sources, relays and destinations) do not move away from their neighborhood. Our model is very general. In fact the space of actions, for a single frame, is very loosely limited by simple energetic considerations (energy spent during that frame must not exceed the node energetic capacity), although it would be possible to refine the decision space with many constraints, arriving to a less general solution.

The power of this model is that it allows to design simple mechanisms that enforce cooperation during the network lifetime. We are not claiming that revolutionary solutions come out, since the only possible remedies for a node, at this level, is to watch what its neighbors are doing, and to help them as long as they help it (exactly as in [START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes -Fairness In Distributed Ad-hoc NeTworks[END_REF][START_REF] Michiardi | Core: A collaborative reputation mechanism to enforce node cooperation in mobile ad hoc networks[END_REF][START_REF] Srinivasan | Cooperation in wireless ad hoc networks[END_REF]). We claim that it is possible to study optimal behaviors (has a node to be punished forever or not?), while respecting heterogeneity in power capabilities. It is possible to characterize a wide range of enforceable strategies, and it is possible to study in which cases these will succeed without any exception (i.e. the minimum number of nodes in a network employing such a strategy to have a cooperative network). It is also partly possible to analyze already presented solutions, in order to better understand why they work (if they do work), and to show possible enhancements.

Finally, we find very interesting and innovative a feature pointed out by this model: the satisfaction of every node is maximized not only by forwarding less packets for others, but also avoiding to send personal packets if, for some reason, it is believed that neighbors are not going to forward them. This aspect offers a great potentiality at a protocol design level: if it is possible to "introduce" nodes to themselves, i.e. to make them know each other in some way (we are thinking about knowing the energy class every node belongs to), then it is possible to charge every neighbor with a reasonable amount of packets to forward, in order to not overload them, but over all in order to avoid an almost sure packet loss. This fact was evident from the example in Section 3.3: in presence of two energy classes, the equilibria are more efficient when the prior belief of the low powered player is nearer to the real situation. However, this is very difficult because of the mobility, that makes very difficult to really know other nodes, often encountered in rapid and momentary encounters, and because of selfishness, that pushes nodes towards wariness, since other nodes can be pretending to be weaker than they are in the reality to save energy. It is possible to prove the following Theorem 4.1 During a single frame t k , if ∀i ∈ {1, . . . , n}.α i = 0, in all the Nash equilibria exhibited by the system, ∀j ∈ {1, . . . , m}, ∀k.F i (t k ) = 0.

It follows from the payoff definition: since W i (t k ) affects the payoff for all the players, everyone gets more satisfaction by setting F i (t k ) to 0. In other words: selfishness is the only strategy that can naturally arise in a single frame communication! It is, however, possible to overcome this effect when introducing repetition, as we will see in Section 6.

Analysis of mechanisms

It is possible to capture some of the strategies presented in Section 2 with the model we just presented, in order to show its generality and power.

In the NUGLETS proposal ( [START_REF] Buttyan | Enforcing service availability in mobile ad-hoc wans[END_REF][START_REF] Buttyan | Stimulating cooperation in self-organizing mobile ad hoc networks[END_REF]) a model very similar to our is used, in which selfishness is formally explained with a double goal to optimize for every node (throughput versus lifetime), but having as a constraint in every node that the number of sent packets can not be greater that the number of forwarded packets plus a system dependent constant amount. This should be a strategy (to be enforced, since it is not a sequence of equilibria, as it is easy to show), and not a personal diktat (clearly, a node would prefer to send much more packets than forwarded ones). An interesting point of this proposal is the locality of informations needed by every node: the absence of a watchdog (or similar) mechanism is surely a good feature, since the assumption of bidirectional communications, needed by such a mechanism, is not realistic and widely criticized. However, from another point of view it causes the necessity to embed the desired forwarding strategy, a sort of "consume the same amount of resources you produce", in a tamper-proof hardware module, which can be an obstacle for its application. The same strategy, under the assumptions we made in this paper, can be enforced (See Section 6 for details) under our model, leaving absolute freedom to nodes on how to accumulate credits and to spend them 5 . The NUGLETS solution can be seen as a special case of the model we are presenting, with a single energy class (n = 1) and equal evaluation of energy and throughput (α = 1 2 ). The reputation concept present in CORE and CONFIDANT ( [START_REF] Michiardi | Core: A collaborative reputation mechanism to enforce node cooperation in mobile ad hoc networks[END_REF][START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes -Fairness In Distributed Ad-hoc NeTworks[END_REF]) can be easily mapped in our model. In the CONFIDANT protocol a node is good (and then in the network) or bad (and then isolated), without mid tones 6 . It is equivalent to the following strategy: cooperate with a node until it cooperates, and when it stops, punish it forever blocking its communications. The strategy is too strict: an everlasting punishment surely discourages selfishness, but also reduces the network performances, and does not admit temporary failures, due for example to congestion or energy problems. Moreover, while in the model presented in this paper (see Section 3.2) nodes have access to informations just about neighbors, in [START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes -Fairness In Distributed Ad-hoc NeTworks[END_REF] a global knowledge is needed, and when a selfish node is discovered, good nodes arranged in a friendship network, start warning themselves with alarm messages, adding overhead (claimed by authors to be low), and enabling malicious nodes to spread false informations about well behaving nodes. From a theoretical point of view, the proposed solution is not evolutionary stable ( [START_REF] Axelrod | The evolution of cooperation[END_REF]): if nodes are seen as a population of randomly interacting players, than TIT FOR TAT and variants are an optimal behavior, in the sense that, on average, players adopting it score better payoffs, and ensure themselves a high survival probability, while deviating players do not survive (and for this reason do not have the opportunity to transmit their genes to following generations). The strict strategy at the base of the CONFIDANT protocol lacks of reactiveness, which is a necessary condition for a strategy to be evolutionary stable (see [START_REF] Axelrod | The evolution of cooperation[END_REF]). We think the model at the base of the CORE solution is richer, and the proposed mechanism is theoretically more solid. In fact, a strategy of temporary punishment is analyzed: the reputation every node keeps of its neighbors is an elegant way to model uncertainty in understanding whether a node misbehaved or not. A single deviation observed is not taken as a sure fact, but lowers the reputation of the presumed guilty. After a number of consecutive inexplicable actions 7 , reputation falls under a critical level, and it can be assumed that, with high probability, that node is selfish (or even malicious, in some cases) and can be punished. However, if that node starts behaving well, after a certain time it will have a good enough reputation, and it will be able to work in the network. In both cases, we have again a single energy class (then n = 1) and α = 0, i.e. high evaluation of throughput (selfishness is taken as an obvious fact, but not formally described), but a different strategy is enforced. Finally, it is also possible to give a loose mapping of the GTFT mechanism ( [START_REF] Srinivasan | Cooperation in wireless ad hoc networks[END_REF]). The concept of session present in that proposal (see Section 2 for a reminder) can be simulated imposing that frame duration is equivalent to session duration, and that in each frame just one session is served. This is less general than our model (in fact we allow more sessions to be active during every frame). The next step is to limit the action space of forwarder nodes to {yes,no}, i.e. to accept all the packets that it will receive or to reject them. It is not important, at the model level, if a session in which some forwarder is not going to help is always stopped (as in [START_REF] Srinivasan | Cooperation in wireless ad hoc networks[END_REF]) or is always started (as in this paper) 8 . The authors studied the problem with n energy classes, and with α = 0, but considering energy constraints, transformed in constraints on the power expense rate for every energy class. Again, we are loosing some generality, since we assumed that nodes in the same energy class can have different battery capacities. Authors compute the maximum ratio of sessions to be accepted, in order to have a system working at a Pareto efficient point, and they give a mechanism that enforces that strategy (but they need to know in advance the rate to be enforced). They prove the correctness of their solution by means of game theory, as it is possible with our model.

As pointed out in Section 3.2, communications in an ad hoc network can be modeled as an infinitely repeated game. This kind of models can describe situations in which the number of rounds is finite (as it happens in a mobile ad hoc network, where nodes arrive, leave and move away changing neighborhood), but there is not the knowledge on when the game is going to stop. Every node can not be sure that it is going to play the next round with different opponents, since every node is moving. There are basically two methods to enforce a desirable strategy in a repeated game: punishing deviators, or encouraging who is adopting it, making deviations not interesting to profit maximizer players. We believe that in the case of mobile ad hoc networks it is better to consider punishment based techniques for two reasons:

• rewarding strategies are not easily extensible to scenarios in which malicious entities play. These players are not, in fact, interested in rewards, while they are sensitive to punishments (if they are excluded from network usage, they can not damage other nodes,

• since a unique commodity is exchanged at this level, i.e. forwarding of traffic, the boundary between a punishment and a reward is extremely vague: we are not able to think about a reward that is not a non-punishment, or a punishment which is a not a non-rewarding.

Since we chose the road of punishment for deviations, we can start investigating what is the set of strategies that can be enforced with the solid background of Nash folk theorems ( [START_REF] Osborne | A Course in Game Theory[END_REF], Chapter 8). These theorems offer us a precise way to escape from the only theoretical equilibrium point, which is the non cooperation, as we shown in Section 4 9 . Two first results can be considered negative. Recalling that the discount factor δ can be assumed equal to the probability of having again a node in the neighborhood after a frame (it is a measure of mobility), it is possible to prove the following Theorem 6.1 It is possible to enforce a strategy different from non cooperation only for δ close enough to 1, or for nodes exchanging a huge amount of packets.

A deviation during frame t k advantages player i in the following frame, resulting in a payoff increment of:

F i (t k ) j∈Ni(t k+1 ) (F j (t k+1 ) + R j (t k+1 )) S i (t k )[S i (t k ) + F i (t k )]
In order to be effectively punished, her neighbors can stop traffic from i for L frames, resulting in a loss of payoff for her of:

L l=2 δ l-1 (u i (t k+l ) -u i (t k+l ))
where u i (t k+l ) is the payoff as defined in 1, with j∈Ni(t k+l ) F i j (t k+l ) = 0, and u i (t k+l ) is the payoff without punishment. For the punishment to be an effective deterrent, the loss of payoff caused by punishment must be greater than the gain following from a deviation, and it is not hard to note that it can happen just if:

• δ is near to 1, because otherwise the punishment decays too fast,

• S i (t k+l ) is very high, making the interruption of packet forwarding extremely costly for i.

This theorem formally reflect an obvious fact: if we want mechanisms based only on local information, then it is possible to enforce cooperation only if nodes do not move too much, situation modeled by a high value of δ (see Section 3.2). Informally, this holds because the only way to enforce a behavior which is not a Nash equilibrium of the single shot game is to punish deviating nodes blocking their communications for enough frames, in order to make loss derived from punishment higher than gain obtained by non cooperation. If with high probability a node will not have enough time to punish a misbehaving neighbor, then it is not possible to enforce anything. This is the price paid for local knowledge: if it was possible to spread information about misbehaving nodes, then a moving node would be punished by all the neighbors it encounters, making punishment an effective deterrent. However, if from one side it is possible to study the set of enforceable policies in a not too mobile ad-hoc network (in case of small network, it is not a restrictive hypothesis), from the other side it is interesting to see how evolutionary theory comes in our help. Lemma 6.2 It is not possible to force a node to forward more packets than it sends on average.

From Nash folk theorems applied to δ-discounted repeated games, we know that an action, in order to be imposed on the players, must be enforceable, i.e. at least as good for her than all the other actions. In our case, cooperation is an enforceable action, only if the amount of traffic others forward for a node is at least equal to the amount of traffic it forwards for others, on average, as it follows from the payoff definition in 1 (Section 3.2.) Here goes the theory. Unfortunately, in a real world scenario this could be not enough, since the best strategy could be to cooperate until the neighborhood of a node is stable, and start being selfish when it start changing neighbors frequently. For this reason, it is better to use tools borrowed from evolutionary game theory. In [START_REF] Axelrod | The evolution of cooperation[END_REF] it is shown how cooperation can arise in populations of randomly interacting players. The setting is the following: let us suppose that randomly picked nodes start playing the game we introduced in Section 3.2 for a limited number of rounds (eventually knowing an upper bound on the number of plays). After then, another random matching is produced, and so on. The theory tells that even in such an anarchic and chaotic setting, there exist strategies that are stable, and that on average permit the survival of players adopting them. As an example, in [START_REF] Axelrod | The evolution of cooperation[END_REF] it is presented the TIT FOR TAT strategies in a prisoner's dilemma game played in tournaments. In such a strategy, a players start not confessing (and then cooperating with her opponent), and then in every following round she repeats the move her opponent played in the previous round. It is shown that this is a winning strategy, in the sense that almost always the players adopting it win the tournament, and always they arrive in the very first places, no matter how complex are the other players' strategies. It is shown that this result holds because TIT FOR TAT is:

• gentle, i.e. start with cooperation. In fact, players that start with non cooperation are penalized more easily by others, resulting in aggregate results very poor (note that the always confessing strategy wins over TIT FOR TAT in a match, but in the tournament performs very bad),

• reactive, i.e. it changes with the environment, and very fast. A hostile move from an opponent must be punished very quickly, in order to avoid to be exploited for too much kindness, but a return to cooperation must be awarded with reciprocity, in order to benefit from the remainder of the game,

• not envious, i.e. it do not try to destroy the opponent, it just tries to gain the maximum with the most rewarding, even if dangerous, move.

It is then possible to prove the following Theorem 6.3 Cooperation can be enforced in a mobile ad hoc network, provided that enough members of the network agree on it, and if no node has to forward more traffic that it generates.

The second hypothesis is motivated by Lemma 6.2. The first one follows from the observation that, in a population, a new strategy can invade an old one just if in the long run it holds a better payoff to players adopting it. In fact, if in a network just a very few nodes agree on cooperation, and are spatially sparse, while all the others are selfish nodes, cooperating nodes will meet with low probability, and they will not have the opportunity to raise their payoff with mutual cooperation. Instead, they will pass the time fighting against selfish nodes, and losing.

As an example, we return to the two nodes, two energy classes case shown in Section 3.3, showing how it is possible to enforce the maximum possible cooperation in this scenario. An optimal strategy for player i is the following (the other player is always indicated as j, and some index has been omitted because useless):

Do ut des: During frame t 0 , send all the data you produced, and receive all packets j sent. During following frames, send a number of packets that j should be able to forward (S i (t k ) ← max(F j (t k-1 ), l<k (S j (t l )-F j (t l ))), and if you are not punishing j, forward for him as many packets as you can (min(R i (t k ), l<k (S i (t l ) -F i (t l ))). Moreover, record how many packets j forwards. If the difference between sent packets (from frame 0 up to now) and forwarded packets (same temporal extension) is more than a constant c, then punish j, not forwarding for him packets, until it starts cooperating.

This very simple technique leads to cooperation, and is safe against selfish nodes. It is possible to show that, if node i uses it, node j can not obtain more service than it gives (plus a constant), no matter what strategy it uses (it is a Nash equilibrium). This strategy is obviously unfair.

Conclusions

We presented a model to describe interaction between nodes in mobile ad hoc networks, with particular attention to the forwarding of packets. Our model is general enough to describe cooperation enforcement mechanism that have been proposed in literature in recent times, and it can be used to understand at what extent a node can be selfish, and how much can we pretend from it.

The model showed to be robust and very powerful for understanding aspects of ad hoc networks that were assumed as true untill now. However, there are several aspects that we want to further consider and investigate. Among them:

• how strict and realistic are our assumptions and how it is possible to obtain the necessary information, even in an approximated way

• to realise and implement a fair strategy

• how to introduce the mobility of the network by means of evolutionary processes

• how to accept less strict constraints to accept less drastic strategies (as in [START_REF] Michiardi | Core: A collaborative reputation mechanism to enforce node cooperation in mobile ad hoc networks[END_REF][START_REF] Michiardi | Game theoretic analysis of security in mobile ad hoc networks[END_REF]).

The neighborhood of a node i is defined, as usual, as the set of nodes that can send packets to i, or from which i can receive, in just one hop.

It is a tradition in game theory to refer to players as female entities.

As explained in Section 3.1, the energy class a node belongs to is a secret information.

We start here using the terms "node" and "player" interchangeably.

In fact it is not necessary to introduce the virtual currency nor the counters, which are the core of[START_REF] Buttyan | Enforcing service availability in mobile ad-hoc wans[END_REF][START_REF] Buttyan | Stimulating cooperation in self-organizing mobile ad hoc networks[END_REF].

[START_REF] Luce | Games and Decisions[END_REF] Authors claim that it is possible to have multiple levels of reputation, and re-integration of nodes that start behaving well, but in the paper this is not analyzed.

Relying on a watchdog mechanism it is not possible to assert that a missing observation of a forward implies that some messages were not effectively forwarded.

It is a vital question in real cases, of course, since it avoids not needed energy wasting.

We are not interested in cases of networks mainly composed by nodes not energy constrained.


Pietro Michiardi

Refik Molva

A Game Theoretical Approach to Evaluate Cooperation Enforcement Mechanisms in Mobile Ad hoc Networks

Introduction

An ad hoc network is a collection of wireless mobile hosts forming a temporary network without the aid of any established infrastructure or centralized administration. In such an environment, it may be necessary for one mobile host to enlist the aid of other hosts in forwarding a packet to its destination, due to the limited range of each mobile host's wireless transmissions. Indeed, as opposed to networks using dedicated nodes to support basic networking functions like packet forwarding and routing, in ad hoc networks these functions are carried out by all available nodes in the network.

However, there is no good reason to assume that the nodes in the network will eventually cooperate, since network operation consumes energy, a particularly scarce resource in a battery powered environment like MANET. The lack of cooperation between the nodes of a network is a new problem that is specific to the ad hoc environment and goes under the name of node selfishness. A selfish node does not directly intend to damage other nodes by causing network partitioning or by disrupting routing information (mainly because performing these kind of attacks can be very expensive in terms of energy consumption) but it simply does not cooperate to the basic network functioning, saving battery life for its own communications. Damages provoked by a selfish behavior can not be underestimated: a simulation study available in the literature [START_REF] Michiardi | Simulation-based Analysis of Security Exposures in Mobile Ad Hoc Networks[END_REF] shows the impact of a selfish behavior in terms of global network throughput and global communication delay when the DSR [START_REF] Johnson | Dynamic Source Routing in Ad Hoc Wireless Networks, Mobile Computing[END_REF] protocol is used. The simulation results show that even a little percentage of selfish nodes leads to a severe degradation of the network performances.

Several mechanisms that detect and prevent a selfish behavior are available in the literature [START_REF] Marti | Mitigating routing misbehavior in mobile ad hoc networks[END_REF][START_REF] Buttyan | Nuglets: a virtual currency to stimulate cooperation in selforganized ad hoc networks[END_REF][START_REF] Buchegger | Nodes Bearing Grudges: Towards Routing Security, Fairness, and Robustness in Mobile Ad Hoc Networks[END_REF][START_REF] Buchegger | Performance Analysis of the CONFIDANT Protocol[END_REF][START_REF] Yang | Self-Organized Network-Layer Security in Mobile Ad Hoc Networks[END_REF]: we take as a reference the CORE [START_REF] Michiardi | Core: A COllaborative REputation mechanism to enforce node cooperation in Mobile Ad Hoc Networks[END_REF] mechanism. In CORE, node cooperation is stimulated by a collaborative monitoring technique and a reputation mechanism. Each node of the network monitors the behavior of its neighbors with respect to a requested function and collects observations about the execution of that function. If the observed result and the expected result coincide, the observation will take a positive value, otherwise it will take a negative value. Based on the collected observations, each node computes a reputation value for every neighbor. The formula used to evaluate the reputation value avoids false detections (caused for example by link breaks) by using an aging factor that gives more relevance to past observations: frequent variations on a node behavior are filtered out. Furthermore, if the function that is being monitored provides an acknowledgement message (e.g., the Route Reply message of the DSR protocol), reputation information can also be gathered about nodes that are not within the radio range of the monitoring node. In this case, only positive ratings are assigned to the nodes that participated to the execution of the function in its totality. The CORE mechanism resists to attacks performed using the security mechanism itself: no negative ratings are spread between the nodes, so that it is impossible for a node to maliciously decrease another node' s reputation. The reputation mechanism allows the nodes of the MANET to gradually isolate selfish nodes: when the reputation assigned to a neighboring node decreases below a pre-defined threshold, service provision to the misbehaving node will be interrupted. Misbehaving nodes can, however, be re-integrated in the network if they increase their reputation by participating to the network operation.

An original approach to formally assess the security features of a cooperation enforcement mechanism such as CORE is based on an economic model. In this model, service provision (e.g. the execution of the packet forwarding function) preferences for each node are represented by a utility function. As the name implies, the utility function quantifies the level of satisfaction a node gets from using the network resources. Game-theoretic methods are applied to study cooperation under this new model. Game theory is a powerful tool for modeling interactions between selfinterested users and predicting their choice of strategy. Each player in the game maximizes some function of utility in a distributed fashion. The games settle at a Nash equilibrium if one exists, but, since nodes act selfishly, the equilibrium point is not necessarily the best operating point from a social point of view.

In this paper we propose two methods to evaluate the effectiveness of the CORE mechanism based on a cooperative game approach and a non-cooperative game approach: the results obtained using the first approach define a lower bound on the number of legitimate nodes in an ad hoc network when the CORE mechanism is adopted while the second approach describe the asymptotical behavior of a selfish node that is controlled by CORE.

Cooperative games approach

Our first analysis relies on a preference structure in which players, along with their own absolute payoff, are motivated (non-monotonously) by the relative payoff share they receive, i.e. how their standing compares to that of others. With this, we rely on the ERC model by [START_REF] Bolton | ERC: a theory of equity, reciprocity, and competition[END_REF] but use a full information framework.

Let the (non-negative) payoff to node i be denoted by y i , i, . . . , N, and the relative share by

∑ = j j i i y y σ
. The utility function is given by:

) ( ) ( i i i i r y u σ β α + where 0 , ≥ i i β α
and u() is differentiable, strictly increasing and concave, and r() is differentiable, concave and has its maximum in

N i 1 = σ
. Throughout this paper we assume that nodes' disutility from disadvantageous inequality is larger if the node is better off than average, i.e.

      ∈ ∀ + ≤ - N x x N r x N r 1 , 0 ), 1 ( ) 1 ( .
In this section we study a simple symmetric N-node prisoner's dilemma where each mobile node can cooperate, 'c', or defect, 'd'. In terms of the node misbehavior problem: the node either correctly executes the network functions or it doesn't. Let the total number of cooperating nodes be denoted by k. For any given k, the payoff to a node is given by B(k) if the node defects (tries to free-ride). If a node plays cooperatively, it must bear some additional costs C(k). Its payoff is therefore given by B(k) -C(k). We assume decreasing marginal benefits for a node if the number of mobile nodes rises, i.e. B(k) is increasing and concave. Furthermore, the total cost of cooperation, kC(k), increases in k.

In order to generate the standard incentive structure of a PD game, we assume that B(k+1) -B(k) < C(k+1), i.e. playing cooperatively reduces the absolute payoff, given an arbitrary number of 'c'nodes. To make cooperation more attractive from both the social and the individual point of view, we make the following assumptions: ( 1)

) ( ) ( ) 1 ( ) 1 ( ) 1 ( k kC k B N k C k k B N - ⋅ ≥ + + - + ⋅ "Socially desirable" (2) ) ( ) ( ) 1 ( ) 1 ( k C k B k C k B - ≥ + - +
"Individually desirable" Furthermore, we assume that payoffs for both cooperating and defecting nodes are non-negative for all k. The reputation measure introduced in [START_REF] Michiardi | Core: A COllaborative REputation mechanism to enforce node cooperation in Mobile Ad Hoc Networks[END_REF] is compliant with the incentive structure given by ( 1) and (2). Cooperation is made attractive from an individual point of view because the cost of participating to the network operation is compensated with a higher reputation value, which is the pre-requisite for a node to establish a communication with other nodes in the network. On the other side, the more nodes have a reputation value that allows them to communicate, the more the cost for participating to the network operation is compensated by a more connected network that increases the nodes' benefits for cooperating.

Next, the Nash equilibria in the one shot PD game under the particular assumption that nodes choose simultaneously is analyzed. Assume that k nodes, aside from node i, play cooperatively. Then node i choose to play 'c' if and only if:

(3) [ ] [ ]       - ⋅ + ≥       + + - + ⋅ + - + + + - + ) ( ) ( ) ( ) ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( k kC k B N k B r k B u k C k k B N k C k B r k C k B u i i i i β α β α This is equivalent to node i playing 'c' if: (4) ) (k i i δ β α ≤ where [ ] [ ] ) 1 ( ) 1 ( ) ( ) ( ) ( ) ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) ( + - + -       - ⋅ -       + + - + ⋅ + - + = k C k B u k B u k kC k B N k B r k C k k B N k C k B r k δ
In order to find feasible coalition sizes, we must therefore study conditions in which ( ) k δ is positive. The details concerning the determination of the equilibrium point can be found in [START_REF] Michiardi | Game theoretic analysis of security in mobile ad hoc networks[END_REF]. The validity of assumption ( 1) and ( 2) made on the payoff structure implies that the condition 0 ) ( > k δ is necessary and sufficient to state that, for any given vector of types, if a node plays 'c' at the equilibrium, then, in total, at least half of the nodes cooperate.

Non-cooperative games approach

In a second approach, our analysis focused on the identification of preference relations specific to the selfishness problem and the design of a utility function that satisfies this structure. The utility function used to model the selfishness problem takes into account the energy that a node spends for the purpose of its own communications and the energy that the node has to use when participating in the routing protocol and when relaying data packets on behalf of other nodes. Node behavior is represented as the percentage of energy a node dedicates for its own communications and the percentage of energy spent for network operation. Under these assumptions the utility function used to study the strategy chosen by a node is the following:

(5) ( ) ( ) PF R i i self ni E E f b b E bj bi u + ⋅ ⋅ - - ⋅ = 1 ) , (
where b i corresponds to the strategy (behavior) adopted by node n i , and b j is a given strategy selected by all the other nodes in the network: b i is the variable of equation [START_REF] Lange | Cooperation in international environmental negotiations due to a preference for equity[END_REF]. The term b identifies the percentage of energy consumed by a node and ranges from 0 to 1: when a node selects b equals to zero it will use all the available energy for its own communications. The other factors that appear in [START_REF] Lange | Cooperation in international environmental negotiations due to a preference for equity[END_REF] are respectively:

recv recv send self E k n E E n E ) 1 ( ) ( + ⋅ = + ⋅ =
, energy spent for own communications ( )

recv send j R E E m t n b E + ⋅ - = ) 1 (
, energy spent for participating to the routing protocol ( )

recv send j PF E E n t b E + ⋅ ⋅ ⋅ - = ) 1 (
, energy spent to relay packets for neighboring nodes

recv send E k E ⋅ =
, respectively the energy spent for sending and receiving one packet n , the number of packets to send t , the number of neighboring nodes of node n i m, the average number of messages after which a new route discovery phase is needed f , is a multiplicative factor that models the non-linearity of the second summand of (5)

A "rational" selfish node always tries to maximize equation ( 5): the maximum determines the strategy b i chosen by that node, which is always to defect, by selecting the total amount of energy dedicated to other nodes close to zero. Since nodes act selfishly, the equilibrium point is not necessarily the best operating point from a social point of view and pricing emerges as an effective tool to enforce the cooperation among the nodes because of its ability to guide node behavior toward a more efficient operating point. The pricing factor that has been chosen to settle the game at a more socially desirable operating point is the reputation value calculated within the execution of the CORE mechanism. The utility function presented in ( 5) is modified as follows:

(6)

( ) ( ) ni PF R i i self ni r E E f b b E bj bi u ⋅ + ⋅ ⋅ - - ⋅ = 1 ) , (
where the term r ni corresponds to the normalized reputation value assigned to node n i and dynamically evaluated by its t neighbors depending on the past strategy adopted by node n i . The use of a pricing factor modify the position of the maximum of equation ( 6) with respect to equation ( 5) evaluated in the same circumstances. By dynamically modifying the position of the maximum, it is possible to impose a selfish node to change its strategy to a fair behavior, as it is possible to see in Figure 1.

The first graph shows the reputation evaluated by the t neighboring nodes of node n i : the reputation value depends on the behavior of node n i in the past observations. The second graph depicts the strategy chosen by the selfish node versus time: in a first moment, the node selfishness is still not compensated by the reputation mechanism and the strategy chosen by the node falls to zero (i.e. a pure selfish behavior). However, as soon as the node behavior is detected to be selfish the node reputation starts to fall: a "rational" selfish node will then chose a new strategy that issues from the maximization of equation ( 6) and that tries to compensate the loss in the reputation factor.

The strategy selection phase stabilizes asymptotically to a fair position where half of the nodes' energy is used to cooperate with other nodes in the network operation.

Conclusions

This paper introduces a new approach to investigate on the characteristics of cooperation enforcement mechanisms designed for mobile ad hoc networks. We have shown that the ad hoc paradigm can be modeled using different approaches that have been developed for game theory. When applied to the CORE mechanism, the two approaches presented in this paper allowed us on one side to define a lower bound to the number of cooperating nodes in a network that use CORE and, on the other side, to validate that the reputation technique presented in [START_REF] Michiardi | Core: A COllaborative REputation mechanism to enforce node cooperation in Mobile Ad Hoc Networks[END_REF] is a valid tool to obtain an asymptotically fair behavior of the nodes of a MANET that uses CORE as a mechanism to stimulate cooperation.

Figure 1 .

 1 Figure 1. Node behavior when CORE is adopted in the network.


A mixed GPC-H ∞ robust cascade position-pressure control strategy for electropneumatic cylinders Lotfi Chikh † , Philippe Poignet ‡ , Franc ¸ois Pierrot ‡ and Cédric Baradat † Abstract-A robust cascade strategy combining an outer position predictive control loop and an inner H∞ pressure control loop is proposed and tested on an electropneumatic testbed for parallel robotic applications. Two types of cylinders are tested, the standard double acting cylinder and the rodless one. A position/pressure difference (or force) strategy is developed and implemented. As the behavior of the nonlinear cylinders is nonlinear, a feedback linearization strategy is adopted. A Generalized Predictive Controller (GPC) is synthesized for the position outer loop and a constrained LMI based H∞ controller is synthesized for the pressure inner loop. Experimental results show the feasibility of the control strategies and good performances in terms of robustness and dynamic tracking.

I. INTRODUCTION

The paper is motivated by pick-and-place parallel robotic applications. Within this context, the purpose is to evaluate the position control performances of pneumatic cylinders which are widespread in industry and interesting because of their low cost. Parallel robots have a lot of advantages which have made their success. Particularly, they can be very fast as the actuators are transferred to the base frame reducing considerably the inertia of the moving links. This enables reaching speeds and accelerations which were unbelievable a decade ago. For instance, the fastest industrial robot in the world -the Quattrohas a parallel structure and can reach an acceleration of 15g [START_REF]Adept[END_REF]. Recently, the Par2 robot which is not yet industrialized has reached 43g while keeping a low tracking error [START_REF] Pierrot | Above 40g acceleration for pick-and-place with a new 2-dof pkm[END_REF]. However, a major obstacle for parallel robot expansion is their expensive price due to the cost of their motors. In this context, considering other types of actuation such as pneumatic actuators is appealing as they are cheap actuators with low maintenance costs, and with a good force/weight ratio. As a major obstacle of industrial use of pneumatic actuation in robotics is the difficulty in their control, this paper focuses on that topic.

Numerous techniques have been studied in literature and among them a large part concerns robust control. Robust controllers are mandatory to deal with disturbances and uncertainties and to ensure high precision positioning. They have been applied as a nonlinear feedback using sliding modes [START_REF] Girin | Positionpressure robust control of an electropneumatic actuator[END_REF] [4] [START_REF] Van Damme | Sliding mode control of a 2-dof planar pneumatic manipulator[END_REF] or adaptive control techniques [START_REF] Zhu | Adaptive robust posture control of a parallel manipulator driven by pneumatic muscles[END_REF], [START_REF] Xiaocong | Integrated direct/indirect adaptive robust posture trajectory tracking control of a parallel manipulator driven by pneumatic muscles[END_REF] or by using linear robust control techniques such as H ∞ control [START_REF] Osuka | H infinity control of a certain nonlinear actuator[END_REF] [START_REF] Kimura | H infinity control with minor feedback for a pneumatic actuator system[END_REF] after feedback linearization [START_REF] Isidori | Nonlinear Control Systems[END_REF] [START_REF] Michel | Flatness and defect of non-linear systems: introductory theory and examples[END_REF]. The major drawback of nonlinear controllers is the difficulty in the synthesis of the control law and the high computational amount. In case of feedback linearization with position as a control output, a zero dynamic exists and there is no global proof of its stability [START_REF] Brun | Commandes linéaires et non linéaires en électropneumatique[END_REF]. In this paper, a novel robust cascade strategy which combines an outer position predictive controller and an inner H ∞ pressure controller is proposed. The advantage of the proposed strategy is a simplified control synthesis as only linear robust controllers are implemented. There is no remaining zero dynamic as feedback linearization is applied only for the pressure inner pressure loop. At the same time cascade control enables to make tracking control of two outputs in a SISO (Single Input Single Output) manner. A Generalized Predictive Controller (GPC) is synthesized for the outer loop. As far as we know, only two experimental studies of GPC on pneumatic cylinder have been carried out so far [START_REF] Song | Improved control of a pneumatic actuator pulsed with pwm[END_REF] [START_REF] Norgaard | Intelligent predictive control of nonlinear processes using neural networks[END_REF]. The model used in [START_REF] Song | Improved control of a pneumatic actuator pulsed with pwm[END_REF] is a linear one which limits greatly the performances of the controller. In [START_REF] Norgaard | Intelligent predictive control of nonlinear processes using neural networks[END_REF], the authors used a model estimation based on Neural network theory [START_REF] Norgaard | Intelligent predictive control of nonlinear processes using neural networks[END_REF]. No application of GPC based on an explicit nonlinear model has been found in literature. In our case, the linearization allows to obtain an explicit solution to the predictive optimization problem and the obtained controller is easy to implement. Another intuitive motivation for using predictive theory in pick-and-place robotic applications is that most trajectories are determined a priori and therefore, future trajectory is known. For the inner pressure loop, a constrained H ∞ controller is developed based on LMI optimization [START_REF] Gahinet | The lmi control toolbox[END_REF] [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF]. In addition to the classical advantages of H ∞ control [START_REF] Duc | Commande Hinf et mu-analyse un outil pour la robustesse[END_REF] [18] in terms of robustness, disturbance rejection, systematic synthesis of MIMO controllers and powerful combination of both frequency domain synthesis and state space synthesis, the LMI approach enables the addition of constraints in an intuitive manner. Therefore, pole placement constraints have been added to the H ∞ performances in order to have a better control of the transitory temporal behavior of the pressure controller.

This paper is organized as follows. Section II presents the versatile electropneumatic testbed for robotic applications and its nonlinear modeling. Section III deals with the control of the cylinders. After introducing the feedback linearization equations, both of GPC controller background and LMI based H ∞ multi-objective approach are presented. The cascade strategy which combines these two control techniques is then introduced. Finally in section IV, the robust cascade strategy is implemented experimentally and various control tests, including robustness tests, are presented and analyzed.

II. EXPERIMENTAL PNEUMATIC TESTBED AND NONLINEAR MODELING

In the long term, our aim is to design efficient parallel robots which rely on pneumatic actuation with robust control: the moving arm of this testbed is very similar to the arms used for various parallel robots such as Delta or Quattro robots [START_REF]Adept[END_REF] which is represented in Fig. 2. At its extremity, different masses can be attached for robustness tests of the controllers as the load varies. The proposed setup shown in Fig. 1 replaces expensive motor-and-gears system by low-cost pneumatic actuator. Three types of actuators are available here. The first one is a standard double acting cylinder 1 which is very widespread in industry. It is one of the cheapest pneumatic actuators and has been largely studied in literature ( [START_REF] Sawodny | Aspects of the control of differential pneumatic cylinders[END_REF], [START_REF] Xiang | Block-oriented approximate feedback linearization for control of pneumatic actuator system[END_REF], [START_REF] Ilchmann | Pneumatic cylinders: Modelling and feedback and feedback force-control[END_REF] and [START_REF] Brun | Commandes linéaires et non linéaires en électropneumatique[END_REF]). The second one is the rodless cylinder 2 which has the advantage of being symmetric, that is to say, the maximum force provided in one direction equals the one in the inverse direction. Another important advantage for the rodless cylinder is that it has generally a larger stroke than the double acting one. Finally, Pneumatic Artificial Muscles 3 (PAMs) are also installed in the setup but not presented in this paper. It seems that PAMs may be naturally advantaged in rehabilitation comanipulation tasks implying friendly robot designs [START_REF] Thanh | Intelligent phase plane switching control of pneumatic artifical muscle manipulators with magneto-rheological brake[END_REF]. It is a common thing to use PAMs in agonist/antagonist way for angle movement generation or torque control. More details about PAMs can be found in [START_REF] Daerden | Pneumatic artificial muscles, actuators for robotics and automation[END_REF] [24] and [START_REF] Van Damme | Sliding mode control of a 2-dof planar pneumatic manipulator[END_REF]. All actuators can be driven by two 5/3-way proportional valves 4 . Three types of sensors are used on the setup; a high resolution incremental encoder, two pressure sensors and two force sensors.The real time prototyping environment is xPC Target T M from Mathworks. In the sequel, we present some key elements of the nonlinear model of the pneumatic cylinders. Every electropneumatic positioning device includes an actuation element (the pneumatic cylinder), a command device (the valve), a mechanical part and position, pressure and/or force sensors. A schematic representation of the electropneumatic system is given in Fig. 3. Supply pressure p s is supposed to be constant. p 0 denotes 1 Double acting cylinder: FESTO DNC 32 320 PPV A 2 Rodless cylinder: FESTO 532448 DGC 32300304132 ZR 3 PAMs: FESTO MAS -20-450N-AA-MC-K 4 MPYE-5-1/4-010-B from FESTO + Fig. 3. Schematic representation of the experimental setup the atmospheric pressure. It is supposed that any variation of the chamber volume or pressure can be described by the polytropic gas law [START_REF] Hildebrandt | A cascaded tracking control concept for pneumatic muscle actuators[END_REF]:

p 1 V γ 1 = p 2 V γ 2 (1)
where p i is the pressure in one of the two cylinder chambers (indexes 1 and 2 are related to two pressure states) and V i is the volume of one chamber, γ is the polytropic constant. The ideal gas equation describes the dependency of the gas mass:

m = pV rT ( 2
)
where m is the gas mass inside the cylinder chamber, T is the air temperature which is considered to be equal to the atmospheric temperature and r is the specific gas constant. Therefore, combining equation ( 1) and ( 2) leads to the pressure dynamic expression:

dp dt = γ V (s) [rT q m (u, p) -p dV ds ṡ] (3)
where u represents the input voltage of the valve, s is the position of the piston in case of the cylinders. q m (u, p) represents the mass flow rate ( dm dt = q m (u, p)). Dynamic effects of the underlying position controller for the valve-slide stroke are neglected. These hypotheses justify why the mass flow is a function of the input voltage and the pressure in the actuator chamber.

The relation between volume and displacement is given by the following equations: V i (s) = V i (0) ± A i s where i refers to one of the two chambers and V i (0) = A i l 2 represents the initial volume. l is the length of the cylinders. A i represents the piston section of each chamber. For the rodless cylinder, sections are symmetric (i.e. A 1 = A 2 ). The valve model has been approximated -after identification-by the following expression (see [START_REF] Belgharbi | Analytical model of the flow stage of a pneumatic servodistributor for simulation and nonlinear control[END_REF] for details):

q m (u, p) = ϕ(p) + ψ(p)u (4)
ϕ and ψ defines 5 th -order polynomials with respect to p.

For the mechanical part, neglecting the friction phenomena and applying Newton's second law lead to:

s = 1 M [A 1 p 1 -A 2 p 2 ] ( 5
)
where M represents the equivalent mass of the moving parts considered at the cylinder side. In the design phase, M is considered as constant.

For cascade control experiments, it is mandatory to determine the force/pressure dependency. This dependency is linear and given by (for standard cylinder):

F standard = A 1 p 1 -A 2 p 2 + F g (6)
where F g is the term which takes into account the gravity effects. For the rodless cylinder, we have the same expression but A 1 = A 2 = A as we have piston area symmetry.

III. CONTROL OF THE ELECTROPNEUMATIC CYLINDERS

In this section, we first present the feedback linearization equations for the cylinders. The approach used here is inspired by differential geometry concepts [START_REF] Isidori | Nonlinear Control Systems[END_REF] and differential flatness theory [START_REF] Michel | Flatness and defect of non-linear systems: introductory theory and examples[END_REF]. Once the linearized system obtained, GPC and LMI based constrained H ∞ control techniques are presented.

A. Feedback linearization equations

It can be easily proved -in case of valve voltage as an input and the pressure difference as an output-that differential flatness criterion is satisfied and that the system is completely linearizable (using differential geometry concepts [START_REF] Isidori | Nonlinear Control Systems[END_REF]). However, when position is taken as a control output, the relative degree is less than the dimension of the system. Therefore the system is not completely linearizable. A nonlinear zero dynamic remains. One of the advantages of the cascade strategy is that it avoids dealing with the zero dynamic.

dp 1 dt = γrT V 1 (s) φ(p 1 ) - γ V 1 (s) p 1 dV 1 ds ṡ + γrT V 1 (s) ψ(p 1 )u dp 2 dt = γrT V 2 (s) φ(p 2 ) - γ V 2 (s) p 2 dV 2 ds ṡ - γrT V 2 (s) ψ(p 2 )u (7)
In these equations, we have considered that u = u 1 = -u 2 which means that the chambers rely on the same pressure source and use a control signal of an opposite sign. If we do the assumption that the valve is symmetric, this means that only one valve can be used for our control scheme which is in fact an important advantage of this approach. This is represented in Fig. 3 where only one valve is used for each cylinder. By replacing the volume variation by its value (ie,

dV1 ds = A = -dV2 ds ) we get: dp 1 dt = γrT V 1 (s) φ(p 1 ) - γA V 1 (s) p 1 ṡ + γrT V 1 (s) ψ(p 1 )u dp 2 dt = γrT V 2 (s) φ(p 2 ) + γA V 2 (s) p 2 ṡ - γrT V 2 (s) ψ(p 2 )u (8)
Pressure difference is given by the following expression:

d dt (p 1 -p 2 ) = [ γrT V 1 φ(p 1 ) - γrT V 2 φ(p 2 ) - γA V 1 p 1 ṡ - γA V 2 p 2 ṡ] f1(s, ṡ,p1,p2) + [ γrT V 1 ψ(p 1 ) + γrT V 2 ψ(p 2 )] f2(s, ṡ,p1,p2) u (9)
Therefore, the control input which linearizes the input/output behavior of the system is given by:

u = [ γrT V 1 ψ(p 1 ) + γrT V 2 ψ(p 2 )] -1 • [u aux -( γrT V 1 φ(p 1 ) - γrT V 2 φ(p 2 ) - γA V 1 p 1 ṡ - γA V 2 p 2 ṡ)] (10)
This leads to the first integrator linearized system:

ṗ1 -ṗ2 = u aux (11)
A pressure controller for the first integrator system based on H ∞ theory is then synthesized in the next section.

B. Multi-objective output feedback pressure control via LMI optimization

An LMI is any constraint of the form:

A(x) = A 0 + x 1 A 1 + . . . + x N A N < 0 (12)
where A 0 . . . A N are given symmetric matrices and x T = (x 1 . . . x N ) is the vector of unknown variables. In [START_REF] Brun | Commandes linéaires et non linéaires en électropneumatique[END_REF], the symbol < refers to negative definite 5 . One way of tuning simultaneously the H ∞ performance and transient behavior is to combine H ∞ and pole placement objectives using LMI optimization techniques. Poles are clustered in regions which can be expressed in terms of LMIs. The class of LMI region defined below has been introduced for the first time by [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF]. It turns out to be suitable for LMI-based synthesis.

Def. LMI Regions. A subset D of the complex plane is called an LMI region if there exists a symmetric matrix α = [α kl ] ∈ R m×m and a matrix β = [β kl ] ∈ R m×m such that:

D = {z ∈ C : f D (z) < 0} (13)
with:

f D (z) := α + zβ + zβ T = [α kl + β kl z + β lk z] 1≤k,l≤m.
For instance, we use a disk LMI region centred at (-q, 0) with radius r. It is defined below [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF]:

f D (z) = -r q + z q + z -r < 0 (14)
The constrained H ∞ problem under consideration can be stated as follows [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF]. Given an LTI plant:

ẋ(t) = Ax(t) + B 1 ω(t) + B 2 u(t) e(t) = C 1 x(t) + D 11 ω(t) + D 12 u(t) y(t) = C 2 x(t) + D 21 ω(t) + D 22 u(t) (15)
an LMI stability region D, and some H ∞ performance γ > 0, find an LTI control law u = K(s)y such that: T is composed by the controlled output y and the control signal u. In our case, and as defined latter in (39), y is the pressure difference between the chambers and u is the

ẋK (t) = A K x K (t) + B K y(t) u(t) = C K x K (t) + D K y(t) (16)
Then, T we (s) = D cl + C cl (sI -A cl ) -1 B cl with 6 :

A cl := A + B 2 D K C 2 B 2 C K B K C 2 A K , B cl := B 1 + B 2 D K D 21 B K D 21 , C cl := (C 1 + D 12 D K C 2 , D 12 C K )
and

D cl := D 11 + D 12 D K D 21 .
We first examine each specification separately. It is shown in [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF] that the pole placement constraint is satisfied if and only if there exists X D > 0 such that:

[α kl X D + β kl A cl X D + β lk X D A T cl ] 1≤k,l≤m < 0 (17)
Meanwhile, the H ∞ constraint is expressed in terms of LMIs:

  A cl X ∞ + X ∞ A T cl B cl X ∞ C T cl B T cl -γI D T cl C cl X ∞ D cl -γI   < 0 (18)
Then the problem formulation of H ∞ synthesis with pole placement -assuming that the same Lyapunov matrix X > 0 is required -is:

Find X > 0 and a controller K(s) > 0 ≡ Ω K that satisfy [START_REF] Duc | Commande Hinf et mu-analyse un outil pour la robustesse[END_REF] and [START_REF] Zhou | Essentials of Robust Control[END_REF]

with X = X D = X ∞ (19)
The controller matrix is denoted by:

Ω K = A K B K C K D K (20)
The difficulty in output feedback is that relations ( 17) and ( 18) involve nonlinear terms of the form BΩ K CX. This means that problem formulation is not convex and then, can not be handled by LMIs. Chilali and Gahinet [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF] solved this problem by taking the following change of variables of the controller:

B K := N B K + SB 2 D K C K := C K M T + D K C 2 R A K := N A K M T + N B K C 2 R + SB2C K M T + S(A + B 2 D K C 2 )R (21)
6 we assume that the D 22 = 0, this assumption considerably simplifies the formulas. (Note that it is always possible to remove the D 22 term by a mere change of variables) where R, S, N and M correspond to the following partition of X and it inverse as

X = R M M T U , X -1 = S N N T V R ∈ R n×n , S ∈ R n×n (22)
The proposed procedure is summarized in the following theorem [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF]: Theorem: Let D be an arbitrary LMI region contained in the open left-half plane and let (13) be its characteristic function.

Then, the modified problem ( 19) is solvable if and only if the following system of LMIs is feasible. Find R = R T ∈ R n×n , S = S T ∈ R n×n , and matrices A K , B K ,C K and D K such that

R I I S > 0 (23)
α kl R I I S + β kl Φ + β lk φ T k,l < 0 (24)
Ψ 11 Ψ T 21 Ψ 21 Ψ 22 < 0 (25)
with the shorthand notation

Φ := AR + B 2 C K A + B 2 D K C 2 A K SA + B K C 2 (26)
Ψ 11 , Ψ 12 and Ψ 22 terms are detailed in appendix B. Given any solution to this LMI system:

• Compute via Singular Values Decomposition (SVD) a full-rank factorization M N T = I -RS of the matrix I -RS (M and N are then square invertible) • Solve the system of linear equations [START_REF] Ilchmann | Pneumatic cylinders: Modelling and feedback and feedback force-control[END_REF] for B K , C K and A K (in this order).

• Set K(s) := D K + C K (sI -A K ) -1 B K .
Then K(s) is an n th order controller that places the closedloop poles in D and such that T we ∞ < γ.

C. GPC outer position Controller

The GPC algorithm is based on a CARIMA model which is given by:

A(z -1 )y(t) = z -d B(z -1 )u(t -1) + C(z -1 )e(t) (27)
where u(t) and y(t) are respectively the control and output sequences of the plant and e(t) is a zero-mean white noise.

A, B and C are polynomials of the backward shift operator z -1 . They are given by;

A(z -1 ) = 1 + a 1 z -1 + a 2 z -2 + ... + a na z -na , B(z -1 ) = b 0 + b 1 z -1 + b 2 z -2 + ... + b nb z -nb and C(z -1 ) = 1 + c 1 z -1 + c 2 z -2 + ... + c nc z -nc and = 1 -z -1 .
For simplicity, it is admitted that C -1 equals 1. It is important to mention that most SISO plants can be described by a CARIMA model after linearization. The GPC algorithm consists in applying a control sequence that minimizes a multistage cost function of the form:

J(N 1 , N 2 , N u ) = N2 j=N1 δ(j)[ŷ(t + j|t) -w(t + j)] 2 + N2 j=1 λ(j)[ u(t + j -1)] 2 (28)
where ŷ(t + j|t) is an optimum j step ahead prediction of the system output on data up to time t, N 1 and N 2 are the minimum and maximum cost horizons, N u is the control horizon, δ(j) and λ(j) are weighting sequences and w(t + j) is the future reference trajectory. The minimization of cost function leads to a future control sequence u(t), u(t + 1), ... where the output y(t + j) is close to w(t + j). Therefore, in order to optimize cost function, the best optimal prediction of y(t + j) (for N 1 ≤ j ≤ N 2 ) has to be determined. This needs the introduction of the following Diophantine equation:

1 = A j (z -1 ) Ã(z -1 ) + z -j F j (z -1 ) (29)
with à = A(z -1 ) and polynomials E j and F j are uniquely defined with degrees j -1 and na respectively. is defined as = 1 -z -1 By multiplying ( 27) by E j (z -1 )z j and considering [START_REF] Chilali | Robust pole placement in LMI regions[END_REF], we obtain:

y(t + j) =F j (z -1 )y(t) + E j (z -1 )B(z -1 ) u(t + j -d -1) + E j (z -1 )e(t + j) (30)
Since the noise terms in [START_REF] Smaoui | Commandes non linéaires robustes mono et multidimensionnelles de dispositifs électropneumatiques: synthèse et applications[END_REF] are all in the future (this is because degree of polynomial E j (z -1 ) = j -1), the best prediction of y(t + j) is:

ŷ(t + j|t) = G j (z -1 ) u(t + j -d -1) + F j (z -1 )y(t) (31)
where G j (z -1 ) = E j (z -1 )B(z -1 ) Polynomials E j and F j can merely be obtained recursively (demonstration can be found for instance in [START_REF] Camacho | Model Predicitve Control. Second Edition[END_REF]).

In the future, it will be referred only to N = N 2 = N u as the prediction horizon. N 1 is chosen equal to 0. Let's consider the following set of j ahead optimal predictions:

ŷ(t + d + 1|t) = G d+1 u(t) + F d+1 y(t) . . . ŷ(t + d + N |t) = G d+N u(t + N -1) + F d+N y(t) (32)
It can be written in the following compact form:

y = G u + F(z -1 )y(t) + G (z -1 ) u(t -1) (33)
where terms y, u, G and F can be defined in [START_REF] Camacho | Constrained generalized predictive control[END_REF]. Equation ( 33) can be rewritten in this form:

y = Gu + f ( 34
)
Where f refers to the last two terms in Eq. ( 33) which only depend on the past. Now, we are able to rewrite [START_REF] Camacho | Constrained generalized predictive control[END_REF] as:

J = (Gu + f -w) T (Gu + f -w) + λu T u ( 35
)
where w = [w(t + d + 1), w(t + d + 1) . . . w(t + d + N )] T equation ( 35) can be written as:

J = 1 2 u T Hu + b T u + f 0 (36) with H = 2(G T G + λI), b T = 2(f -w) T G and f 0 = (f -w) T (f -w)
Therefore, the minimum of J can simply be found by making the gradient of J equal to zero, which leads to:

u = -H -1 b = (G T G + λI) -1 G T (w -f ) (37)
Since the control signal that is actually sent to the process is the first element of vector u (receding strategy), it is given by:

u(t) = K(w -f ) ( 38
)
where K represents the first element of matrix (G T G + λI) -1 G T . Contrary to conventional controllers, predictive ones depend only on future errors and not past ones.

D. Position/pressure control strategy for the pneumatic cylinders

In this part, the cascade control concept is presented for the cylinders. The complete control scheme for this concept is summarized in Fig. 5. The inner loop consists in the control of the pressure difference between the two chambers of each cylinder. An LMI based H ∞ controller is implemented. The outer loop consists in the position generalized predictive controller which is implemented based on the closed loop transfer function of pressure difference in cascade with the mechanical dynamics. As presented before, the linearized system in case of pressure difference is an integrator. Therefore, equations of the system can be stated as follows:

ẋ = (0)x + 1 0 b v + (1)u y u = -1 0 x + 1 0 0 0 b v + 0 1 u y = (1)x + 0 1 b v + (0)u (39)
where ω = (b v) T and e = (y u) T have been defined before. Classical assumptions for solving H ∞ problem can easily be verified 7 . The result of the LMI optimization is a controller which has the following form:

K(p) = K 1 p + K 2 p + K 3 (40)
Therefore, the equivalent closed loop pressure transfer function is:

G clpressure (p) = K 1 p + K 2 p 2 + (K 1 + K 3 )p + K 2 (41)
Based on this transfer function, it is possible to reconstruct the position by integrating the force two times and dividing by the moving mass [START_REF] Van Damme | Sliding mode control of a 2-dof planar pneumatic manipulator[END_REF]. The GPC controller will be then synthesized using the following transfer function:

G position (p) = K 1 p + K 2 M p 2 (p 2 + (K 1 + K 3 )p + K 2 ) = G clpressure M p 2 (42)

IV. EXPERIMENTAL RESULTS

In the following, the proposed cascade GPC/H ∞ is implemented on the pneumatic cylinders. Some typical tests are handled and commented in details.

A. Some typical control tests During all tests concerning cylinders, the gravity term F g in ( 6) has been neglected. It has been observed that it has not a big impact on performances. In this context, the design of the cascade strategy is simplified and at the same time it guarantees robustness to gravity effects and orientation variations. A second assumption was made in equation [START_REF] Van Damme | Sliding mode control of a 2-dof planar pneumatic manipulator[END_REF] where friction has been neglected. In spite of this, it will be shown that one of the advantages of the multiobjective pressure inner controller is that it can be used to remove friction effects on control performances. The first series of tests concerns the case where there is no load attached at the end of the arm. The control frequency is 0.2Khz. For the H ∞ pressure controller, a disk LMI Fig. 6. Pulse response of the rodless cylinder region (see [START_REF] Chilali | H-infinity design with pole placement constraints: an lmi approach[END_REF] [29]) has been chosen because it enables to avoid fast dynamic poles. We have tried to find a tradeoff between oscillations that appear for fast dynamic poles and time response that will be longer for slow dynamic ones. After some empirical simulations, a disk centered at point (-300,0) with a radius of 15 has been chosen leading to a satisfying behavior. These parameters are used to define the disk LMI region defined by [START_REF] Norgaard | Intelligent predictive control of nonlinear processes using neural networks[END_REF].

Using constraints ( 23), ( 24) and (25) for the system defined by (39) we obtain after LMI optimization [START_REF] Gahinet | The lmi control toolbox[END_REF] the terms R, S, A K , B K , C K and D K . We are now able to compute the constrained H ∞ controller which is given by:

K(p) = -263.8p -9.15 • 10 -4 p + 339.8 (43)
The outer position controller is designed based on the equivalent obtained transfer function given by (42). In order to apply GPC, it is necessary to do the discretization of the transfer function. This is done with a sampling time T s = 5ms. We obtain:

B(z -1 ) = 4.63•10 -7 +1.3•10 -6 z -1 -2•10 -10 z -2 -4.3•10 -3 (44) A(z -1 ) = 1 -2.44 z -1 + 2z -2 -0.54z -3 + 0.05z -4 (45)
The weighting factor λ has been chosen equal to 5 • 10 -6 and δ is fixed to 1. The prediction horizon equals 50. On Fig. 6, a pulse signal reference with an amplitude of -+ 15 • is given to the system. Experimental results are very good in terms of static error and time response. The system follows easily the reference. The rising time equals 0.045s and settling time equals 0.24s. Steady state error is less then 0.05 • in the negative case and 0.2 • for the positive one. This is due in part to the fact that gravity effect is not the same for the positive or negative position. As observed at time t = 3s, there is a small jump -less than 1 • -in the output during the steady state period. We think that this jump is due to the sticking and restarting phenomena which is characteristic to electropneumatic systems (see chapter 3 of [START_REF] Brun | Commandes linéaires et non linéaires en électropneumatique[END_REF]). In our case, our aim is to reach a precision better than 1 • for carrying loads up to 5kg in pick-and-place applications. This is achieved in all the tests presented in this document even in presence of restarting phenomena. However, this problem can be removed by changing the closed loop pole location of the inner pressure controller. For instance, rather than a circle LMI region of radius 25 and centered at point (-350, 0), we constrain the poles to be at (-450, 0). This is represented on figure 7.

The consequence can be viewed on Fig. 8. The limit cycle B. Pressure controller influence and robustness analysis tests: In Fig. 9, a robustness test is done by adding a 5kg load at t = 5s. The regulation is still good and the static error is less than 0.1 • . It is interesting to observe that the system reacts by a difference pressure jump which corresponds to the mass variation added at the end of the arm. Therefore, it is possible to deduce that the role of the inner loop is twice; first, it simplifies the control synthesis of the outer controller and secondly it robustifies the control because the difference pressure inner tracking enables a natural adaptation to mass variations. c. Comparing results with state-of-art former studies: It is not easy to compare those tests with former studies because the experiments and the objectives are not the same. For instance, in [START_REF] Brun | Commandes linéaires et non linéaires en électropneumatique[END_REF] [20] [13] [30] [START_REF] Sawodny | Aspects of the control of differential pneumatic cylinders[END_REF], the authors present only position control tests without any robustness experiments. In [START_REF] Girin | High-order sliding mode controllers of an electropneumatic actuator: Application to an aeronautic benchmark[END_REF], the authors developed a robust sliding mode controller. Robustness is tested by increasing the moving mass by 1.8kg. Fig. 10 shows optimal test results with the sliding mode controller implemented in [START_REF] Smaoui | Commandes non linéaires robustes mono et multidimensionnelles de dispositifs électropneumatiques: synthèse et applications[END_REF] and compares chirp signal tracking results with our robust cascade strategy. The experiments have been done with the same control signal amplitudes. This experiment Cascade robust strategy State-of-art sliding modes Fig. 10. Experimental chirp signal tracking results: comparison between the robust cascade strategy and state-of-art sliding modes [START_REF] Smaoui | Commandes non linéaires robustes mono et multidimensionnelles de dispositifs électropneumatiques: synthèse et applications[END_REF] clearly shows the improvement that can be brought by such a control scheme. In Fig. 11, a robustness test is handled, that is, an unmodeled 4kg load is added without considering it in the controller. The gains are the same as for former test. Results show clearly the interest of the cascade robust control strategy introduced here.

V. CONCLUSION

An experimental versatile testbed is designed in order to test the proposed robust cascade strategies on electropneumatic actuators for pick and place parallel robotic applications and based on a mixed GPC and H ∞ approach. As our aim is to reach at least a precision less than 1 • for transporting loads up to 5kg, the robust cascade strategy fulfills these requirements in spite of the different uncertainties relative to friction, gravity effects and different nonlinearities of the actuators. The different experiments have shown the contribution of the predictive position controller in performances by reducing time delay Cascade robust strategy State-of-art sliding modes Fig. 11. Experimental 4kg mass variation robustness test: tracking results comparison between the robust cascade strategy and state-of-art sliding modes [START_REF] Smaoui | Commandes non linéaires robustes mono et multidimensionnelles de dispositifs électropneumatiques: synthèse et applications[END_REF] in a natural manner. Predictive control is particularly suitable for industrial robotics applications where future references are known a priori. On the other hand the different robustness tests have shown the importance of pressure difference inner loop which adapts itself in a natural manner to mass variations. Future work will consist in the improvement of the model by estimating and canceling the friction effects. For the pressure multiobjective controller, the inspection of other LMI region should be interesting in order to remove the chattering effect of the control signal for high dynamic closed loop poles.

Fig. 1 .

 1 Fig. 1. Versatile electropneumatic setup for robotic application.

Fig. 2 .

 2 Fig. 2. Adept Quattro [1].

( 1 )

 1 the closedloop poles lie in D and (2) T we ∞ < γ where T we (s) denotes the closed-loop transfer function from ω to e. It is represented on Fig. 4. where the input vector ω = b v T can be constituted for instance by a disturbance b and a second input which can be a measure noise v. The output vector e = y u

Fig. 4 .

 4 Fig. 4. System representation and notations

Fig. 5 .

 5 Fig. 5. General block diagram of the cascade Position/pressure strategy for the cylinders. The inner loop consists in the control of the pressure difference between the two chambers of each cylinder. An LMI based H∞ controller is implemented. The outer loop consists in the position generalized predictive controller which is implemented based on the closed loop transfer function of pressure difference in cascade with the mechanical inverse dynamics.

Fig. 7 .Fig. 8 .

 78 Fig. 7. Zero pole map: LMI circle regions and closed loop pole location

Fig. 9 .

 9 Fig. 9. Robustness test with a 5kg mass: a difference pressure jump is observed corresponding to the mass variation. Good regulation with a static error less than < 0.1 • .

† Authors are with Fatronik France Tecnalia, Cap Omega Rond-point B. Franklin, 34960 Montpellier Cedex 2, France. lchikh@fatronik.com and cbaradat@fatronik.com ‡ Authors are with the Laboratoire d'Informatique, de Robotique et de Microélectronique de Montpellier (LIRMM). 161 rue Ada, 34392 Montpellier Cedex 5, France. poignet@lirmm.fr and pierrot@lirmm.fr

the largest eigenvalue is negative

(A, B 2 ) controllable and (C 2 , A) observable

ACKNOWLEDGMENT

The authors would like to thank the Fatronik Tecnalia Foundation for its support with the experimental setup.