• Nenhum resultado encontrado

Jogo de balanceamento de carga

N/A
N/A
Protected

Academic year: 2022

Share "Jogo de balanceamento de carga"

Copied!
115
0
0

Texto

(1)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj

Cada jogador controla uma tarefa. Conjuntos de estratégiasSi = [q]:

o jogador escolhe a qual máquina atribuir sua tarefa. Vetor de estratégias: atribuiçãoA: [n]→[q].

Custo deApara i, onde j =A(i): custoi(A) =P

k:A(k)=j wk

sj.

(2)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Cada jogador controla uma tarefa.

Conjuntos de estratégiasSi = [q]:

o jogador escolhe a qual máquina atribuir sua tarefa.

Vetor de estratégias: atribuiçãoA: [n]→[q]. Custo deApara i, onde j =A(i): custoi(A) =P

k:A(k)=j wk

sj.

(3)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Cada jogador controla uma tarefa.

Conjuntos de estratégiasSi = [q]:

o jogador escolhe a qual máquina atribuir sua tarefa.

Vetor de estratégias: atribuiçãoA: [n]→[q].

Custo deApara i, onde j =A(i): custoi(A) =P

k:A(k)=j wk

sj.

(4)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Cada jogador controla uma tarefa.

Conjuntos de estratégiasSi = [q]:

o jogador escolhe a qual máquina atribuir sua tarefa.

Vetor de estratégias: atribuiçãoA: [n]→[q].

Custo deApara i, onde j =A(i): custoi(A) =P

k:A(k)=j wk

sj.

(5)

Caso de máquinas relacionadas

Teorema: Para o jogo de balanceamento de carga emm máquinas relacionadas, PoA(m) = Θ lg lglgmm

. Primeira parte(aula passada):

Mostrar que para jogosJ= (n,m,w,s) e atribuiçõesA: [n]→[m]em equilíbrio vale que

custo(A) =O lgm lg lgm

.

Segunda parte:

Apresentar jogoJ = (n,m,w,s)e

atribuiçãoA: [n]→[m]em equilíbrio tal que custo(A) = Ω lgm

lg lgm .

(6)

Caso de máquinas relacionadas

Teorema: Para o jogo de balanceamento de carga emm máquinas relacionadas, PoA(m) = Θ lg lglgmm

. Primeira parte(aula passada):

Mostrar que para jogosJ= (n,m,w,s) e atribuiçõesA: [n]→[m]em equilíbrio vale que

custo(A) =O lgm lg lgm

.

Segunda parte:

Apresentar jogoJ = (n,m,w,s)e

atribuiçãoA: [n]→[m]em equilíbrio tal que custo(A) = Ω lgm

lg lgm .

(7)

Da aula anterior

Instância do jogo: J = (n,m,w,s)

Velocidades das máquinas: s1 ≥s2≥ · · · ≥sm,

eL= [1,2, . . . ,m]é a lista das máquinas em ordem de velocidade.

Parak=0,1, . . .

Lk: maior prefixo deLde máquinas com carga≥kOPT(J). SejaA uma atribuição ótima (de makespan mínimo).

Ficamos devendo a prova do seguinte:

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1.

(8)

Da aula anterior

Instância do jogo: J = (n,m,w,s)

Velocidades das máquinas: s1 ≥s2≥ · · · ≥sm,

eL= [1,2, . . . ,m]é a lista das máquinas em ordem de velocidade.

Parak=0,1, . . .

Lk: maior prefixo deLde máquinas com carga≥kOPT(J).

SejaA uma atribuição ótima (de makespan mínimo). Ficamos devendo a prova do seguinte:

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1.

(9)

Da aula anterior

Instância do jogo: J = (n,m,w,s)

Velocidades das máquinas: s1 ≥s2≥ · · · ≥sm,

eL= [1,2, . . . ,m]é a lista das máquinas em ordem de velocidade.

Parak=0,1, . . .

Lk: maior prefixo deLde máquinas com carga≥kOPT(J).

SejaA uma atribuição ótima (de makespan mínimo).

Ficamos devendo a prova do seguinte:

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1.

(10)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1.

Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice em L\Lk. Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1. Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(11)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice em L\Lk. Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1. Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(12)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice emL\Lk.

Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1. Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(13)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1. Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(14)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1.

Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(15)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: SeLk =L, nada a provar.

Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

