A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Agentes Baseados em Utilidade. Parte I: Decisões Simples “Como um agente deve tomar decisões de modo que, em média, ele consiga o que quer”

Apresentações semelhantes


Apresentação em tema: "Agentes Baseados em Utilidade. Parte I: Decisões Simples “Como um agente deve tomar decisões de modo que, em média, ele consiga o que quer”"— Transcrição da apresentação:

1 Agentes Baseados em Utilidade

2 Parte I: Decisões Simples “Como um agente deve tomar decisões de modo que, em média, ele consiga o que quer”

3 Decision Theoretic Agent Agente capaz de...  Tomar decisões racionais baseado no que acredita e deseja Diferentemente de um agente lógico  Pode tomar decisões em ambientes com incertezas e objetivos conflitantes  Possui uma escala contínua de medida de qualidade sobre os estados Valores associados a cada estado (utilidade) indicando a “felicidade” do agente ! Funções de Utilidade associam um valor a um estado  Indica o “desejo” por estar nesse estado  U(S) = utilidade estado S de acordo com o agente  Ex.: s 1 = {rico, famoso}, s 2 = {pobre, famoso} U(s 1 ) = 10 U(s 2 ) = 5

4 Funções de Utilidade Result i (A): Todos os possíveis estados de saída de uma ação não- determinista A Para cada saída possível é associada uma probabilidade:  P (Result i (A) | Do(A), E)  Onde, E resume a evidência que o agente possuí do mundo Do(A) indica que a ação A foi executada no estado atual Utilidade esperada de uma ação A dado a evidência do mundo E: EU(A|E) =  i P(Result i (A)|Do(A),E) U(Result i (A)) Principio da Maximização da Utilidade: agente racional deve escolher ação que maximiza sua utilidade esperada !!!

5 Exemplo: Cálculo da Utilidade Esperada Robô deve transportar uma caixa E = caixa é de metal a 1 = Chutar:s 1, caixa no destino 20%U(s 1 ) = 10 s 2, caixa no meio do caminho 30%U(s 2 ) = 5 s 3, caixa longe destino 50%U(s 3 ) = 0 a 2 = Carregar: s 1, caixa no destino 80%U(s 1 ) = 10 s 2, caixa na origem 20%U(s 2 ) = 0 EU(a 1 ) = 0,20 x 10 + 0,30 x 5 + 0,50 x 0 = 3,5 EU(a 2 ) = 0,80 x 10 + 0,20 x 0 = 8

6 Preferências Racionais Funções de Utilidade são, essencialmente, heurísticas! Preferências racionais permitem descrever o melhor comportamento como aquele que maximiza EU Notação:  A  B: A é preferível a B  A ~ B: agente indiferente entre A e B  A  B: agente prefere A à B ou é indiferente Para ações não-deterministas:  A e B são loterias, i.e., distribuições probabilísticas sobre um conjunto de estados de saída L = {p 1.S 1 ; p 2. S 2;...; p n.S n }

7 Restrições Sobre Preferências Racionais Axiomas da Teoria da Utilidade:  Ordenabilidade: (A > B)  ( B > A)  (A ~ B)  Transitividade: (A > B)  (B > C)  (A > C)  Continuidade: A > B > C   p [p.A; 1 - p.C] ~ B  Substitutabilidade: A ~ B  [p.A; 1 – p.C] ~ [p.B; 1 – p.C]  Monoticidade: A > B  ( p  q  [p.A; 1 – p.B]  [q.A; 1 – q.B] )  Decomposabilidade: [p.A; 1 – p. [q.B; 1 – q.C] ] ~ [p.A; (1 – p)q.B; (1 – p)(1 – q). C] Principio da Utilidade: Preferências que satisfaçam os axiomas garantem a existência de uma função real U, tal que:  U(A) > U(B)  A > B  U(A) = U(B)  A ~ B  U (p 1.S 1 ;... ; p n.S n ) =  i p i U(S i )

8 Exemplo: Restrições Sobre Preferências Racionais Violação das restrições levam a comportamentos irracionais Exemplo: agente com preferências não transitivas pode ser induzido a dar todo o seu dinheiro: CB 1 c CB A CB A Se B > C, então um agente que possuí C pagaria 1 centavo para obter B Se C > A, então um agente que possuí A pagaria 1 centavo para obter C Se A > B, então um agente que possui B pagaria 1 centavo para obter A

9 Exemplo: A Utilidade do Dinheiro Um jogador ganhou um prêmio de R$ 1.000.000 em um programa de TV Apresentador oferece uma aposta:  Se ele jogar a moeda e aparecer cara  jogador perde tudo  Se aparecer coroa  jogador ganha R$ 3.000.000 O Valor Monetário Esperado da aposta é:  0.5 (R$ 0) + 0.5 (R$ 3.000.000) = $ 1.500.000 O Valor Monetário Esperado de recusar a aposta é de R$ 1.000.000 (menor) Isso indica que seria melhor aceitar a aposta ?

