Line search method for solving a non-preemptive strictly periodic - - PowerPoint PPT Presentation

line search method for solving a non preemptive strictly
SMART_READER_LITE
LIVE PREVIEW

Line search method for solving a non-preemptive strictly periodic - - PowerPoint PPT Presentation

Presentation of the problem The heuristic Results and conclusion Line search method for solving a non-preemptive strictly periodic scheduling problem Cl ement Pira and Christian Artigues MOGISA Team, LAAS-CNRS, Toulouse, France August 29,


slide-1
SLIDE 1

Presentation of the problem The heuristic Results and conclusion

Line search method for solving a non-preemptive strictly periodic scheduling problem

Cl´ ement Pira and Christian Artigues

MOGISA Team, LAAS-CNRS, Toulouse, France

August 29, 2013, Gent, Belgium

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 1 / 18

slide-2
SLIDE 2

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-3
SLIDE 3

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-4
SLIDE 4

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-5
SLIDE 5

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-6
SLIDE 6

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-7
SLIDE 7

Presentation of the problem The heuristic Results and conclusion

Context

◮ P processors distributed on the plane ◮ N periodic tasks to be executed (measures of sensors, etc.).

⇒ A multiprocessor periodic scheduling problem.

◮ non-preemptive : processing in “one shot” ◮ multiperiodic : each task has its own period ◮ strictly periodic : no jitter Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 2 / 18

slide-8
SLIDE 8

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-9
SLIDE 9

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-10
SLIDE 10

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-11
SLIDE 11

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-12
SLIDE 12

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-13
SLIDE 13

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-14
SLIDE 14

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The uniprocessor problem

◮ Problem defined in (Korst, 1991), (Eisenbrand et al, 2010),

(Al Sheikh et al, 2012).

◮ Each periodic task i is defined by :

◮ A processing time pi. ◮ A fixed period Ti (multiperiodic).

◮ A reference offset ti induces a set of occurrences : ti + TiZ

(strictly periodic). ⇒ To determine the reference offsets (ti) such that... ... no two tasks on the same processor overlap.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 3 / 18

slide-15
SLIDE 15

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-16
SLIDE 16

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-17
SLIDE 17

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-18
SLIDE 18

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-19
SLIDE 19

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-20
SLIDE 20

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Constraints between two tasks

◮ We generalize processing times pi by latency delays li,j ◮ Constraint to express : whenever an occurrence of j follows an

  • ccurrence of i, a latency delay li,j should be respected

⇒ The smallest positive difference between an occurrence of j and an occurrence of i should be greater than li,j : (tj − ti) mod gcd(Ti, Tj) ≥ li,j Hint : let’s define the set of all the possibles differences (tj + TjZ) − (ti + TiZ) = (tj − ti) + gcd(Ti, Tj)Z The modulo is the smallest positive representative of this set.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 4 / 18

slide-21
SLIDE 21

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Additional objective

Let’s write gi,j = gcd(Ti, Tj), and solve : max α (tj − ti) mod gi,j ≥ li,j ∀i, j ti ∈ Z ∀i

◮ Additional objective : a factor α that we try to maximize.

◮ gives the maximum space to each task. ◮ usefull for the heuristic. Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 5 / 18

slide-22
SLIDE 22

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

Additional objective

Let’s write gi,j = gcd(Ti, Tj), and solve : max α (tj − ti) mod gi,j ≥ li,jα ∀i, j ti ∈ Z ∀i

◮ Additional objective : a factor α that we try to maximize.

◮ gives the maximum space to each task. ◮ usefull for the heuristic. Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 5 / 18

slide-23
SLIDE 23

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

A word on the hardness of the problem

◮ Uniprocessor problem NP-Complete in the strong sense :

◮ Even with unitary processing times (reduction from

Congruence Inequality)

◮ Even with two periods, one dividing the other, and arbitrary

processing times pi (reduction from bin-packing, Korst, 1991)

