• No se han encontrado resultados

Análisis del Departamento sobre los fundamentos de la medida de

Game theory [120, 63, 123] can be defined as the study of mathematical models of conflict and coop- eration between intelligent rational decision-makers. It provides mathematical techniques for analysing situations in which two or more individuals make decisions that will influence one another’s welfare. In other words, it uses mathematics to help understanding observed phenomena when decision-makers interact. A decision-maker is called rational if he makes decisions consistently in pursuit of his own objectives, that is to say he is aware of his alternatives, forms expectations about any unknowns, has clear preferences, and chooses his action deliberately after some process of optimization. Game theory is vast, and hence this section is limited to aspects and particularities interesting for this thesis.

2.6.3.1 Non-cooperative games

In the language of game theory, a game is a description of strategic interaction between two or more in- dividuals. Individuals are often referred to as players. This game includes the constraints on the actions players can take in addition to the players’ interest.

One main branch of game theory is the non-cooperative game in which players make decisions inde- pendently according to their own objectives. In such type of games, consider a finite set N = {1, . . . , n} of players, and a set of possible actions Ai for each player i ∈ N . A pure strategy for player i is an

action from Ai. A mixed strategy corresponds to a probability function which prescribes a randomized

rule for selecting an action from Ai. Sidenotes the set of strategies available for player i.

A strategy profile s = (s1, . . . , sn) assigns a strategy si ∈ Si to each player i. A payoff function

Fi(s) is also associated to each player. It specifies the payoff received by player i if the strategy profile

s is adopted by the players. Denote by s−ithe profile for the set of players N \ {i}.

A strategy s∗

i is said to be a best response for player i against the profile s−iif

s∗i ∈ argmax

si∈Si

Fi(si, s−i).

2.6.3.2 Nash equilibrium

The most commonly used solution concept in game theory is that of Nash equilibrium [121]. A Nash equilibrium is a state in which no player has an incentive to unilaterally change his strategy. Briefly, no player can profitably deviate, given the actions of the other players [123].

Formally speaking, a strategy profile se is an equilibrium profile if for every i ∈ N , se

i is a best-

response for player i against se−i, that is to say, sei ∈ argmax

si∈Si

Fi(si, se−i), i ∈ N.

The application of game theoretic approaches with the aforementioned principles can be found in machine scheduling contexts such as [38] and [54]. In [1], the authors use similar game theoretic approaches for a multi-objective task mapping/scheduling problem, where parallel tasks are distributed upon a multi-core architecture for makespan and power consumption minimization.

2.7. CONCLUSION 65

2.7 Conclusion

In this chapter several definitions and classifications of scheduling problems were discussed. As was al- ready indicated, the work in this thesis is closely related to the non-preemptive multiprocessor schedul- ing for strictly periodic tasks. Among all of the contributions on scheduling, relatively few works have addressed this type of problems. Despite of the various efforts, it remains not well resolved. In this thesis, methods for solving such problems are investigated, in a general setting where no constraints are imposed on the type of strict periods (harmonic or non-harmonic). In Chapter 3, an exact MILP based formulation is proposed and tested. A game theoretic approach is then investigated in Chapter 4. In addition, although not much was discussed concerning flow routing in networks, Chapter 5 focuses on the Virtual Link routing problem in AFDX networks.

CHAPTER 3

MILP formulation of the scheduling problem

In this chapter, an exact linear programming algorithm is investigated for the scheduling problem intro- duced in Chapter 1. Several system constraints are taken into account such as strict periodicity and re- source capacities, in addition to domain specific conditions (such as locality constraints). In the avionic context, few works have tackled automation in decision making for what concerns partition scheduling on the avionic platform [62]. Models for allocating partitions to modules were studied in [133, 29] based on directives derived from safety and operational reliability requirements, however, temporal schedul- ing of partitions on each module was not addressed. Recently, the authors in [56] tackled the scheduling problem and effectively solved the processor minimization to optimality, using similar methods (ILP), but for harmonic period cases. In this Chapter, a mixed integer linear programming formalization (cf. Section 2.6.2.1) is presented for the multiprocessor scheduling with strict periodicities. Additionally, a new optimization objective, different from those found in literature (such as minimizing the number of processors), is proposed.

Definitions and models to the problem are given in Section 3.1. A mathematical formulation based on mixed integer linear programming is then proposed in Section 3.2, where the optimization objective is clearly indicated. In Section 3.3, a pretreatment method based on graph theory, to reduce the solution space, is introduced. Section 3.4 demonstrates some results on the proposed model. Section 3.5 finally concludes on this chapter’s methodology.

3.1 Problem definitions and modeling

It was seen in Chapter 2 the notion of tasks and their respective scheduling in a multiprocessor system. From this point on, in the context discussed in Chapter 1, the task and processor notions are replaced by partition and module respectively. The functional attributes between tasks and partitions remain equivalent, as a partition represents a set of instructions to achieve a certain functionality. The equiv- alence also applies between processors and modules, as a module is a processing unit, with attributed

68 3. MILP FORMULATION OF THE SCHEDULING PROBLEM

resources, destined to executing the system partitions.

In airborne systems, communication occurs in the framework of processing chains through which some kind of data is treated sequentially by a certain number of partitions. Data usually originates from a sensor or user input, and after processing by one or more partitions, a command is send to an actuator or screen (e.g. displaying altitude after analysing altimeter readings). For ease of presentation, it shall be assumed that a processing chain starts at the first partition of the chain and ends at the last one. Figure 3.1 shows a simple example of a chain where partition 1 sends some kind of data to partition 2 which itself manipulates and transmits it back to partition 1. This partition finally sends a command or result to partition 3, the final consumer in the chain.

Figure 3.1: Processing chain consisting of 3 partitions.

The partition scheduling problem consists of a set Π = {1, . . . , N } of N partitions that have to be mapped and scheduled (temporally) on a set P = {1, . . . , P } of P processing modules (distributed pro- cessor architecture). In sections 3.1.1, 3.1.2 and 3.1.3, mathematical models for the partitions, modules and communication chains are supplied.