• Nenhum resultado encontrado

Jogo de balanceamento de carga

N/A
N/A
Protected

Academic year: 2021

Share "Jogo de balanceamento de carga"

Copied!
103
0
0

Texto

(1)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j

(2)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Cada jogador controla uma tarefa. Conjuntos de estratégias Si = [m]:

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

(3)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Cada jogador controla uma tarefa. Conjuntos de estratégias Si = [m]:

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

(4)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Cada jogador controla uma tarefa. Conjuntos de estratégias Si = [m]:

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

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

k:A(k)=j wksj .

(5)

Caso de máquinas relacionadas

Teorema: Para o jogo de balanceamento de carga

em m máquinas relacionadas, PoA(m) = Θ lg lg mlg m .

Primeira parte (aula passada):

Mostrar que para jogos J = (n, m, w, s) e

atribuições A : [n] → [m] em equilíbrio vale que custo(A) = O lg m

(6)

Caso de máquinas relacionadas

Teorema: Para o jogo de balanceamento de carga

em m máquinas relacionadas, PoA(m) = Θ lg lg mlg m .

Primeira parte (aula passada):

Mostrar que para jogos J = (n, m, w, s) e

atribuições A : [n] → [m] em equilíbrio vale que custo(A) = O lg m

lg lg m.

Segunda parte:

Apresentar jogo J = (n, m, w, s) e

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

lg lg m.

(7)

Segunda parte

Lema: Existe um jogo J = (n, m, w, s) e atribuição A : [n] → [m] em equilíbrio tq

custo(A) ≥ 1 2 Γ

−1

(8)

Segunda parte

Lema: Existe um jogo J = (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: Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas.

(9)

Segunda parte

Lema: Existe um jogo J = (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: Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

(10)

Segunda parte

Lema: Existe um jogo J = (n, m, w, s) e atribuição A em equilíbrio tq custo(A) ≥ 12 Γ−1(m) − 2 − o(1)opt(J).

Prova: Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

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

(11)

Segunda parte

Lema: Existe um jogo J = (n, m, w, s) e atribuição A em equilíbrio tq custo(A) ≥ 12 Γ−1(m) − 2 − o(1)opt(J).

Prova: Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. 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.

(12)

Segunda parte

Lema: Existe um jogo J = (n, m, w, s) e atribuição A em equilíbrio tq custo(A) ≥ 12 Γ−1(m) − 2 − o(1)opt(J).

Prova: Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. 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. Complete m com máquinas sem grupo e vazias de velocidade 1 (como as de G0).

(13)

A está em equilíbrio?

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

(14)

A está em equilíbrio?

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. Carga em A de máquina em Gk é k.

(15)

A está em equilíbrio?

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. Carga em A de máquina em Gk é k.

Então tarefa em máquina de Gk não quer mudar

(16)

A está em equilíbrio?

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. Carga em A de máquina em Gk é k.

Então tarefa em máquina de Gk não quer mudar

para máquina em Gj com j ≥ k (que tem carga j ≥ k), nem para máquina de Gj com j < k, pois

j + 2

k

2j = j + 2

k−j

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

(17)

Jogo e equilíbrio

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q.

(18)

Jogo e equilíbrio

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q.

Vamos mostrar que opt(J) ≤ 2.

(19)

Jogo e equilíbrio

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q.

Vamos mostrar que opt(J) ≤ 2.

Considere atribuição A∗ que atribui a máquinas de Gk−1 as tarefas que A atribuiu a máquinas de Gk.

(20)

Jogo e equilíbrio

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q.

Vamos mostrar que opt(J) ≤ 2.

Considere atribuição A∗ que atribui a máquinas de Gk−1 as tarefas que A atribuiu a máquinas de Gk.

Tarefas que A atribuiu a Gk: k|Gk| = q!kk! = (k−1)!q! = |Gk−1|.

(21)

Jogo e equilíbrio

Seja q = ⌊Γ−1(m/3) − 1⌋ e

sejam G0, . . . , Gq grupos disjuntos de máquinas. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q.

Vamos mostrar que opt(J) ≤ 2.

Considere atribuição A∗ que atribui a máquinas de Gk−1 as tarefas que A atribuiu a máquinas de Gk.

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

(22)

Conclusão

G0, . . . , Gq grupos de máquinas com q = ⌊Γ−1(m3 ) − 1⌋. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q e opt(J) ≤ 2.

(23)

Conclusão

G0, . . . , Gq grupos de máquinas com q = ⌊Γ−1(m3 ) − 1⌋. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q e opt(J) ≤ 2.

(24)

Conclusão

G0, . . . , Gq grupos de máquinas com q = ⌊Γ−1(m3 ) − 1⌋. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q e opt(J) ≤ 2.

Preço da anarquia deste jogo: q2 = ⌊Γ−1(m/3)−1⌋2 Como Γ−1(m) = Θ lg lg mlg m ,

existem c e m0 tq Γ−1(m) ≥ c (lg lg mlg m , para m ≥ m0.

(25)

Conclusão

G0, . . . , Gq grupos de máquinas com q = ⌊Γ−1(m3 ) − 1⌋. Grupo Gk: k!q! máquinas com velocidade 2k,

cada uma com k tarefas de peso 2k atribuídas por A. A é um equilíbrio de custo social q e opt(J) ≤ 2.

Preço da anarquia deste jogo: q2 = ⌊Γ−1(m/3)−1⌋2 Como Γ−1(m) = Θ lg lg mlg m ,

existem c e m0 tq Γ−1(m) ≥ c (lg lg mlg m , para m ≥ m0. Então, para m ≥ 3m0, o preço da anarquia é

≥ ⌊Γ −1(m/3) − 1⌋ 2 ≥ ⌊c (lg lg m/3lg m/3  − 1⌋ 2 = Ω lg m lg lg m.

(26)

Tempo de convergência

No caso de máquinas relacionadas, não se conhece resultado como o para máquinas idênticas.

(27)

Tempo de convergência

No caso de máquinas relacionadas, não se conhece resultado como o para máquinas idênticas.

(28)

Tempo de convergência

No caso de má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):

(29)

Tempo de convergência

No caso de má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):

(30)

Tempo de convergência

No caso de má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.

(31)

Tempo de convergência

No caso de má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.

(32)

Tempo de convergência

No caso de má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).

(33)

Tempo de convergência

No caso de má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.

(34)

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). Seja t a última tarefa, e j∗ a máquina a que foi atribuída. Apenas tarefas alocadas a j∗ podem estar insatisfeitas.

(35)

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). Seja t a última tarefa, e j∗ a máquina a que foi atribuída. Apenas tarefas alocadas a j∗ podem estar insatisfeitas.