◮ a task with a small period defines binds for the other tasks. ◮ Even with one period T in the case of latency delays li,j

(disjunctive scheduling, hamiltonian circuit).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 6 / 18

slide-24
SLIDE 24

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

A word on the hardness of the problem

◮ Uniprocessor problem NP-Complete in the strong sense :

◮ Even with unitary processing times (reduction from

Congruence Inequality)

◮ Even with two periods, one dividing the other, and arbitrary

processing times pi (reduction from bin-packing, Korst, 1991)

◮ a task with a small period defines binds for the other tasks. ◮ Even with one period T in the case of latency delays li,j

(disjunctive scheduling, hamiltonian circuit).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 6 / 18

slide-25
SLIDE 25

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

A word on the hardness of the problem

◮ Uniprocessor problem NP-Complete in the strong sense :

◮ Even with unitary processing times (reduction from

Congruence Inequality)

◮ Even with two periods, one dividing the other, and arbitrary

processing times pi (reduction from bin-packing, Korst, 1991)

◮ a task with a small period defines binds for the other tasks. ◮ Even with one period T in the case of latency delays li,j

(disjunctive scheduling, hamiltonian circuit).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 6 / 18

slide-26
SLIDE 26

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

A word on the hardness of the problem

◮ Uniprocessor problem NP-Complete in the strong sense :

◮ Even with unitary processing times (reduction from

Congruence Inequality)

◮ Even with two periods, one dividing the other, and arbitrary

processing times pi (reduction from bin-packing, Korst, 1991)

◮ a task with a small period defines binds for the other tasks. ◮ Even with one period T in the case of latency delays li,j

(disjunctive scheduling, hamiltonian circuit).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 6 / 18

slide-27
SLIDE 27

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The multiprocessor problem

◮ Additional assignment on P processors

◮ Overlapping constraints only between tasks on the same

processor.

◮ Extended problem : optional memory and capacity constraints.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 7 / 18

slide-28
SLIDE 28

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The multiprocessor problem

◮ Additional assignment on P processors

◮ Overlapping constraints only between tasks on the same

processor.

◮ Extended problem : optional memory and capacity constraints.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 7 / 18

slide-29
SLIDE 29

Presentation of the problem The heuristic Results and conclusion The uniprocessor problem The multiprocessor problem

The multiprocessor problem

◮ Additional assignment on P processors

◮ Overlapping constraints only between tasks on the same

processor.

◮ Extended problem : optional memory and capacity constraints.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 7 / 18

slide-30
SLIDE 30

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (1)

◮ Game-theoretic heuristic (Al Sheikh, 2011) : a task is seen as

an agent which tries to be as far as possible from every other agent.

◮ Cyclically, choose a task i and consider only the constraints

involving i.

◮ For each processor p, compute the best possible location τ for

task i if it were on processor p : max αi s.t. (tj − τ) mod gi,j ≥ li,jαi ∀j = i, aj = p (τ − tj) mod gi,j ≥ lj,iαi ∀j = i, aj = p τ ∈ Z

◮ Put the task i on the processor, and at the offset which

maximizes αi.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 8 / 18

slide-31
SLIDE 31

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (1)

◮ Game-theoretic heuristic (Al Sheikh, 2011) : a task is seen as

an agent which tries to be as far as possible from every other agent.

◮ Cyclically, choose a task i and consider only the constraints

involving i.

◮ For each processor p, compute the best possible location τ for

task i if it were on processor p : max αi s.t. (tj − τ) mod gi,j ≥ li,jαi ∀j = i, aj = p (τ − tj) mod gi,j ≥ lj,iαi ∀j = i, aj = p τ ∈ Z

◮ Put the task i on the processor, and at the offset which

maximizes αi.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 8 / 18

slide-32
SLIDE 32

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (1)

◮ Game-theoretic heuristic (Al Sheikh, 2011) : a task is seen as

