programação dinâmica aproximada para aplicações de alta ... · sistema trilhando a árvore de...

86
Programação Dinâmica Aproximada para Aplicações de Alta Dimensionalidade X Simpósio de Aplicações Operacionais em Áreas de Defesa 26 de Setembro de 2008 © 2008 Warren B. Powell Slide 1 Hugo Passos Simão Warren B. Powell CASTLE Laboratory CASTLE Laboratory CASTLE Laboratory CASTLE Laboratory Princeton University http://www.castlelab.princeton.edu © 2008 H.Simão/W.Powell, Princeton University

Upload: lynhi

Post on 08-Nov-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Programação Dinâmica Aproximada paraAplicações de Alta Dimensionalidade

X Simpósio de Aplicações Operacionais em Áreas de Defesa26 de Setembro de 2008

© 2008 Warren B. Powell Slide 1

Hugo Passos SimãoWarren B. PowellCASTLE LaboratoryCASTLE LaboratoryCASTLE LaboratoryCASTLE LaboratoryPrinceton University

http://www.castlelab.princeton.edu

© 2008 H.Simão/W.Powell, Princeton University

Logística e transportesLogística e transportesLogística e transportesLogística e transportes

Companhias de transporteCompanhias de transporteCompanhias de transporteCompanhias de transporte

•Reposicionamento de locomotivas numa rede ferroviária.

•Alocação de motoristas a cargas rodoviárias.

•Alocação de tripulação e aeronaves a fregueses numa empresa de propriedade fracionária de jatos executivos.

•Roteamento de motoristas, caminhões-tanque e produtos numa rede de distribuição de gases liquefeitos.

Slide 4

liquefeitos.

Estoques de alto valorEstoques de alto valorEstoques de alto valorEstoques de alto valor

•Peças de reposição para aeronaves executivas: quantas peças em estoque e aonde localizá-las.

•Estoques sujeitos a restrições de orçamento e mínimos níveis de serviço.

•Transformadores de alta voltagem em redes de transmissão elétrica: altíssimo custo (~$5mi), baixa taxa de falhas e longo período de produção (1 a 2 anos).

•Falhas variam muito em termos do impacto econômico na rede.

Planejamento para um mundo sob riscoPlanejamento para um mundo sob riscoPlanejamento para um mundo sob riscoPlanejamento para um mundo sob risco

ClimaClimaClimaClima

•Projeto robusto de redes de reação a emergências.

•Projeto de instrumentos financeiros que contrabalancem emergências climáticas a fim de proteger indivíduos, companhias e municípios.

•Projeto de redes de sensores e sistemas de comunicação para gerenciar as reações a eventos climáticos de porte.

Slide 5

DoençasDoençasDoençasDoenças

•Modelos de propagação de doenças para o planejamento de reações.

•Gerenciamento de pessoal e equipamento médicos e de vacinas em resposta a surtos epidêmicos.

•Projeto robusto de cadeias de suprimentos para resistir a interrupções no sistema de transportes.

Gerenciamento de energiaGerenciamento de energiaGerenciamento de energiaGerenciamento de energia

AlocaAlocaAlocaAlocação de recursos energéticosção de recursos energéticosção de recursos energéticosção de recursos energéticos

•Qual é a combinação adequada de tecnologias energéticas?

•Como coordenar o uso de diferentes recursos energéticos ao longo do tempo e espaço?

•Como deveria ser o portfólio de P&D em energia?

•Deve-se investir em energia nuclear?

•Qual o impacto de um imposto sobre a emissão de dióxido de carbono?

Slide 6

dióxido de carbono?

Mercados de energiaMercados de energiaMercados de energiaMercados de energia

•Como contrabalançar diferentes recursos energéticos?

•Qual é o preço correto dos recursos energéticos?

•E qual é o preço correto para contratos de opção futura em energia?

Desafios