`A(i)≥(k+1)OPT(J) para toda tarefa i tqA(i)∈Lk+1. Sewi ≤sqOPT(J), então i teria incentivo para ir paraq:

`q+wi sq

<kOPT(J) +OPT(J) = (k+1)OPT(J)≤`A(i), contradição.

(16)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

Para toda tarefai tqA(i)∈Lk+1,

`A(i)≥(k+1)OPT(J) e wi >sqOPT(J).

Por contradição, suponha quej =A(i)6∈Lk. Então, comosj ≤sq, a carga dej em A seria

≥ wi

sj > sqOPT(J)

sj ≥OPT(J), contradição.

(17)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

Para toda tarefai tqA(i)∈Lk+1,

`A(i)≥(k+1)OPT(J) e wi >sqOPT(J).

Por contradição, suponha quej =A(i)6∈Lk.

Então, comosj ≤sq, a carga dej em A seria

≥ wi

sj > sqOPT(J)

sj ≥OPT(J), contradição.

(18)

Prova do lema

Lema: A(i)∈Lk para toda tarefa i tq A(i)∈Lk+1. Prova: Sejaq máquina de menor índice emL\Lk. Temos que a carga`q<kOPT(J).

Para toda tarefai tqA(i)∈Lk+1,

`A(i)≥(k+1)OPT(J) e wi >sqOPT(J).

Por contradição, suponha quej =A(i)6∈Lk. Então, comosj ≤sq, a carga de j em A seria

≥ wi

sj > sqOPT(J)

sj ≥OPT(J), contradição.

(19)

Segunda parte

Γ−1 denota a inversa da função gama,Γ(k) = (k−1)!.

Lema: Existe um jogoJ = (n,m,w,s) e atribuição A: [n]→[m]

em equilíbrio tq

custo(A) ≥ 1

2 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas. GrupoGk: kq!! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas por A.

(20)

Segunda parte

Γ−1 denota a inversa da função gama,Γ(k) = (k−1)!.

Lema: Existe um jogoJ = (n,m,w,s) e atribuição A: [n]→[m]

em equilíbrio tq

custo(A) ≥ 1

2 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: kq!! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas por A.

(21)

Segunda parte

Γ−1 denota a inversa da função gama,Γ(k) = (k−1)!.

Lema: Existe um jogoJ = (n,m,w,s) e atribuição A: [n]→[m]

em equilíbrio tq

custo(A) ≥ 1

2 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

(22)

Segunda parte

Lema: Existe um jogoJ = (n,m,w,s) e atribuição Aem equilíbrio tqcusto(A) ≥ 12 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Total de máquinas:

q

X

k=0

|Gk|=

q

X

k=0

q! k! =q!

q

X

k=0

1

k! ≤3Γ(q+1)≤m. Completem com máquinas sem grupo e vazias de velocidade 1 (como as deG0).

(23)

Segunda parte

Lema: Existe um jogoJ = (n,m,w,s) e atribuição Aem equilíbrio tqcusto(A) ≥ 12 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Total de máquinas:

q

X

k=0

|Gk|=

q

X

k=0

q!

k! =q!

q

X

k=0

1

k! ≤3Γ(q+1)≤m.

Completem com máquinas sem grupo e vazias de velocidade 1 (como as deG0).

(24)

Segunda parte

Lema: Existe um jogoJ = (n,m,w,s) e atribuição Aem equilíbrio tqcusto(A) ≥ 12 Γ−1(m)−2−o(1)

OPT(J).

Prova: Sejaq =bΓ−1(m/3)−1c e

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Total de máquinas:

q

X

k=0

|Gk|=

q

X

k=0

q!

k! =q!

q

X

k=0

1

k! ≤3Γ(q+1)≤m.

Completem com máquinas sem grupo e vazias de velocidade 1 (como as deG0).

(25)

A está em equilíbrio?

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso2k atribuídas porA.

Carga emAde máquina emGk ék.

Então tarefa em máquina deGk não quer mudar para máquina emGj comj ≥k (que tem cargaj ≥k), nem para máquina deGj com j <k, pois

j+2k

2j =j+2k−j ≥j+ (k−j+1) =k+1, já que 2t≥t+1 pra todot ≥1.

(26)

A está em equilíbrio?

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso2k atribuídas porA.

Carga emAde máquina emGk ék.

Então tarefa em máquina deGk não quer mudar para máquina emGj comj ≥k (que tem cargaj ≥k), nem para máquina deGj com j <k, pois

j+2k

2j =j+2k−j ≥j+ (k−j+1) =k+1, já que 2t≥t+1 pra todot ≥1.

(27)

A está em equilíbrio?

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso2k atribuídas porA.

Carga emAde máquina emGk ék.

Então tarefa em máquina deGk não quer mudar para máquina emGj comj ≥k (que tem cargaj ≥k),

nem para máquina deGj com j <k, pois j+2k

2j =j+2k−j ≥j+ (k−j+1) =k+1, já que 2t≥t+1 pra todot ≥1.

(28)

A está em equilíbrio?

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso2k atribuídas porA.

Carga emAde máquina emGk ék.

Então tarefa em máquina deGk não quer mudar para máquina emGj comj ≥k (que tem cargaj ≥k), nem para máquina deGj com j <k, pois

j +2k

2j =j+2k−j ≥j+ (k−j+1) =k+1, já que 2t≥t+1 pra todot ≥1.

(29)

Jogo e equilíbrio

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q.

Vamos mostrar queOPT(J)≤2.

Considere atribuiçãoA que atribui a máquinas deGk−1

as tarefas queAatribuiu a máquinas de Gk.

Tarefas queAatribuiu a Gk: k|Gk|= q!kk! = (k−1)!q! =|Gk−1|. Uma tarefa em cada máquina, com custo de 2k−12k =2.

(30)

Jogo e equilíbrio

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q.

Vamos mostrar queOPT(J)≤2.

Considere atribuiçãoA que atribui a máquinas deGk−1

as tarefas queAatribuiu a máquinas de Gk.

Tarefas queAatribuiu a Gk: k|Gk|= q!kk! = (k−1)!q! =|Gk−1|. Uma tarefa em cada máquina, com custo de 2k−12k =2.

(31)

Jogo e equilíbrio

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q.

Vamos mostrar queOPT(J)≤2.

Considere atribuiçãoA que atribui a máquinas deGk−1

as tarefas queAatribuiu a máquinas de Gk.

Tarefas queAatribuiu a Gk: k|Gk|= q!kk! = (k−1)!q! =|Gk−1|. Uma tarefa em cada máquina, com custo de 2k−12k =2.

(32)

Jogo e equilíbrio

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q.

Vamos mostrar queOPT(J)≤2.

Considere atribuiçãoA que atribui a máquinas deGk−1

as tarefas queAatribuiu a máquinas de Gk.

Tarefas queAatribuiu a Gk: k|Gk|= q!kk! = (k−1)!q! =|Gk−1|.

Uma tarefa em cada máquina, com custo de 2k−12k =2.

(33)

Jogo e equilíbrio

Sejaq =bΓ−1(m/3)−1ce

sejamG0, . . . ,Gq grupos disjuntos de máquinas.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q.

Vamos mostrar queOPT(J)≤2.

Considere atribuiçãoA que atribui a máquinas deGk−1

as tarefas queAatribuiu a máquinas de Gk.

Tarefas queAatribuiu a Gk: k|Gk|= q!kk! = (k−1)!q! =|Gk−1|.

Uma tarefa em cada máquina, com custo de 2k−12k =2.

(34)

Conclusão

G0, . . . ,Gq grupos de máquinas comq =bΓ−1(m3)−1c.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q e OPT(J)≤2.

Preço da anarquia deste jogo: ≥ q2 = −1(m/3)−1c2 ComoΓ−1(m)= Θ lg lglgmm

,

existemc em0 tq Γ−1(m)≥c(lg lglgmm

,param≥m0. Então, param≥3m0, o preço da anarquia é

≥ bΓ−1(m/3)−1c

2 ≥ bc(lg lglgm/3m/3

−1c

2 = Ω lgm

lg lgm .

(35)

Conclusão

G0, . . . ,Gq grupos de máquinas comq =bΓ−1(m3)−1c.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q e OPT(J)≤2.

Preço da anarquia deste jogo: ≥ q2 = −1(m/3)−1c2

ComoΓ−1(m)= Θ lg lglgmm ,

existemc em0 tq Γ−1(m)≥c(lg lglgmm

,param≥m0. Então, param≥3m0, o preço da anarquia é

≥ bΓ−1(m/3)−1c

2 ≥ bc(lg lglgm/3m/3

−1c

2 = Ω lgm

lg lgm .

(36)

Conclusão

G0, . . . ,Gq grupos de máquinas comq =bΓ−1(m3)−1c.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q e OPT(J)≤2.

Preço da anarquia deste jogo: ≥ q2 = −1(m/3)−1c2 ComoΓ−1(m)= Θ lg lglgmm

,

existemc em0 tq Γ−1(m)≥c(lg lglgmm

,param≥m0.

Então, param≥3m0, o preço da anarquia é

≥ bΓ−1(m/3)−1c

2 ≥ bc(lg lglgm/3m/3

−1c

2 = Ω lgm

lg lgm .

(37)

Conclusão

G0, . . . ,Gq grupos de máquinas comq =bΓ−1(m3)−1c.

GrupoGk: q!k! máquinas com velocidade 2k,

cada uma comk tarefas de peso 2k atribuídas porA.

Aé um equilíbrio de custo social q e OPT(J)≤2.

Preço da anarquia deste jogo: ≥ q2 = −1(m/3)−1c2 ComoΓ−1(m)= Θ lg lglgmm

,

existemc em0 tq Γ−1(m)≥c(lg lglgmm

,param≥m0. Então, param≥3m0, o preço da anarquia é

≥ bΓ−1(m/3)−1c

2 ≥ bc(lg lglgm/3m/3

−1c

2 = Ω lgm

lg lgm .

(38)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time): Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo. Teorema: A atribuição calculada por LPT é um equilíbrio. Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(39)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time): Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo. Teorema: A atribuição calculada por LPT é um equilíbrio. Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(40)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo. Teorema: A atribuição calculada por LPT é um equilíbrio. Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(41)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso,

pondo-as em máquinas que minimizem o seu custo. Teorema: A atribuição calculada por LPT é um equilíbrio. Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(42)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio. Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(43)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas). Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(44)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(45)

Tempo de convergência

No caso demáquinas relacionadas,

não se conhece resultado como o para máquinas idênticas.

Mas podemos computar um equilíbrio eficientemente.

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Após colocarmos a última tarefa, apenas outras tarefas da mesma máquina podem ter se tornado insatisfeitas.

(46)

LPT devolve um equilíbrio

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Sejat a última tarefa, ej a máquina a que foi atribuída.

Apenas tarefas alocadas aj podem estar insatisfeitas.

Sejai <t uma tarefa alocada a j. Lembre-se quewi ≥wt. Então `(js)