an agent which tries to be as far as possible from every other agent.

◮ Cyclically, choose a task i and consider only the constraints

involving i.

◮ For each processor p, compute the best possible location τ for

task i if it were on processor p : max αi s.t. (tj − τ) mod gi,j ≥ li,jαi ∀j = i, aj = p (τ − tj) mod gi,j ≥ lj,iαi ∀j = i, aj = p τ ∈ Z

◮ Put the task i on the processor, and at the offset which

maximizes αi.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 8 / 18

slide-33
SLIDE 33

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (1)

◮ Game-theoretic heuristic (Al Sheikh, 2011) : a task is seen as

an agent which tries to be as far as possible from every other agent.

◮ Cyclically, choose a task i and consider only the constraints

involving i.

◮ For each processor p, compute the best possible location τ for

task i if it were on processor p : max αi s.t. (tj − τ) mod gi,j ≥ li,jαi ∀j = i, aj = p (τ − tj) mod gi,j ≥ lj,iαi ∀j = i, aj = p τ ∈ Z

◮ Put the task i on the processor, and at the offset which

maximizes αi.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 8 / 18

slide-34
SLIDE 34

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-35
SLIDE 35

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-36
SLIDE 36

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-37
SLIDE 37

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-38
SLIDE 38

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-39
SLIDE 39

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

Principle of the heuristic (2)

◮ This is a potential game (Al Sheikh, 2011) :

◮ Potential = sorted vector of αi values :

α1 ≤ · · · ≤ αi ≤ · · · ≤ αn

◮ Suppose αi is optimized and becomes α′ i.

◮ The values strictly below are not modified. ◮ The values equal to αi remain greater or equal than αi. ◮ The values strictly above remain strictly greater than αi.

⇒ The potential strictly increases ⇒ Convergence to an equilibrium (no more task can improve its schedule) ≃ optimum. ⇒ In a finite number of steps when using integer indexes.

◮ Embedded in a multistart scheme

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 9 / 18

slide-40
SLIDE 40

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (1)

◮ Critical problem : the best-offset procedure

◮ Given a processor p and the offsets (tj) of the tasks currently

  • n this processor, find the best position τ for task i if it were
  • n p :

max α s.t. (tj − τ) mod gi,j ≥ li,jα ∀j, aj = p (τ − tj) mod gi,j ≥ lj,iα ∀j, aj = p τ ∈ {0, · · · , Ti − 1}, α ≥ 0

◮ Two-dimensional optimization problem : τ and α. ◮ Structure of the solution space :

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 10 / 18

slide-41
SLIDE 41

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (1)

◮ Critical problem : the best-offset procedure

◮ Given a processor p and the offsets (tj) of the tasks currently

  • n this processor, find the best position τ for task i if it were
  • n p :

max α s.t. (tj − τ) mod gi,j ≥ li,jα ∀j, aj = p (τ − tj) mod gi,j ≥ lj,iα ∀j, aj = p τ ∈ {0, · · · , Ti − 1}, α ≥ 0

◮ Two-dimensional optimization problem : τ and α. ◮ Structure of the solution space :

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 10 / 18

slide-42
SLIDE 42

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (1)

◮ Critical problem : the best-offset procedure

◮ Given a processor p and the offsets (tj) of the tasks currently

  • n this processor, find the best position τ for task i if it were
  • n p :

max α s.t. (tj − τ) mod gi,j ≥ li,jα ∀j, aj = p (τ − tj) mod gi,j ≥ lj,iα ∀j, aj = p τ ∈ {0, · · · , Ti − 1}, α ≥ 0

◮ Two-dimensional optimization problem : τ and α. ◮ Structure of the solution space :

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 10 / 18

slide-43
SLIDE 43

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (1)

◮ Critical problem : the best-offset procedure

◮ Given a processor p and the offsets (tj) of the tasks currently

  • n this processor, find the best position τ for task i if it were
  • n p :