10 Exemplo: A Utilidade do Dinheiro Utilidade Esperada para cada uma das duas ações:  EU (Aceitar) = 0.5 U(S k ) + 0.5 U(S k+3.000.000 )  EU (Rejeitar) = U(S k+1.000.000 ) Onde, S k = riqueza atual do jogador Deve-se atribuir valores de utilidade para cada estado de saída:  S k = 5;  S k+3.000.000 = 10;  S k+1.000.000 = 8 Ação racional: rejeitar ! Conclusão: Utilidade não é diretamente proporcional ao valor monetário  Utilidade (mudança no estilo de vida) para o primeiro R$ 1.000.000 é muito alta

11 Funções de Utilidade Multi-Atributo Como tratar funções de utilidades com várias variáveis X 1,..., X n ?  Ex.: Construir aeroporto, Variáveis: Segurança, Custo, Poluição sonora U (Segurança, Custo, Poluição sonora) = ? Existem basicamente dois casos:  Dominância: decisões podem ser tomadas sem combinar os valores dos atributos em um único valor da utilidade  Estrutura de Preferência e Utilidade Multi-atributo: utilidade resultante da combinação dos valores dos atributos pode ser especificada concisamente

12 Dominância Total Se um estado S 1 possui valores melhores em todos seus atributos do que S 2, então existe uma dominância total de S 1 sobre S 2   i X i (S 1 )  X i (S 2 ) (e portanto U(S 1 )  U(S 2 )) Ex.: Local S 1 para Aeroporto custa menos e é mais seguro que S 2 Dominância total raramente acontece na prática !!!

13 Estrutura de Preferência e Utilidade Multi-Atributo Supondo que existem n atributos com d possíveis valores:  No pior caso, serão necessários d n valores (preferência sem regularidade!) A Teoria da Utilidade Multi-atributo assume que preferências de agentes possuem certa regularidade (estrutura)  Abordagem básica é tentar identificar essas regularidades! Agentes com uma certa estrutura em suas preferências terá uma função: U(x 1... X n ) = f[ f 1 (x 1 )..... f 2 (x 2 ) ] Onde espera-se que f seja uma função simples!

14 Estrutura de Preferência X 1 e X 2 são preferencialmente independente de X 3 se, e somente se:  Preferência entre {x 1, x 2, x 3 } e {x 1 ’, x 2 ’, x 3 } não depende em x 3 Independência preferencial mútua (MPI): todos os pares de atributos são preferencialmente independente com relação aos demais  Ex.: Segurança, Custo, Poluição sonora Com MPI, o comportamento preferencial do agente pode ser descrito como uma maximização da função:  V (x 1... x n ) =  i V i (x i )

15 Redes de Decisões Formalismo para expressar e resolver problemas de decisão: estende Redes Bayesianas adicionando ações e utilidades Composto de:  Nós de Chance (ovais): representam variáveis como nas redes Bayesianas  Nós de Decisão (retângulo): pontos onde agente deve escolher uma ação  Nós de Utilidade (diamantes): representam as funções de utilidade do agente Algoritmo de avaliação: 1. Atribuir os valores das variáveis para o estado corrente; 2. Calcular o valor esperado do nó de utilidade dado a ação e os valores das variáveis; 3. Retornar a ação com maior Utilidade Máxima Esperada

16 Exemplo: Redes de Decisões Barulho Segurança Custo Trafego aéreo Construção Litigação Local do Aeroporto U Info. sobre estado atual Info. sobre estado futuro

17 Teoria do Valor da Informação Problemas anteriores assumiam que todas as informações estavam disponíveis O que acontece quando elas não estão?  Cabe ao agente buscar as informações necessárias... No entanto...  Obtenção de informações tem um custo associado  Ex.: solicitação de um exame por parte de um medico A Teoria do Valor da Informação permite que o agente escolha quais informações adquirir

18 Cálculo do Valor da Informação: Exemplo Exemplo: comprar os direitos de exploração de reservas de petróleo:  Dois blocos A e B, apenas um possui óleo com valor C;  Probabilidade de comprar o bloco certo = 0,5  O preço de cada bloco é C/2  Consultor oferece uma pesquisa para detectar qual bloco possui petróleo.  Qual o valor dessa informação? Solução:  Calcular o valor esperado da informação = valor esperado da melhor ação dada a informação – valor esperado da melhor ação sem a informação;  Pesquisador irá informar: “há óleo em A” ou “não há óleo em A” (p = 0,5)  Então: 0,5 x valor de “comprar A” dado que “há óleo em A” + 0,5 x valor de “comprar B” dado que “não há óleo em A” – 0 = = (0,5 x C/2) + (0,5 x C/2) – 0 = C/2

19 Parte 2: Decisões Complexas “Métodos para decidir o que fazer hoje, dado que nós poderemos ter que decidir de novo amanhã”

20 Problemas de Decisões Seqüenciais Anteriormente estávamos lidando com problemas de decisão episódicos:  Utilidade de cada resultado de uma ação conhecido! Problemas de decisões seqüenciais:  Utilidade do agente depende de uma seqüência de decisões  Envolvem utilidades, incertezas e percepção

