Non-monetary fair scheduling: cooperative game theory …...Non-monetary fair scheduling:...

59
Non-monetary fair scheduling: cooperative game theory approach Piotr Skowron 1 , Krzysztof Rzadca 2 1 [email protected] 2 [email protected] University of Warsaw May 29, 2013 Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Transcript of Non-monetary fair scheduling: cooperative game theory …...Non-monetary fair scheduling:...

Non-monetary fair scheduling:

cooperative game theory approach

Piotr Skowron1, Krzysztof [email protected]@mimuw.edu.pl

University of Warsaw

May 29, 2013

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Problem

Multi-organizational system.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Problem

Multi-organizational system.

Organizations contribute processors to the global pool.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Problem

Multi-organizational system.

Organizations contribute processors to the global pool.

Jobs of the organizations are processed on common resources.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Problem

Multi-organizational system.

Organizations contribute processors to the global pool.

Jobs of the organizations are processed on common resources.

Jobs have to be scheduled.

Problem

What is a fair (for the organizations) schedule of the jobs.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – different approaches

Distributive fairness (organizations are ensured a fraction ofthe resources according to predefined (given) shares).

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – different approaches

Distributive fairness (organizations are ensured a fraction ofthe resources according to predefined (given) shares).

Multi-objective optimization (the performance of eachorganization can be viewed as the separate objective).

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – different approaches

Distributive fairness (organizations are ensured a fraction ofthe resources according to predefined (given) shares).

Multi-objective optimization (the performance of eachorganization can be viewed as the separate objective).

Game-theory approach.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – different approaches

Distributive fairness (organizations are ensured a fraction ofthe resources according to predefined (given) shares)

Multi-objective optimization (the performance of eachorganization can be viewed as the separate objective)

Game-theory approach.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

. . . or:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

. . . or:

The jobs have monetary values to the organizations.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

. . . or:

The jobs have monetary values to the organizations.

The global resources can be rent for a certain amount ofmoney.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

. . . or:

The jobs have monetary values to the organizations.

The global resources can be rent for a certain amount ofmoney.

The jobs are schedulled with some globally optimal strategyon global resources.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach:

The jobs have monetary values to the organizations.

There are common global resources.

The users run auction for the resources and pay money forprocessing their jobs.

. . . or:

The jobs have monetary values to the organizations.

The global resources can be rent for a certain amount ofmoney.

The jobs are schedulled with some globally optimal strategyon global resources.

The users share monetary costs of renting the resources.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach

In all the models we are aware of, one essentially needs themonetary evaluation of the jobs and we essentially require theorganization to pay money for their jobs.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – game theory approach

Related work – money-based approach

In all the models we are aware of, one essentially needs themonetary evaluation of the jobs and we essentially require theorganization to pay money for their jobs.

However:

Using money discourages from cooperation.

Finding the monetary values of the jobs is very hard(especially in a dynamically changing environment).

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.The organization gets utility from the schedule ψ(σ), e.g.:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.The organization gets utility from the schedule ψ(σ), e.g.:

flow time of its jobs,(weighted) tardiness of its jobs,resource utilization.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.The organization gets utility from the schedule ψ(σ), e.g.:

flow time of its jobs,(weighted) tardiness of its jobs,resource utilization.

Each organization has a contribution φ(σ).

What is contribution?

The contribution of the organization O says how much the utilityof the other organizations was increased thanks to O.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.The organization gets utility from the schedule ψ(σ), e.g.:

flow time of its jobs,(weighted) tardiness of its jobs,resource utilization.

Each organization has a contribution φ(σ).

What is contribution?

The contribution of the organization O says how much the utilityof the other organizations was increased thanks to O.

The contribution of the organization is its Shapley Value in agame where the value of the coalition is the total utility of theorganizations.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

We use the following approach:

Let σ denote the schedule.The organization gets utility from the schedule ψ(σ), e.g.:

flow time of its jobs,(weighted) tardiness of its jobs,resource utilization.

Each organization has a contribution φ(σ).

What is contribution?

The contribution of the organization O says how much the utilityof the other organizations was increased thanks to O.

The contribution of the organization is its Shapley Value in agame where the value of the coalition is the total utility of theorganizations.

We require that contribution of the organization is as close toits utility as possible.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

M1

t0 1 2 3 4 5 6 7

Contribution of the owner of the machine 3 = ?.

Flow time = 42

∆ψ =?M2

Figure: Organization O3 joining {O1,O2}

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

M1

t0 1 2 3 4 5 6 7

Contribution of the owner of the machine 3 = 12.

Flow time = 30

∆ψ = 12M2

M3

Figure: Organization O3 joining {O1,O2}

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

M1

t0 1 2 3 4 5 6 7

Contribution of the owner of the machine 3 = ?.