max α s.t. (tj − τ) mod gi,j ≥ li,jα ∀j, aj = p (τ − tj) mod gi,j ≥ lj,iα ∀j, aj = p τ ∈ {0, · · · , Ti − 1}, α ≥ 0

◮ Two-dimensional optimization problem : τ and α. ◮ Structure of the solution space :

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 10 / 18

slide-44
SLIDE 44

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (1)

◮ Critical problem : the best-offset procedure

◮ Given a processor p and the offsets (tj) of the tasks currently

  • n this processor, find the best position τ for task i if it were
  • n p :

max α s.t. (tj − τ) mod gi,j ≥ li,jα ∀j, aj = p (τ − tj) mod gi,j ≥ lj,iα ∀j, aj = p τ ∈ {0, · · · , Ti − 1}, α ≥ 0

◮ Two-dimensional optimization problem : τ and α. ◮ Structure of the solution space :

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 10 / 18

slide-45
SLIDE 45

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (2)

◮ Linear search : try every possible offset ti. ◮ Al Sheikh et al, 2012 : precomputation of intersection points.

◮ The fractional optimum will be at the intersection of an

increasing and a decreasing line.

◮ Our approach : successive local optimizations and propagation.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 11 / 18

slide-46
SLIDE 46

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (2)

◮ Linear search : try every possible offset ti. ◮ Al Sheikh et al, 2012 : precomputation of intersection points.

◮ The fractional optimum will be at the intersection of an

increasing and a decreasing line.

◮ Our approach : successive local optimizations and propagation.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 11 / 18

slide-47
SLIDE 47

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (2)

◮ Linear search : try every possible offset ti. ◮ Al Sheikh et al, 2012 : precomputation of intersection points.

◮ The fractional optimum will be at the intersection of an

increasing and a decreasing line.

◮ Our approach : successive local optimizations and propagation.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 11 / 18

slide-48
SLIDE 48

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (2)

◮ Linear search : try every possible offset ti. ◮ Al Sheikh et al, 2012 : precomputation of intersection points.

◮ The fractional optimum will be at the intersection of an

increasing and a decreasing line.

◮ Our approach : successive local optimizations and propagation.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 11 / 18

slide-49
SLIDE 49

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (3)

◮ Local optimization :

◮ Given a reference offset τref, we compute a local polyhedron

and solve a linear problem : max α (1) s.t. ti − lj,iα ≥ oj ∀j = i, aj = p (2) ti + li,jα ≤ oj + gi,j ∀j = i, aj = p (3) ti ∈ Z (4) with

  • j = τref − (τref − tj) mod gi,j

(5)

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 12 / 18

slide-50
SLIDE 50

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (3)

◮ Local optimization :

◮ Given a reference offset τref, we compute a local polyhedron

and solve a linear problem : max α (1) s.t. ti − lj,iα ≥ oj ∀j = i, aj = p (2) ti + li,jα ≤ oj + gi,j ∀j = i, aj = p (3) ti ∈ Z (4) with

  • j = τref − (τref − tj) mod gi,j

(5)

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 12 / 18

slide-51
SLIDE 51

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-response method (3)

◮ Local optimization :

◮ Given a reference offset τref, we compute a local polyhedron

and solve a linear problem : max α (1) s.t. ti − lj,iα ≥ oj ∀j = i, aj = p (2) ti + li,jα ≤ oj + gi,j ∀j = i, aj = p (3) ti ∈ Z (4) with

  • j = τref − (τref − tj) mod gi,j

(5)

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 12 / 18

slide-52
SLIDE 52

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (4)

◮ Megiddo algorithm allows to optimize in O(N). ◮ Special implementations of the simplex algorithms run in

O(N2) but are faster in practice.

◮ They only require simple computations of intersection points

  • f increasing and decreasing lines.

◮ Primal simplex : alternatively improves increasing and

decreasing lines.