� Controle em tempo real» Alocação de aeronaves, pilotos, geradores e aviões-tanque

» Preço de ações e opções

» Alocação de recursos elétricos

� Planejamento tático de curto-prazo» Devo aceitar o pedido de um freguês?

Slide 7

» Devo aceitar o pedido de um freguês?

» Devo alugar equipamento?

» Quanta energia posso prometer com minhas turbinas eólicas?

� Planejamento estratégico» Quais são as melhores órbitas para aviões-tanque?

» Qual é a composição mais adequada de equipamento?

» Qual é o valor de uma aeronave mais confiável?

Sumário

� Um modelo de alocação de recursos� Programação dinâmica aproximada� Reabastecimento em vôo – gerenciamento de aviões-

tanque� Transporte e logística militar

© 2008 Warren B. Powell Slide 8

Um modelo de alocação de recursos

� Vetor de atributos:

Localizacao Localizacao Tipo Tipo de ativo

Slide 9

a = Localizacao

Horario de chegada

Tipo de aeronave

Combustivel

Base

Tripulacao

Eqpt1

Eqpt100

M

Localizacao

Horario de chegada

Domicilio

Experiencia

Horas dirigindo

Tipo

Localizacao

Idade

Tipo de ativo

Tempo de

investimento

Um modelo de alocação de recursos

� Modelando recursos:» Os atributos de uma unidade de recurso:

» O vetor de estado dos recursos:

Os atributos de uma unidade de recurso

O dominio de atributos

a

a

=∈A

Slide 10

» O vetor de estado dos recursos:

» A evolução de informações:

ˆ Mudanca no nivel de recursos com atributo .taR a=

( )Nivel de recursos com atributo no instante

O vetor de estado dos recursos no instante

ta

t ta a

R a t

R R t∈

=

=A

Um modelo de alocação de recursos

� Modelando demanda (ou tarefas):» Os atributos de uma unidade de demanda:

» O vetor de estado da demanda:

Os atributos de uma unidade de demanda a ser servida

O dominio de atributos

b

b

=∈B

Slide 11

» O vetor de estado da demanda:

» A evolução de informações:

ˆ Mudanca no nivel de demanda com atributo .tbD b=

( )Nivel de demanda com atributo no instante

O vetor de estado da demanda no instante

tb

t tb b

D b t

D D t∈

=

=B

Modelando recursos energéticos

� O estado do sistema:

( ), , Estado do sistema, onde:

Nivel de recursos (capacidade, reservas)

Nivel de demanda

t t t t

t

t

S R D

R

D

ρ

ρ

= =

===

Slide 12

"parametros do sistema"

Tecnologia (custos, desempentρ =

ho)

Clima (temperatura, precipitacao, vento)

Politicas governamentais (incentivos ao

uso de energia solar)

Precos de mercado (petroleo, carvao)

Modelando recursos energéticos

� A variável de decisão:

aumento ou

reducao de nivel

Slide 13

:

recurso

/

demanda

t

para cadax

=

Modelando recursos energéticos

� Dados exógenos:

( )ˆ ˆ ˆNovos dados = , ,t t t tW R D ρ=

Slide 14

ˆ Mudancas exogenas em capacidade, reservas

ˆ Novas demandas por energia de cada fonte

ˆ Mudancas exogenas nos parametros.

t

t

t

R

D

ρ

=

==

Modelando recursos energéticos

� A função de transição:

Slide 15

1 1( , , )Mt t t tS S S x W+ +=

Um modelo de alocação de recursos

DemandaRecursos

Slide 16

Um modelo de alocação de recursos

t t+1 t+2

Slide 17

Um modelo de alocação de recursos

t t+1 t+2Otimizando ao longo do horizonte

Slide 18

Otimizando num intervalo de tempo

Sumário

� Um modelo de alocação de recursos� Programação dinâmica aproximada� Reabastecimento em vôo – gerenciamento de aviões-

tanque� Transporte e logística militar