(36)

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). Seja t a última tarefa, e j∗ a máquina a que foi atribuída. Apenas tarefas alocadas a j∗ podem estar insatisfeitas.

Seja i < t uma tarefa alocada a j∗. Lembre-se que wi ≥ wt. Então ℓ(js ∗) j∗ ≤ ℓ(j)+wt sj ≤ ℓ(j)+wi sj , para todo j em [m]

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

(37)

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). Seja t a última tarefa, e j∗ a máquina a que foi atribuída. Apenas tarefas alocadas a j∗ podem estar insatisfeitas.

Seja i < t uma tarefa alocada a j∗. Lembre-se que wi ≥ wt. Então ℓ(js ∗) j∗ ≤ ℓ(j)+wt sj ≤ ℓ(j)+wi sj , para todo j em [m]

(38)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j

(39)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Jogo com estratégias mistas

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

(40)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Jogo com estratégias mistas

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

(41)

Jogo de balanceamento de carga

Dados: n tarefas m máquinas wi: peso da tarefa i sj: velocidade da máquina j Jogo com estratégias mistas

Conjunto S = [m] 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

(42)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

(43)

Exemplo

Duas máquinas idênticas,

duas tarefas de peso 2, duas de peso 1.

3 4

(44)

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 · 12 + 2 · 1 · 12 = 4 2 +

2

2 = 3

(45)

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

(46)

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

Custo cij para tarefa i ficar numa máquina específica j:

cji = E[ℓ(j)] + 1

2 · 2 = 4 se wi = 2

= E[ℓ(j)] + 1

2 · 1 = 3,5 se wi = 1

(47)

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

Custo cij para tarefa i ficar numa máquina específica j:

cji = E[ℓ(j)] + 1

2 · 2 = 4 se wi = 2