◮ Runs in O(N) in the case of processing times (all the

decreasing lines have the same slope 1/pi).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 13 / 18

slide-53
SLIDE 53

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (4)

◮ Megiddo algorithm allows to optimize in O(N). ◮ Special implementations of the simplex algorithms run in

O(N2) but are faster in practice.

◮ They only require simple computations of intersection points

  • f increasing and decreasing lines.

◮ Primal simplex : alternatively improves increasing and

decreasing lines.

◮ Runs in O(N) in the case of processing times (all the

decreasing lines have the same slope 1/pi).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 13 / 18

slide-54
SLIDE 54

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (4)

◮ Megiddo algorithm allows to optimize in O(N). ◮ Special implementations of the simplex algorithms run in

O(N2) but are faster in practice.

◮ They only require simple computations of intersection points

  • f increasing and decreasing lines.

◮ Primal simplex : alternatively improves increasing and

decreasing lines.

◮ Runs in O(N) in the case of processing times (all the

decreasing lines have the same slope 1/pi).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 13 / 18

slide-55
SLIDE 55

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (4)

◮ Megiddo algorithm allows to optimize in O(N). ◮ Special implementations of the simplex algorithms run in

O(N2) but are faster in practice.

◮ They only require simple computations of intersection points

  • f increasing and decreasing lines.

◮ Primal simplex : alternatively improves increasing and

decreasing lines.

◮ Runs in O(N) in the case of processing times (all the

decreasing lines have the same slope 1/pi).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 13 / 18

slide-56
SLIDE 56

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (4)

◮ Megiddo algorithm allows to optimize in O(N). ◮ Special implementations of the simplex algorithms run in

O(N2) but are faster in practice.

◮ They only require simple computations of intersection points

  • f increasing and decreasing lines.

◮ Primal simplex : alternatively improves increasing and

decreasing lines.

◮ Runs in O(N) in the case of processing times (all the

decreasing lines have the same slope 1/pi).

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 13 / 18

slide-57
SLIDE 57

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (5)

◮ Once we are at the optimum, we propagate on the right until