Flow time = 21

∆ψ =?

Figure: Organization O3 joining {O1}

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

M1

t0 1 2 3 4 5 6 7

Contribution of the owner of the machine 3 = 9.

Flow time = 12

∆ψ = 9

M3

Figure: Organization O3 joining {O1}

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

O1 ≺ O2 ≺ O3: organization O1 joining {} =⇒ ∆ψ = 0O1 ≺ O3 ≺ O2: organization O1 joining {} =⇒ ∆ψ = 0O2 ≺ O1 ≺ O3: organization O1 joining {O2} =⇒ ∆ψ = 9O3 ≺ O1 ≺ O2: organization O1 joining {O3} =⇒ ∆ψ = 9O2 ≺ O3 ≺ O1: organization O1 joining {O2,O3} =⇒ ∆ψ = 12O3 ≺ O2 ≺ O1: organization O1 joining {O2,O3} =⇒ ∆ψ = 12

The contribution of the organization O3 is (average) = 7

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Example (utility is flow time):

consider all the jobs released in the same time 0,

3 organizations each having a machine,

organizations O1 and O2 have 6 jobs each; organization O3

has no jobs.

O1 ≺ O2 ≺ O3: organization O1 joining {} =⇒ ∆ψ = 0O1 ≺ O3 ≺ O2: organization O1 joining {} =⇒ ∆ψ = 0O2 ≺ O1 ≺ O3: organization O1 joining {O2} =⇒ ∆ψ = 9O3 ≺ O1 ≺ O2: organization O1 joining {O3} =⇒ ∆ψ = 9O2 ≺ O3 ≺ O1: organization O1 joining {O2,O3} =⇒ ∆ψ = 12O3 ≺ O2 ≺ O1: organization O1 joining {O2,O3} =⇒ ∆ψ = 12

The contribution of the organization O3 is (average) = 7

How it is different from fair share?

The resources in peaks of load are more important.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fairness vs. global efficiency

We consider on-line, non-clairvoyant model, so we cannot controlglobal efficiency.

Any greedy algorithm is globally efficient

If there are jobs of multiple organizations waiting for execution, thealgorithm only decides whose job should be run now.

J1

J2

J3

J4

J1

J2

J3

J1

J2

The algorithm says how the purple arrow works

Organization 1:

Organization 2:

Organization 3:

Machine 1:Machine 2:Machine 3:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

1 We show an exponential fair algorithm O(3m).

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

1 We show an exponential fair algorithm O(3m).

Why not O(2m) (all coalitions) – the definition is recursive:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

1 We show an exponential fair algorithm O(3m).

Why not O(2m) (all coalitions) – the definition is recursive:

Core difficulty

1 To define fair algorithm for coalition C we need to know the value ofevery subset of C.

2 To know the value (total utility) of such subset we need to know theschedule.

3 To know the schedule we need to know the algorithm.

To define a fair algorithm for coalition C we need a definition of a fairalgorithm for every subset of C.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

1 We show an exponential fair algorithm O(3m).

Why not O(2m) (all coalitions) – the definition is recursive:

Core difficulty

1 To define fair algorithm for coalition C we need to know the value ofevery subset of C.

2 To know the value (total utility) of such subset we need to know theschedule.

3 To know the schedule we need to know the algorithm.

To define a fair algorithm for coalition C we need a definition of a fairalgorithm for every subset of C.

2 We show the problem of finding fair schedule is NP-hard andhard to approximate

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Fair scheduling – cooperative game theory approach

Our results:

1 We show an exponential fair algorithm O(3m).

Why not O(2m) (all coalitions) – the definition is recursive:

Core difficulty

1 To define fair algorithm for coalition C we need to know the value ofevery subset of C.

2 To know the value (total utility) of such subset we need to know theschedule.

3 To know the schedule we need to know the algorithm.

To define a fair algorithm for coalition C we need a definition of a fairalgorithm for every subset of C.

2 We show the problem of finding fair schedule is NP-hard andhard to approximate

3 ... but we show an FPRAS for the problem when the jobs areunit-size.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

delay jobs.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

delay jobs.

t0 1 2 3 4 5 6 7

The utility (flow time) is 6.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

delay jobs.

t0 1 2 3 4 5 6 7

The utility (flow time) is 21.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

delay jobs.

Our results:

We have shown the unique utility function that is strategy proof.

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Is fair scheduling enough?

But the organizations can manipulate:

split jobs,

merge jobs,

delay jobs.

Our results:

We have shown the unique utility function that is strategy proof.

How does this utility function look like? – This is an incentive toread the paper ,

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling

Questions?Also, feel free to send any questions to:[email protected].

Piotr Skowron, Krzysztof Rzadca Non-monetary fair scheduling