j`(j)+ws t

j`(j)+ws i

j , para todo j em [m] Logoi está satisfeita e a atribuição está em equilíbrio.

(47)

LPT devolve um equilíbrio

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Sejat a última tarefa, ej a máquina a que foi atribuída.

Apenas tarefas alocadas aj podem estar insatisfeitas.

Sejai <t uma tarefa alocada a j. Lembre-se quewi ≥wt.

Então `(js)

j`(j)+ws t

j`(j)+ws i

j , para todo j em [m] Logoi está satisfeita e a atribuição está em equilíbrio.

(48)

LPT devolve um equilíbrio

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Sejat a última tarefa, ej a máquina a que foi atribuída.

Apenas tarefas alocadas aj podem estar insatisfeitas.

Sejai <t uma tarefa alocada a j. Lembre-se quewi ≥wt. Então `(js)

j`(j)+ws t

j`(j)+ws i

j , para todo j em [m]

(onde`(j) é a soma dos pesos das tarefas atribuídas aj).

Logoi está satisfeita e a atribuição está em equilíbrio.

(49)

LPT devolve um equilíbrio

Algoritmo LPT (largest processing time):

Atribua tarefas em ordem decrescente de peso, pondo-as em máquinas que minimizem o seu custo.

Teorema: A atribuição calculada por LPT é um equilíbrio.

Prova: Por indução no número de tarefas (colocadas).

Sejat a última tarefa, ej a máquina a que foi atribuída.

Apenas tarefas alocadas aj podem estar insatisfeitas.

Sejai <t uma tarefa alocada a j. Lembre-se quewi ≥wt. Então `(js)

j`(j)+ws t

j`(j)+ws i

j , para todo j em [m]

Logoi está satisfeita e a atribuição está em equilíbrio.

(50)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj

Jogo com estratégias mistas

ConjuntoS = [q]e cada jogador escolhe uma distribuição de probabilidadeσi em S. Vetor de estratégias mistas: σ = (σ1, . . . , σn)

Custo deσ para i: custoi(σ) =P

A∈Sncustoi(A)Prσ[A].

(51)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Jogo com estratégias mistas

ConjuntoS = [q]e cada jogador escolhe uma distribuição de probabilidadeσi em S.

Vetor de estratégias mistas: σ = (σ1, . . . , σn)

Custo deσ para i: custoi(σ) =P

A∈Sncustoi(A)Prσ[A].

(52)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Jogo com estratégias mistas

ConjuntoS = [q]e cada jogador escolhe uma distribuição de probabilidadeσi em S.

Vetor de estratégias mistas: σ = (σ1, . . . , σn)

Custo deσ para i: custoi(σ) =P

A∈Sncustoi(A)Prσ[A].

(53)

Jogo de balanceamento de carga

Dados:

I n tarefas

I q máquinas

I wi: peso da tarefa i

I sj: velocidade da máquinaj Jogo com estratégias mistas

ConjuntoS = [q]e cada jogador escolhe uma distribuição de probabilidadeσi em S.

Vetor de estratégias mistas: σ = (σ1, . . . , σn)

Custo deσ para i: custoi(σ) =P

A∈Sncustoi(A)Prσ[A].

(54)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

3 4

Pior equilíbrio de estratégias puras tem makespan 4. Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3

(55)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

3 4

Pior equilíbrio de estratégias puras tem makespan 4.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3

(56)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

3 4

Pior equilíbrio de estratégias puras tem makespan 4.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3

(57)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3

Custocij para tarefa i ficar numa máquina específicaj: cij = E[`(j)]+1

2 ·2 = 4 se wi =2

= E[`(j)]+1

2 ·1 = 3,5 se wi =1 Independe doj, por isso é um equilíbrio.

(58)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3 Custocij para tarefa i ficar numa máquina específicaj:

cij = E[`(j)]+1

2 ·2 = 4 se wi =2

= E[`(j)]+1

2 ·1 = 3,5 se wi =1

Independe doj, por isso é um equilíbrio.

(59)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

E[`(j)] = 2·2·1

2 +2·1·1 2 = 4

2 +2 2 = 3 Custocij para tarefa i ficar numa máquina específicaj:

cij = E[`(j)]+1

2 ·2 = 4 se wi =2

= E[`(j)]+1

2 ·1 = 3,5 se wi =1 Independe doj, por isso é um equilíbrio.

(60)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

Este é umequilíbrio.

Qual é o makespan esperado? 1

16(2·6+4·5+6·4+4·3) = 1

16(32+36) = 4,25 Isso é pior que o pior vetor de estratégias puras.

(61)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

Este é umequilíbrio.

Qual é o makespan esperado?

1

16(2·6+4·5+6·4+4·3) = 1

16(32+36) = 4,25 Isso é pior que o pior vetor de estratégias puras.

(62)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

Este é umequilíbrio.

Qual é o makespan esperado?

1

16(2·6+4·5+6·4+4·3) = 1

16(32+36) = 4,25

Isso é pior que o pior vetor de estratégias puras.

(63)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

Vetor de estratégias mistas: cada tarefa escolhe a máquina uniforme e independentemente.

Este é umequilíbrio.

Qual é o makespan esperado?

1

16(2·6+4·5+6·4+4·3) = 1

16(32+36) = 4,25 Isso é pior que o pior vetor de estratégias puras.

(64)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1

Cada tarefa escolhe uma máquina com probabilidade 1/m. Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado? Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente. Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(65)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado? Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente. Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(66)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado? Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente. Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(67)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado?

Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente. Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(68)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado?

Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente.

Quantas bolas no compartimento mais cheio? Isso é exatamente omakespan esperado!

(69)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado?

Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente.

Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(70)

Quão pior pode ser?

mmáquinas idênticas(velocidade 1) e n tarefas de peso 1 Cada tarefa escolhe uma máquina com probabilidade 1/m.

Novamente é um equilíbrio.

O ótimo édn/me e omakespan esperado?

Balls and bins:

cada uma den bolas independentemente é colocada em um demcompartimentos escolhido uniformemente.

Quantas bolas no compartimento mais cheio?

Isso é exatamente omakespan esperado!

(71)

Delimitação inferior no PoA

Balls and bins:

cada uma den bolas independentemente é colocada em um deq compartimentos escolhido uniformemente.

Proposição:

O valor esperado da ocupação máxima éΘ lnq

ln 1+qnlnq .

Teorema: Para todo q, existe uma instânciaJ do jogo de

balanceamento de carga comq máquinas idênticas e n =q tarefas que tem um equilíbrio de Nash mistoP com

custo(P) = Ω ln lnlnqq

OPT(J).

(72)

Delimitação inferior no PoA

Balls and bins:

cada uma den bolas independentemente é colocada em um deq compartimentos escolhido uniformemente.

Proposição:

O valor esperado da ocupação máxima éΘ lnq

ln 1+qnlnq .

Teorema: Para todo q, existe uma instânciaJ do jogo de

balanceamento de carga comq máquinas idênticas e n =q tarefas que tem um equilíbrio de Nash mistoP com

custo(P) = Ω ln lnlnqq

OPT(J).

(73)

Delimitação inferior no PoA

Balls and bins:

cada uma den bolas independentemente é colocada em um deq compartimentos escolhido uniformemente.

Proposição:

O valor esperado da ocupação máxima éΘ lnq

ln 1+qnlnq .

Teorema: Para todo q, existe uma instânciaJ do jogo de

balanceamento de carga comq máquinas idênticas e n =q tarefas que tem um equilíbrio de Nash mistoP com

custo(P) = Ω ln lnlnqq

OPT(J).

(74)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo

de balanceamento de carga comq máquinas idênticas e sejaP um equilíbrio de Nash do jogo. Vale que

custo(P) =O ln lnlnqq

OPT(J).

Prova: Lembre-se quecusto(P) =E[maxj∈[m]`(j)]. Primeiramente,E[`(j)]≤ 2−m+12

OPT(J).

Relembremos resultado para o jogocom estratégias puras: Teorema: Para o jogo de balanceamento de carga

emm máquinas idênticascom estratégias puras, PoA(m) = 2−m+12

.

(75)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo

de balanceamento de carga comq máquinas idênticas e sejaP um equilíbrio de Nash do jogo. Vale que

custo(P) =O ln lnlnqq

OPT(J).

Prova: Lembre-se quecusto(P) =E[maxj∈[m]`(j)].

Primeiramente,E[`(j)]≤ 2−m+12

OPT(J).

Relembremos resultado para o jogocom estratégias puras: Teorema: Para o jogo de balanceamento de carga

emm máquinas idênticascom estratégias puras, PoA(m) = 2−m+12

.

(76)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo

de balanceamento de carga comq máquinas idênticas e sejaP um equilíbrio de Nash do jogo. Vale que

custo(P) =O ln lnlnqq

OPT(J).

Prova: Lembre-se quecusto(P) =E[maxj∈[m]`(j)].

Primeiramente,E[`(j)]≤ 2−m+12

OPT(J).

Relembremos resultado para o jogocom estratégias puras: Teorema: Para o jogo de balanceamento de carga

emm máquinas idênticascom estratégias puras, PoA(m) = 2−m+12

.

(77)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo

de balanceamento de carga comq máquinas idênticas e sejaP um equilíbrio de Nash do jogo. Vale que

custo(P) =O ln lnlnqq

OPT(J).

Prova: Lembre-se quecusto(P) =E[maxj∈[m]`(j)].

Primeiramente,E[`(j)]≤ 2−m+12

OPT(J).

Relembremos resultado para o jogocom estratégias puras:

Teorema: Para o jogo de balanceamento de carga emm máquinas idênticascom estratégias puras,

PoA(m) = 2−m+12 .

(78)

Relembrando...

Teorema: Para o jogo de balanceamento de carga emm máquinas idênticascom estratégias puras,

PoA(m) = 2−m+12 .

Prova: JogoJ = (n,m,w) e atribuiçãoA: [n]→[m].

j: máquina com carga máxima em A i: tarefa mais leve em j

`(j): carga da máquinaj emA

Se sói em j, então custo(A) =OPT(J)e nada a provar.

Senãowi12custo(A).

Não há máquina com carga menor que`(j)−wi

(oui teria incentivo para ir para tal máquina).

(79)

Relembrando...

Prova: JogoJ = (n,m,w) e atribuiçãoA: [n]→[m].

j: máquina com carga máxima em A i: tarefa mais leve em j

`(j): carga da máquinaj emA wi12custo(A).

Não há máquina com carga menor que`(j)−wi. Ou seja, para todoj ∈[m],

`(j) ≥ `(j)−wi ≥ custo(A)−1

2custo(A) = 1

2custo(A) e

OPT(J) ≥ P

i∈[n]wi

m =

P

j∈[m]`(j) m

≥ custo(A) + (m−1)custo(A)/2

m = (m+1)custo(A)

2m

(80)

Relembrando...

Prova: JogoJ = (n,m,w) e atribuiçãoA: [n]→[m].

j: máquina com carga máxima em A i: tarefa mais leve em j

`(j): carga da máquinaj emA wi12custo(A).

Não há máquina com carga menor que`(j)−wi. Ou seja,`(j) ≥ 12custo(A) para todo j ∈[m] e

OPT(J)≥ (m+1)custo(A)

2m ,

donde se conclui que

custo(A) ≤ 2− 2 m+1

OPT(J).

(81)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P

j: máquina com cargaesperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória) custo(P) =E[`(j)] epijwi12custo(P). Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(82)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P

i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória) custo(P) =E[`(j)] epijwi12custo(P). Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(83)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória) custo(P) =E[`(j)] epijwi12custo(P). Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(84)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória)