© 2008 Warren B. Powell Slide 19

Chuva .8 -$2000

Nublado .2 $1000Sol .0 $5000Chuva .8 -$200Nublado .2 -$200Sol .0 -$200Chuva .1 -$2000

Nublado .5 $1000

Sol .4 $5000Chuva .1 -$200

Nublado .5 -$200

Informação64748

Ação64748

Informação64748

Ação64748

Estado

Estado

Nublado .5 -$200Sol .4 -$200Chuva .1 -$2000

Nublado .2 $1000

Sol .7 $5000Chuva .1 -$200

Nublado .2 -$200

Sol .7 -$200Chuva .2 -$2000

Nublado .3 $1000

Sol .5 $5000Chuva .2 -$200

Nublado .3 -$200Sol .5 -$200

- Nós de decisão

- Nós de resultados

-$1400

-$200

$2300

-$200

$3500

-$200

$2400

-$200

-$200

$2300

$3500

$2400

-$200

$2770

$2400

A equação de Bellman

� Nós acabamos de resolver a equação de Bellman:

{ }( )1 1( ) max ( , ) ( ) |t t t t t t t tx

V S C S x E V S S+ +∈= +

X

Slide 24

» Nós descobrimos o valor de estar em cada estado do sistema trilhando a árvore de decisão no sentido inverso.

A equação de Bellman

� O desafio da programação dinâmica:

{ }( )1 1( ) max ( , ) ( ) |t t t t t t t tx

V S C S x E V S S+ +∈= +

X

Slide 25

� Problema: a praga da dimensionalidade

Três pragas

O domínio de estadosO domínio de resultados

O domínio de ações (região viável)

A equação de Bellman

� O desafio computacional:

{ }( )1 1( ) max ( , ) ( ) |t t t t t t t tx

V S C S x E V S S+ +∈= +

X

Slide 26

Como determinar ? 1 1( )t tV S+ +

Como calcular o valor esperado?

Como achar a solução ótima?

Use

wea

ther

repo

rt

Forecast sunny .6

Rain .8 -$2000

Clouds .2 $1000Sun .0 $5000Rain .8 -$200

Clouds .2 -$200Sun .0 -$200

Schedule game

Cancel game

Rain .1 -$2000

Clouds .5 $1000Sun .4 $5000Rain .1 -$200

Clouds .5 -$200Sun .4 -$200

Schedule game

Cancel game

Forecast cloudy .3

Forecast ra

in .1U

se w

eath

er re

port

Forecast sunny .6

Rain .8 -$2000

Clouds .2 $1000Sun .0 $5000Rain .8 -$200

Clouds .2 -$200Sun .0 -$200

Schedule game

Cancel game

Rain .1 -$2000

Clouds .5 $1000Sun .4 $5000Rain .1 -$200

Clouds .5 -$200Sun .4 -$200

Schedule game

Cancel game

Forecast cloudy .3

Forecast ra

in .1

tS

1tS+

Do not use

weather report

Use

wea

ther

repo

rt

Forecast sunny .6

Sun .4 -$200Rain .1 -$2000

Clouds .2 $1000Sun .7 $5000Rain .1 -$200

Clouds .2 -$200

Sun .7 -$200

Schedule game

Cancel game

Rain .2 -$2000

Do not use

weather report

Use

wea

ther

repo

rt

Forecast sunny .6

Sun .4 -$200Rain .1 -$2000

Clouds .2 $1000Sun .7 $5000Rain .1 -$200

Clouds .2 -$200

Sun .7 -$200

Schedule game

Cancel game

Rain .2 -$2000

{ }( )1 1( ) max ( , ) ( ) |t t t t t t t tx

V S C S x E V S S+ +∈= +

X

Use

wea

ther

repo

rt

Forecast sunny .6

Rain .8 -$2000

Clouds .2 $1000Sun .0 $5000Rain .8 -$200