= E[ℓ(j)] + 1

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

(48)

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 é um equilíbrio.

(49)

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 é um equilíbrio.

(50)

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 é um equilíbrio.

Qual é o makespan esperado? 1

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

1

16(32 + 36) = 4,25

(51)

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 é um equilí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.

(52)

Quão pior pode ser?

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

(53)

Quão pior pode ser?

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

(54)

Quão pior pode ser?

m má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.

(55)

Quão pior pode ser?

m má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.

(56)

Quão pior pode ser?

m má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 é ⌈n/m⌉ e o makespan esperado? Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

(57)

Quão pior pode ser?

m má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 é ⌈n/m⌉ e o makespan esperado? Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

(58)

Quão pior pode ser?

m má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 é ⌈n/m⌉ e o makespan esperado? Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

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

(59)

Delimitação inferior no PoA

Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

(60)

Delimitação inferior no PoA

Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

Proposição:

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

ln 1+mn lnm

 .

(61)

Delimitação inferior no PoA

Balls and bins:

cada uma de n bolas independentemente é colocada em um de m compartimentos escolhido uniformemente.

Proposição:

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

ln 1+mn lnm

 .

Teorema: Para todo m, existe uma instância J do jogo de balanceamento de carga com m máquinas idênticas e

n = m tarefas que têm um equilíbrio de Nash misto P com custo(P ) = Ω ln lnlnmmopt(J).

(62)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln lnlnmmopt(J).

(63)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln lnlnmmopt(J).

(64)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln lnlnmmopt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J).

(65)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln lnlnmmopt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J).

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

em m máquinas idênticas com estratégias puras, PoA(m) = 2 − m+12 .

(66)

Relembrando...

Teorema: Para o jogo de balanceamento de carga em m máquinas idênticas com estratégias puras,

PoA(m) = 2 − m+12 .

Prova: Jogo J = (n, m, w) e atribuição A : [n] → [m]. j∗: máquina com carga máxima em A

i∗: tarefa mais leve em j∗

ℓ(j): carga da máquina j em A

Se só i∗ em j∗, então custo(A) = opt(J) e nada a provar. Senão wi∗ ≤ 1

2 custo(A).

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

(ou i∗ teria incentivo para ir para tal máquina).

(67)

Relembrando...

Prova: Jogo J = (n, m, w) e atribuição A : [n] → [m]. j∗: máquina com carga máxima em A

i∗: tarefa mais leve em j∗

ℓ(j): carga da máquina j em A wi∗ ≤ 1

2 custo(A).

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

ℓ(j) ≥ ℓ(j∗) − wi∗ ≥ custo(A) − 1 2 custo(A) = 1 2 custo(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

(68)

Relembrando...

Prova: Jogo J = (n, m, w) e atribuição A : [n] → [m]. j∗: máquina com carga máxima em A

i∗: tarefa mais leve em j∗

ℓ(j): carga da máquina j em A wi∗ ≤ 1

2 custo(A).

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

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

2m ,

donde se conclui que

custo(A) ≤ 2 − m + 12 opt(J).

(69)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

(70)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

(71)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

(72)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo.

ℓ(j): carga da máquina j em P (variável aleatória)

(73)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo.

ℓ(j): carga da máquina j em P (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

(74)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo.

ℓ(j): carga da máquina j em P (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

Não há máquina com

carga esperada menor que E[ℓ(j∗)] − pi∗j∗wi∗ (ou i∗ teria incentivo para ir para tal máquina).

(75)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

(76)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

Para todo j ∈ [m],

E[ℓ(j)] ≥ E[ℓ(j∗)]−pi∗j∗wi∗ ≥ custo(P )−

1

2 custo(P ) = 1

2 custo(P ).

(77)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

(78)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

Para todo j ∈ [m], E[ℓ(j)] ≥ 12 custo(P ) e opt(J) ≥ P i∈[n] wi m = P j∈[m] E[ℓ(j)] m ≥ custo(P ) + (m − 1)custo(P )/2 m = (m + 1)custo(P ) 2m .

(79)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

Para todo j ∈ [m], E[ℓ(j)] ≥ 12 custo(P ) e opt(J) ≥ (m+1)custo(P )2m .

(80)

Adaptação de parte da prova

Jogo de balanceamento de carga com estratégias mistas jogo J = (n, m, w), vetor de estratégias mistas P

j∗: máquina com carga esperada máxima em P

i∗: tarefa com prob. positiva em j∗ e pi∗j∗wi∗ mínimo. ℓ(j): carga da máquina j em A (variável aleatória) custo(P ) = E[ℓ(j∗)] e pi∗j∗wi∗ ≤ 1

2 custo(P ).

Para todo j ∈ [m], E[ℓ(j)] ≥ 12 custo(P ) e opt(J) ≥ (m+1)custo(P )2m .

Logo, para todo j ∈ [m], E[ℓ(j)] ≤ 2 − 2 m + 1



opt(J).

(81)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J). Feito.

(82)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J). Feito. Logo maxj∈[m] E[ℓ(j)] ≤ 2opt(J).

(83)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J). Feito. Logo maxj∈[m] E[ℓ(j)] ≤ 2opt(J).