21 Exemplo: Ambiente 4x3 Interação termina quando agente alcança um dos estados finais (+1 ou -1) Ações disponíveis:  Up, Down, Left e Right Ambiente totalmente observável  Agente sabe onde está! Ações não confiáveis  Locomoção estocástica Se agente bater em uma parede permanecerá no mesmo quadrado Em cada estado s agente recebe uma Recompensa R(s):  R(s) = -0.04 para todos estados não terminais  Dois estados finais R(s) = +1 ou R(s) = -1 Por enquanto, utilidade pode ser dada pela soma das recompensas recebidas! 1243 3 2 1 INÍCIO +1 0.8 0.1

22 Processo de Decisão de Markov (PDM) Especificação de um problema de decisão seqüencial em um ambiente totalmente observável com um modelo de transição de Markov e recompensas aditivas Definido pelos seguintes componentes:  Estado Inicial: S 0  Modelo de Transição: T(s,a,s’) Probabilidade de chegar a s’ como resultado da execução da ação a no estado s  Função de Recompensa: R(s) Utilidade a curto prazo do estado s para o agente Hipótese de transições Markovianas:  Próximo estado depende apenas da ação atual e do estado atual, não dependendo de estados passados

23 Como são as soluções desse problema? Uma solução deve especificar o que o agente deve fazer em qualquer estados em que possa chegar Seqüência fixa de ações não o resolvem:  Ações não confiáveis não geram estados deterministicamente Solução: construir uma Política (Policy):   (s) = ação recomendada para estado s  Assim, o agente sabe como atuar em qualquer estado Utilidade esperada de uma política é dada pelas seqüências de ações que ela pode gerar Política Ótima  * :  Política que produz a mais alta utilidade esperada 1243 3 2 1      +1 

24 Solução 1: Algoritmo Value Iteration Idéia: calcular a utilidade dos estados e utilizá-las para escolher uma ação ótima Utilidade de cada estado definida em termos da utilidade das seqüências de ações que podem se seguir a partir dele  R(s): recompensa a “curto prazo” por se estar em s  U(s): recompensa total a “longo prazo” a partir de s Utilidade de um estado é dada pela recompensa imediata para aquele estado mais a utilidade esperada descontada do próximo estado, assumindo que o agente escolhe a ação ótima Utilidade de um estado é dado pela equação de Bellman:  U(s) = R(s) +  max a  s ’ T(s,a,s’) U(s’)

25 Algoritmo Value Iteration Exemplo:  U(1,1) = -0.04 +  max { 0.8 U(1,2) + 0.1 U(2,1) + 0.1 U(1,1),(Up) 0.9 U(1,1) + 0,1 U(2,1),(Left) 0.9 U(1,1) + 0.1 U(2,1),(Down) 0.8 U(2,1) + 0.1 U(1,2) + 0.1 U(1,1) }(Right) Equações de Bellman são a base do algoritmo Value Iteration para resolver PDMs U(s) = R(s) +  max a ∑ s’ T(s,a,s’).U(s’)

26 Algoritmo Value Iteration Algoritmo: 1. Inicializar utilidades com valores arbitrários (ex.: 0) 2. Calcular o lado direito da equação para cada estado 3. Atualizar valor da utilidade de cada estado 4. Continuar até atingir um equilíbrio 1243 3 2 1 0.812 0.762 0.705 0.8120.918 0.660 +1 0.6550.6110.388

27 Algoritmo Policy Iteration Idéia: se uma ação é claramente melhor que outras, então a magnitude exata da utilidade de cada estado não necessita ser precisa Alterna entre dois passos, iniciando a partir de uma política inicial  0 qualquer:  Avaliação da Política: dada política  i, calcular U i = U  i  Melhora da Política: calcular nova política  i+1, baseado em U i

28 Algoritmo Policy Iteration Algoritmo: Enquanto não (mudouPolítica) Para cada estado s se ( max a  s’ T(s,a,s’) U[s’] ) > (  s’ T(s,  i (s),s’) U[s’]) então  [s] = argmax a  s’ T(s,a,s’) U[s’] mudouPolítica = true; Algoritmo encerra quando passo Melhora da Política não produz nenhuma mudança nas utilidades

29 Algoritmo Policy Iteration Mais simples para Avaliar a Utilidade de um estado:  Policy Iteration: U i (s) = R(s) +   s ’ T(s,  i (s), s’) U i (s’)  Value Iteration: U(s) = R(s) +  max a  s ’ T(s,a,s’) U(s’) Exemplo:  U i (1,1) = 0.8 U i (1,2) + 0.1 U i (1,1) + 0.1 U i (2,1) 1243 3 2 1      +1 

30 Referência Bibliográfica AIMA, Stuart Russel  Cap. 16 e Cap. 17


Carregar ppt "Agentes Baseados em Utilidade. Parte I: Decisões Simples “Como um agente deve tomar decisões de modo que, em média, ele consiga o que quer”"

Apresentações semelhantes


Anúncios Google