Clouds .2 -$200Sun .0 -$200

Schedule game

Cancel game

Rain .1 -$2000

Clouds .5 $1000Sun .4 $5000Rain .1 -$200

Clouds .5 -$200Sun .4 -$200

Schedule game

Cancel game

Forecast cloudy .3

Forecast ra

in .1U

se w

eath

er re

port

Forecast sunny .6

Rain .8 -$2000

Clouds .2 $1000Sun .0 $5000Rain .8 -$200

Clouds .2 -$200Sun .0 -$200

Schedule game

Cancel game

Rain .1 -$2000

Clouds .5 $1000Sun .4 $5000Rain .1 -$200

Clouds .5 -$200Sun .4 -$200

Schedule game

Cancel game

Forecast cloudy .3

Forecast ra

in .1

Do not use

weather report

Use

wea

ther

repo

rt

Forecast sunny .6

Sun .4 -$200Rain .1 -$2000

Clouds .2 $1000Sun .7 $5000Rain .1 -$200

Clouds .2 -$200

Sun .7 -$200

Schedule game

Cancel game

Rain .2 -$2000

Clouds .3 $1000Sun .5 $5000Rain .2 -$200

Clouds .3 -$200

Sun .5 -$200

Schedule game

Cancel game- Decision nodes

- Outcome nodes

Do not use

weather report

Use

wea

ther

repo

rt

Forecast sunny .6

Sun .4 -$200Rain .1 -$2000

Clouds .2 $1000Sun .7 $5000Rain .1 -$200

Clouds .2 -$200

Sun .7 -$200

Schedule game

Cancel game

Rain .2 -$2000

Clouds .3 $1000Sun .5 $5000Rain .2 -$200

Clouds .3 -$200

Sun .5 -$200

Schedule game

Cancel game- Decision nodes

- Outcome nodes

Estados pré e pós-decisão

� Um novo conceito:» A variável de estado “pré-decisão”:

• Equivalente ao “nó de decisão” na árvore de decisão.

Informacao necessaria para se tomar a decisao t tS x=

Slide 29

» A variável de estado “pós-decisão”:

• Equivalente ao “nó de resultados” na árvore de decisão.

O estado daquilo que se conhece imediatamente

depois de se tomar a decisao.

xtS =

Estados pré e pós-decisão

� Um problema de estoque:» A equação básica de estoque:

{ }1 1ˆmax 0,

onde

estoque no instante

t t t t

t

R R x D

R t

+ += + −

=

Slide 30

» Usando estados pré e pós-decisão:

1

estoque no instante

quantidade encomendada

ˆ demanda no periodo que comeca no instante .

t

t

t

R t

x

D t+

==

=

{ }1 1

estado pos-decisao

ˆmax 0, estado pre-decisao

xt t t

xt t t

R R x

R R D+ +

= +

= −

Estados pré e pós-decisão

( , )t t tS R D=

� Pré-decisão: recursos e demandas

Slide 31

, ( , )x M xt t tS S S x=

Estados pré e pós-decisão

Slide 32

Estados pré e pós-decisão

xtS ,

1 1( , )M W xt t tS S S W+ +=

Slide 331 1 1

ˆ ˆ( , )t t tW R D+ + +=

Estados pré e pós-decisão

1tS+

Slide 34

Equações de Bellman com o estado pós-decisão

� Forma clássica da equação de Bellman:

� As equações de Bellman usando os estados pré e pós-decisão:» Problema de otimização(tomando a decisão):

{ }( )1 1( ) max ( , ) ( ) |t t t t t t t tx

V S C S x E V S S+ +∈= +

X

Slide 35

» Problema de otimização(tomando a decisão):

• Nota: este problema é determinístico!

» Problema de simulação (o efeito de informaçõesexógenas):

( )( ),( ) max ( , ) ( , ) x M xt t x t t t t t t tV S C S x V S S x= +