Vamos mostrar que o valor esperado da carga máxima desvia de um fator O ln ln mln m  do máximo dos valores esperados.

(84)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Primeiramente, E[ℓ(j)] ≤ 2 − m+12 opt(J). Feito. Logo maxj∈[m] E[ℓ(j)] ≤ 2opt(J).

Vamos mostrar que o valor esperado da carga máxima desvia de um fator O ln ln mln m  do máximo dos valores esperados.

Valor esperado da carga máxima é o custo(P ).

(85)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Vimos que maxj∈[m] E[ℓ(j)] ≤ 2opt(J).

(86)

Delimitação superior no PoA

Teorema: Considere uma instância J do jogo de

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

custo(P ) = O ln ln mln m opt(J).

Prova: Lembre-se que custo(P ) = E[maxj∈[m] ℓ(j)]. Vimos que maxj∈[m] E[ℓ(j)] ≤ 2opt(J).

Vamos mostrar que custo(P ) = O ln ln mln m maxj∈[m] E[ℓ(j)]. Ou melhor, mostraremos que custo(P ) = O ln ln mln m opt(J).

(87)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

(88)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Desigualdade ponderada de Chernoff: Sejam X1, . . . , XN v.a. independentes em [0, z] para algum z > 0 e seja

X = PN

i=1 Xi. Para todo t, Pr[X ≥ t] ≤ (e · E[X]/t)t/z.

(89)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Desigualdade ponderada de Chernoff: Sejam X1, . . . , XN v.a. independentes em [0, z] para algum z > 0 e seja

X = PN

i=1 Xi. Para todo t, Pr[X ≥ t] ≤ (e · E[X]/t)t/z.

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Aplicando Chernoff, Pr[ℓ(j) ≥ t] ≤ min{1, e E[ℓ(j)] t t/w } ≤ 2e opt(J) t t/opt(J)

(90)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Desigualdade ponderada de Chernoff: Sejam X1, . . . , XN v.a. independentes em [0, z] para algum z > 0 e seja

X = PN

i=1 Xi. Para todo t, Pr[X ≥ t] ≤ (e · E[X]/t)t/z.

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Aplicando Chernoff, Pr[ℓ(j) ≥ t] ≤ min{1, e E[ℓ(j)] t t/w } ≤ 2e opt(J) t t/opt(J)

pois E[ℓ(j)] ≤ 2 opt(J) e w ≤ opt(J).

(91)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Então Pr[ℓ(j) ≥ t] ≤ 2e opt(J)

t

optt(J) .

(92)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Então Pr[ℓ(j) ≥ t] ≤ 2e opt(J)

t

optt(J) . Para τ = 2 opt(J) ln m/ ln ln m, e qualquer x ≥ 0, Pr[ℓ(j) ≥ τ+x] ≤ e ln ln m ln m ln ln m2 ln m +optx(J) ≤ √ 1 ln m ln ln m2 ln m · eopt−x(J) = e−ln ln m2  2 ln m ln ln m · eopt(J)−x para m suf. grande, pois e ln ln mln m √ln m e e ln ln mln m e.

(93)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Então Pr[ℓ(j) ≥ t] ≤ 2e opt(J)

t