we find a strictly improving polyhedron. ⇒ Given the current best solution (τlb, αlb), we solve : min τ s.t. (tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 ∀j, aj = p (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1 ∀j, aj = p τ ∈ {τlb, · · · , Ti − 1}

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 14 / 18

slide-58
SLIDE 58

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (5)

◮ Once we are at the optimum, we propagate on the right until

we find a strictly improving polyhedron. ⇒ Given the current best solution (τlb, αlb), we solve : min τ s.t. (tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 ∀j, aj = p (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1 ∀j, aj = p τ ∈ {τlb, · · · , Ti − 1}

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 14 / 18

slide-59
SLIDE 59

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (5)

◮ Once we are at the optimum, we propagate on the right until

we find a strictly improving polyhedron. ⇒ Given the current best solution (τlb, αlb), we solve : min τ s.t. (tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 ∀j, aj = p (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1 ∀j, aj = p τ ∈ {τlb, · · · , Ti − 1}

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 14 / 18

slide-60
SLIDE 60

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-61
SLIDE 61

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-62
SLIDE 62

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-63
SLIDE 63

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-64
SLIDE 64

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-65
SLIDE 65

Presentation of the problem The heuristic Results and conclusion A game-theoretic analogy The best-offset problem

The best-offset method (6)

◮ Start with τ = τlb ◮ Until all the constraints are satisfied or τ ≥ Ti, do

◮ Cyclically, choose a task j on the same processor than i ◮ Test if the following constraints are satisfied :

(tj − τ) mod gi,j ≥ ⌊li,jαlb⌋ + 1 (τ − tj) mod gi,j ≥ ⌊lj,iαlb⌋ + 1

◮ If not, go to the first feasible offset, given by :

τ = τ + gi,j − (τ − tj − lj,iαlb − 1) mod gi,j

◮ Runs in O(Nnpoly) where the number of polyhedra npoly is

bounded by Ti.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 15 / 18

slide-66
SLIDE 66

Presentation of the problem The heuristic Results and conclusion Results on multiprocessor instances Conclusion

Results on small instances

◮ P = 4 processors and N = 20 tasks.

◮ Periods choosen in the set {2x3y50 | x ∈ [0, 4], y ∈ [0, 3]}. ◮ Processing times generated following an exponential

distribution and averaging at about 20% of the period.

◮ Comparison with an ILP formulation (Gurobi solver). ◮ Comparison with the original heuristic of Al Sheikh et al, 2012. ◮ Intel Core i5-480 2.66GHz with 4GB.

MILP (200s) New heuristic (10s) Original heuristic id α

M I L P

t i m e

s

  • l

α

h e u r i s t i c

s t a r t s

1 s

t i m e

s i n g l e

s t a r t s

s

  • l

t i m e

s

  • l

t i m e

s i n g l e

g a i n

s p e e d

2.5 159 2.5 15062 6.64e-4 30 0.01992 1.43 2154 1 2 18 2.01091 15262 6.55e-4 15 0.00983 3.27 4991 2 1.6 6 1.6 11018 9.08e-4 2 0.00182 1.52 1675 3 1.6 4 1.64324 11970 8.35e-4 45 0.03759 4.34 5195 4 2 5 2 10748 9.30e-4 1 0.00093 3.48 3740 5∗ 3 7 3 20428 4.90e-4 1 0.00049 1.63 3330 6 2.5 54 2.5 20664 4.84e-4 30 0.01452 1.44 2976 7 2 19 2 14040 7.12e-4 1 0.00071 0.23 323 8 2.12222 8 2.12222 17365 5.76e-4 3 0.00173 1.03 1789 9∗ 2 11 2 26304 3.80e-4 3 0.00114 2.42 6366 Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 16 / 18

slide-67
SLIDE 67

Presentation of the problem The heuristic Results and conclusion Results on multiprocessor instances Conclusion

Results on large instances

◮ P = 50 processors and N = 1000 tasks. ◮ ILP : fails to load the problem with 4GB of memory

◮ Millions of variables and constraints.

◮ Importance of the propagation

With propagation Without propagation id αheuristic starts1000s timesingle startssol timesol αheuristic starts1000s timesingle startssol timesol 1 386 2.59 6 13.2 1 16 66.07 6 405.45 1 1.16452 200 5.01 35 197.6 1.05 6 177.9 5 885.06 2 1.1 111 9.04 78 694.17 1.04 4 261.19 1 405.32 3 1.21795 86 11.69 8 62.57 1.176 4 300.03 1 157.18 4 1 105 9.57 1 7.24 1 4 309.70 1 306.34 5 1.66555 121 8.30 114 952.62 1.58795 2 798.01 1 800.95 6 1 240 4.17 6 26.49 1 15 72.29 6 403.05 7 1.2 88 11.54 37 484.91 1 4 235.44 1 278.17 8 1.39733 83 12.09 47 468.93 1.21127 2 618.75 2 1237.5 9 1.2 77 13.29 1 20.58 1.2 2 487.03 1 420.58 Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 17 / 18

slide-68
SLIDE 68

Presentation of the problem The heuristic Results and conclusion Results on multiprocessor instances Conclusion

Conclusion

◮ We have improved an heuristic to solve an NP-hard periodic

scheduling problem.

◮ A new procedure to solve the best response method.

◮ The results compare favorably with ILP solutions. ◮ There is however hard instances for which the heuristic fails to

converge to the optimal solution.

◮ For example, what about hard bin-packing instances ? ◮ But works well with a lot of instances quite common in

practice.

◮ Can at least give clues about the feasibility of an instance. ◮ Allows to solve large instances, out of reach of an exact

solution.

Pira, Artigues Line search method and periodic scheduling August 29, 2013, Gent 18 / 18