{ },1 1( ) ( ( , )) |x x M W x x

t t t t t tV S E V S S W S+ +=

Equações de Bellman com o estado pós-decisão

� Desafios» Na maioria dos problemas práticos é difícil computar

» Proposta: substituir por uma aproximação e resolver

( )( ) max ( , ) ( ) x xt t x t t t t tV S C S x V S= +

( )x xt tV S

( )xt tV S

Slide 36

resolver

» O problema agora se torna:• Qual aproximação?• Como estimá-la?

( )( ) max ( , ) ( ) xt t x t t t t tV S C S x V S= +

Aproximando a função de valor

� Aproximações para a função de valor:» Linear (nas variáveis de estado):

» Linear por partes, separável:

( )x xt t ta ta

a

V R v R∈

= ⋅∑A

Slide 37

» Indexada, linear por partes, separável:

( ) ( )x xt t ta ta

a

V R V R∈

=∑A

( ) ( ) | ( )x xt t ta ta t

a

V R V R caracteristicas∈

=∑A

Aproximando a função de valor

� Aproximações para a função de valor :» Ridge Regression(Klabjan and Adelman)

( ) ( ) f

xt t tf tf tf fa ta

f a

V R V R R Rθ∈ ∈

= =∑ ∑F A

Slide 38

» Cortes de Benders

0x

( )t tV R

1x

Estimando a função de valor

� Comparação com outros métodos:» PMD Clássico (iteração de valor)

» PDA Clássica (estado pré-decisão):

( )11( ) max ( , ) ( )n n

x tV S C S x EV Sγ −+= +

Slide 39

» Nosso método (atualizar no estado pós-decisão):

( ), 1 ,

, 1 ,1 1 1 1 1 1

ˆ max ( , ) ( ( , ))

ˆ( ) (1 ) ( )

n n x n M x nt x t t t t t t

n x n n x n nt t n t t n t

v C S x V S S x

V S V S vα α

−− − − − − −

= +

= − +

( )11

'

11 1