optt(J) . Para τ = 2 opt(J) ln m/ ln ln m, e qualquer x ≥ 0, Pr[ℓ(j) ≥ τ+x] ≤ e ln ln m ln m ln ln m2 ln m +optx(J) ≤ √ 1 ln m ln ln m2 ln m · eopt−x(J) = e−ln ln m2  2 ln m ln ln m · eopt−x(J) para m suf. grande, pois e ln ln mln m √ln m e e ln ln mln m ≥ e.

(94)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J).

Fix j ∈ [m] e seja w o maior peso de uma tarefa. Então Pr[ℓ(j) ≥ t] ≤ 2e opt(J)

t

optt(J) . Para τ = 2 opt(J) ln m/ ln ln m, e qualquer x ≥ 0, Pr[ℓ(j) ≥ τ+x] ≤ e ln ln m ln m ln ln m2 ln m +optx(J) ≤ √ 1 ln m ln ln m2 ln m · eopt−x(J) = e−ln ln m2  2 ln m ln ln m · eopt−x(J) ≤ m−1 · e−optx(J) .

(95)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

(96)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J).

E[X] = R0Pr[X ≥ t] dt para toda v.a. não-negativa.

(97)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J).

E[X] = R0Pr[X ≥ t] dt para toda v.a. não-negativa. Logo custo(P ) = R0∞ Pr[maxj∈[m] ℓ(j) ≥ t] dt e

(98)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J).

E[X] = R0Pr[X ≥ t] dt para toda v.a. não-negativa. Logo custo(P ) = R0∞ Pr[maxj∈[m] ℓ(j) ≥ t] dt e

custo(P ) ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt

(99)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J).

E[X] = R0Pr[X ≥ t] dt para toda v.a. não-negativa. Logo custo(P ) = R0∞ Pr[maxj∈[m] ℓ(j) ≥ t] dt e

custo(P ) ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 X j∈[m] Pr[ℓ(j) ≥ τ + t] dt

(100)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J) e custo(P ) ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 X j∈[m] Pr[ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 e−opt(J)x dx = τ + opt(J)

(101)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J) e custo(P ) ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 X j∈[m] Pr[ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 e−optx(J) dx = τ + opt(J)

(102)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J) e custo(P ) ≤ τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 X j∈[m] Pr[ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 e−optx(J) dx = τ + opt(J)

(103)

Resta mostrar que...

Lembrando que custo(P ) = E[maxj∈[m] ℓ(j)], resta mostrar que custo(P ) = O ln m

ln ln m 

opt(J). Para τ = 2 opt(J) ln mln ln m , e qualquer x ≥ 0,

Pr[ℓ(j) ≥ τ+x] ≤ m−1 · e−optx(J) e custo(P ) = τ + Z ∞ 0 Pr[max j∈[m] ℓ(j) ≥ τ + t] dt ≤ τ + Z ∞ 0 e−optx(J) dx = τ + opt(J) = O ln m ln ln m  opt(J).

Referências

Documentos relacionados

Esta pesquisa não possui como objeto as políticas de avaliação, em vigência desde o início da década de 1990, portanto, não é intuito realizar a análise de tais

As pontas de contato retas e retificadas em paralelo ajustam o micrômetro mais rápida e precisamente do que as pontas de contato esféricas encontradas em micrômetros disponíveis

Artigo de Revisão - 103 Queixas de dificuldades com a memória são frequentes em pessoas idosas que devem ser investigadas, pois, se detectadas no início, fica mais fácil de

Quando o escoamento não é axial nem radial, a máquina é denominada de fluxo misto, diagonal ou semi-axial, com as partículas de fluido percorrendo o rotor numa trajetória

Este trabalho busca reconhecer as fragilidades e potencialidades do uso de produtos de sensoriamento remoto derivados do Satélite de Recursos Terrestres Sino-Brasileiro

A proposta aqui apresentada prevê uma metodologia de determinação da capacidade de carga de visitação turística para as cavernas da região de Bulhas D’Água

Figura A53 - Produção e consumo de resinas termoplásticas 2000 - 2009 Fonte: Perfil da Indústria de Transformação de Material Plástico - Edição de 2009.. A Figura A54 exibe

Por esta razão, objetivamos analisar a política de expansão da Igreja Católica na Bahia, na década de 1950, e sua correlação com a criação do Primeiro Bispado em Vitória