custo(P) =E[`(j)] epijwi12custo(P). Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(85)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória) custo(P) =E[`(j)]e pijwi12custo(P).

Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(86)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emP (variável aleatória) custo(P) =E[`(j)]e pijwi12custo(P).

Não há máquina com

cargaesperadamenor que E[`(j)]−pijwi

(oui teria incentivo para ir para tal máquina).

(87)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emA (variável aleatória) custo(P) =E[`(j)]e pijwi12custo(P).

Para todoj ∈[m],

E[`(j)] ≥ E[`(j)]−pijwi ≥ custo(P)−1

2custo(P) = 1

2custo(P).

(88)

Adaptação de parte da prova

Jogo de balanceamento de cargacom estratégias mistas jogoJ= (n,m,w), vetor de estratégias mistas P j: máquina com carga esperadamáxima em P i: tarefa com prob. positiva emj epijwi mínimo.

`(j): carga da máquinaj emA (variável aleatória) custo(P) =E[`(j)]e pijwi12custo(P).

Para todoj ∈[m],

E[`(j)] ≥ E[`(j)]−pijwi ≥ custo(P)−1

2custo(P) = 1

2custo(P).

Referências

Documentos relacionados

O presente estudo foi realizado com o objetivo de descrever o perfil das mulheres que tiveram parto na maternidade do Hospital Universitário Polydoro Ernani de São Thiago em

Valores de referência Ótimo &lt; 100 mg/dL Desejável 100 a 129 mg/dL Limítrofe 130 a 159 mg/dL  Alto 160 a 189 mg/dL Muito alto &gt; 190 mg/dL. V Diretriz Brasileira de Dislipidemias

Este dado diz respeito ao número total de contentores do sistema de resíduos urbanos indiferenciados, não sendo considerados os contentores de recolha

▪ O solo é um meio extremamente heterogêneo ▪ O volume de solo adjacente às raízes das plantas, e, mais intimamente envolvido na troca. de materiais com elas, é

Então, em Belém, há principalmente duas situações que podem provocar eventos extremos: Na estação chuvosa, quando a grande escala (ZCIT) está atuando sobre a região, e

Se pensarmos nesse compromisso de engajamento como fator primordial para o exercício de ativismo pelas narrativas artísticas, a proposta de divisão dos conceitos

A partir da análise de cadernos escolares das décadas de 1960 e 1970, busca-se investigar a presença de uma geometria proposta pelo Movimento da Matemática Moderna

Esse sistema permite a obtenção de um composto orgânico com qualidades físicas, químicas e biológicas comprovadas, sendo o produto certificado pelo