ˆ max ( , ) ( ' | , ) '

ˆ( ) (1 ) ( )

n n n nt x t t t t t t

s

n n n n nt t n t t n t

v C S x p s S x V s

V S V S vα α

−+

−− −

= +

= − +

ˆ atualiza ( )t t tv V S

1 1ˆ atualiza ( )xt t tv V S− −

, 1x ntV −

Valor esperado

Esquema geral do algoritmo

Passo 1: Comece com o estado pré-decisão

Passo 2: Resolva a otimização determinística usando

uma função de valor aproximada:

para obter . ( )1 ,ˆ max ( , ) ( ( , ) )n n n M x n

t x t t t t t tv C S x V S S x−= +ntx

ntS

Otimizaçãodeterminística

Slide 40

Passo 3: Atualize a função de valor aproximada

Passo 4: Gere uma amostra Monte Carlo of

e compute o próximo estado pré-decisão:

Passo 5: Retorne ao passo 1.

, 1 ,1 1 1 1 1 1̂( ) (1 ) ( )n x n n x n n

t t n t t n tV S V S vα α−− − − − − −= − +

t

( )ntW ω

1 1( , , ( ))n M n n nt t t tS S S x W ω+ +=

Simulação

Estatísticarecursiva

Sumário

� Um modelo de alocação de recursos� Programação dinâmica aproximada� Reabastecimento em vôo – gerenciamento de aviões-

tanque� Transporte e logística militar

© 2008 Warren B. Powell Slide 41

Missões a serem cumpridas por caças a partir de suas bases

Bases dos aviões-tanque

Tanque voando da base para uma órbita de abastecimento

Trajetória retilínea de abastecimento

Receptor voando de uma base para uma órbita

Base de aviões-tanque com aviões lá

Receptor reabastecido voando para o objetivo

Tanque retornando à base

Tanque/ Receptor

Tanque numa órbita

Receptor

-Verde: reabastendo

-Azul: tanque na órbita

-Marrom: receptores em fila

Quanto mais curto o vôo após reabastecimento, mais combustível disponível para o objetivo

Reabastecimento em vôo

� Sequenciamento de decisões e informações

Reabastecimento em vôo

� Para cada período de tempo, primeiro aloque os aviões-tanque:

Reabastecimento em vôo

1nR →

2nR →

� Para cada período de tempo, primeiro aloque os aviões-tanque:

3nR →

4nR →

5nR →

Reabastecimento em vôo

1nR →

2nR →

� Depois simule a fila de caças-receptores:

3nR →

4nR →

5nR →

Reabastecimento em vôo

� Dada uma alocação de tanques no instantet:

» Simule o movimento e processamento de receptores entre t e t+1

Tanque

Receptores

TempoÓrbita

Tanque

Reabastecimento em vôo

� Calculando derivadas:

ˆ ( ) ( )ta t t a t tv F R e F Rπ π= + −

Custo (combustível consumido pelos receptores) dada uma alocação de tanques e uma política de reabastecimento

tRπ

Custo se adicionarmos um tanque com atributos a (localização, tipo, etc) e resimularmos

Average Tankers In Flight per Period

8

10

12

14T

anke

rs

Reabastecimento em vôo

0

2

4

6

1 13 25 37 49 61 73 85 97 109

121

133

145

157

169

181

193

Iteration

Tan

kers

8

10

12

14

Tan

kers

Reabastecimento em vôo

Custo do avião-tanque mais alto

0

2

4

6

1 13 25 37 49 61 73 85 97 109

121

133

145

157

169

181

193

Iteration

Tan

kers

Reabastecimento em vôo

� Possibilidades:» Mais realismo na representacao de recursos (atributos,

operações).» Modelar a organização e o fluxo de informações e

decisões:• Que informações estão sendo comunicadas• Quem tomaas decisões, quando e com que informações• Quem tomaas decisões, quando e com que informações

» Estudos:• Qual o valor de diferentes arquiteturas de comunicação?• Como diferentes características do avião-tanque (ex.

capacidade de aceitar combustível de um outro tanque) afetam o desempenho do sistema?

• Qual é o custo de incerteza no processo de tomada de decisões robustas?

Sumário

� Um modelo de alocação de recursos� Programação dinâmica aproximada� Reabastecimento em vôo – gerenciamento de aviões-

tanque� Transporte e logística militar

© 2008 Warren B. Powell Slide 77

Comando de Mobilidade Aérea

Comando

Combustível

Manutenção

Armazenagem

ComandoMobilidade

Aérea

CarregamentoPátio

O Transporte Aéreo Militar Americano

The optimization challenge

Qual é a melhor alocação de aeronaves a requisições?

The optimization challenge

Custos reais: $3000 - custo de vôo

Porém:- Deseja-se evitar a passagem de C 5’s pela

Arábia Saudita porque lá não há equipamentos de manutenção apropriados para essa aeronave(mas, na falta de outras opções …).

The optimization challenge

?

Impacto de falhas pré-decolagem

Transporte e logística militar

Aeronaves RequisiçõesCalifornia

Germany

New Jersey

Taiwan

England

New Jersey

tR

=

� Recursos conhecidos …e previstos

ColoradoNew Jersey

CaliforniaGermany

New Jersey

Colorado

Taiwan

England

New Jersey

( )' 't t tR

>=

Transporte e logística militar

� Estudos:

» Qual é o efeito de incertezas na demanda no cronograma de transporte aéreo militar?

» Qual é o efeito de falhas das aeronaves?» Qual é o efeito de falhas das aeronaves?

» Qual é o efeito de ter informações mais cedo?

� Livro do Prof. Warren Powell

� www.castlelab.princeton.edu

Referências:

© 2008 Warren B. Powell Slide 85

© 2008 Warren B. Powell Slide 86