JOGOS DE SOMA NÃO NULA NEBULOSOS: UMA PROPOSTA DE … · 2004. 12. 20. · A Teoria dos Jogos têm...
Transcript of JOGOS DE SOMA NÃO NULA NEBULOSOS: UMA PROPOSTA DE … · 2004. 12. 20. · A Teoria dos Jogos têm...
JOGOS DE SOMA NÃO NULA NEBULOSOS: UMA PROPOSTA DE RESOLUÇÃO
Ivana de Farias Nascimento
Universidade Estadual de Campinas – UNICAMP Faculdade de Engenharia Elétrica e de Computação –FEEC
Departamento de Telemática -DT Caixa Postal 6101 CEP 13081-970
Campinas – São Paulo – SP [email protected]
Akebo Yamakami (UNICAMP)
Universidade Estadual de Campinas – UNICAMP Faculdade de Engenharia Elétrica e de Computação –FEEC
Departamento de Telemática -DT Caixa Postal 6101 CEP 13081-970
Campinas – São Paulo – SP [email protected]
Resumo
Neste trabalho, jogos nebulosos são considerados, denominados, jogos de soma não nula com pagamentos nebulosos. As incertezas são representadas pelos números triangulares nebulosos. É apresentada uma metodologia de resolução baseada em um método de decomposição, onde os jogos são resolvidos por uma sequência de problemas de programação linear. Exemplos númericos inspirados no mercado de energia elétrica são apresentados para ilustrar a metodologia.
Palavras-chave: Jogos de soma não nula para 2 jogadores, Programação linear nebulosa, Mercado de Energia.
Abstract
In this paper, we consider fuzzy game, namely, nonzero-sum games with fuzzy payoffs. The uncertainty is represented by triangular fuzzy numbers. We present a methodology of resolution based on a decomposition method, where the games are resolved by a sequence of linear programming problems. Numerical examples inspired on electric market are presented to illustrate the methodology.
Keywords: Two-person nonzero-sum games, Fuzzy linear programming. Electric Market
1. Introdução
A vida é cheia de conflitos e competições. Exemplos não faltam para ilustrar este tipo de situação, tais como: empresas competindo por negócios, candidatos políticos competindo por votos, leiloeiros competindo em um leilão e muitas outras situações. A Teoria dos Jogos têm uma importância grande na teoria de decisão, pela sua grande aplicabilidade. Muitos problemas reais podem ser modelados como jogos. Entretanto, em situações reais existe uma dificuldade em se determinar com precisão os dados dos problemas, já que existe muita incerteza. É possível tratar tais problemas considerando algumas lacunas de aproximação ou certeza. O suporte dado pelos conjuntos nebulosos se torna uma ferramenta poderosa para a modelagem de problemas reais. Portanto, os Jogos Nebulosos estudam e solucionam problemas reais que podem ser modelados como jogos e possuem algum tipo de incerteza. Campos (1989), propôs métodos de solução para os jogos de soma nula nebulosos baseado em
362
programação linear. Maeda (2003) propôs um modelo geral, onde as incertezas são parametrizadas. Em outro trabalho, Maeda (2000) discutiu os jogos de soma não nula, mas não propôs uma metodologia de resolução.
Em Visudhiphan (1999) a teoria de jogos é usada para modelar os mercados de energia elétrica, em Singh (1999) a teoria de jogos é aplicada para determinar uma solução de equilíbrio no mercado de energia elétrica. Existe muitas outras situações reais, onde a teoria de jogos é aplicada.
Neste trabalho, os jogos nebulosos considerados serão os jogos de soma não nula nebulosos, onde as incertezas estão inseridas nas matrizes de pagamento dos jogadores. É proposta uma metodologia de resolução para este tipo de jogos e um algoritmo iterativo é apresentado, onde problemas de programação linear nebulosa são resolvidos iterativamente.
Para este propósito, o artigo está organizado da seguinte maneira: na seção 2, descreveremos os jogos de soma nula nebulosos. Na seção 3, apresentaremos o algoritmo para solucionar estes problemas. Aplicações no mercado de energia serão apresentadas na seção 4 e por fim, as conclusões e trabalhos futuros estarão na seção 5.
2. Jogos Nebulosos
O primeiro trabalho em jogos nebulosos foi de Butnariu (1978). O autor apresenta os conceitos para jogos com 2 ou n jogadores. Em Butnariu (1980) tem-se conceitos dos jogos nebulosos cooperativos. Tsurumi (2001) apresenta conceitos da função “shapley” em jogos nebulosos. Um novo conceito de excesso para jogos nebulosos cooperativos é apresentado em Sakawa (1994). Existe muitos trabalhos e discussões para os jogos nebulosos cooperativos, mas para os jogos nebulosos não-cooperativos existe poucos trabalhos.
Um jogo de soma não nula com 2 jogadores é aquele onde um os dois jogadores podem obter quantidades iguais ou diferentes, e um jogador pode ganhar e o outro perder. A situação, onde ambos simultaneamente ganham ou perdem também pode acontecer.
As incertezas do jogo estão na matriz de pagamentos de cada jogador, e cada componente da matriz é representado por um número triangular nebuloso, que pode ser simétrico ou não.
Nesta pesquisa, somente os jogos nebulosos com estratégias mistas serão estudados. O conjunto de todas as estratégias mistas disponíveis para os jogadores J1 e J2 podem ser representadas por:
( ){ }∑=
==≥ℜ∈≡m
iii
mmJ xmixxxxS
1211 1,,,2,1,0,,, KK
2.1
( ){ }∑=
==≥ℜ∈≡n
jjj
nnJ ynjyyyyS
1212 1,,,2,1,0,,, KK
2.2
Os jogos de soma não nula nebulosos podem ser formulados como um problema de programação bilinear nebuloso, descrito a seguir:
( )
0
0
1
1
~
~..
~~min
≥
≥
=
=
−≥
−≥
+++
y
x
ly
lx
qlxB
plyAts
qpyBAx
nt
mt
n
m
T
2.3
363
onde ( ) mTml ℜ∈= 1,,1,1 K e ( ) nT
nl ℜ∈= 1,,1,1 K .
A questão é como resolver este tipo de problema. Na teoria clássica, o problema de programação bilinear é solucionado através de um método de decomposição onde o problema de programção não-linear é transformado em uma sequência de problemas de programação linear. O algoritmo converge para um ponto de equilíbrio de Kuhn-Tucker.
Na seção seguinte o algoritmo para resolução dos jogos nebulosos será apresentado.
3. Algoritmo
Considere o problema descrito a seguir:
Yy
XxasydHyxxcyx TTT
∈
∈
++=
..),(min φ
3.1
Bazaraa (1979) apresentou um algoritmo para resolver este tipo de problema através de um método de decomposição que transforma o problema (3.1) em uma sequência de problemas de programção linear. O algoritmo, no final encontra um ponto de equilíbrio de Kuhn-Tucker.
O algoritmo obtém exito quando o conjunto das restrições do problema são conjuntos limitados poliedrais. A seguir, o algoritmo de Bazaraa:
Algoritmo 1 . Algoritmo de Bazaraa
Passo de Inicialização
Selecione nx ℜ∈1 e my ℜ∈1 . Seja 1=k , e vá para o passo principal.
Passo Principal
Passo 1: Resolva o P.L.
∈
+
YyasHyxyd T
kT
..min
. Seja y uma solução especificada a seguir e vá ao Passo
2.
<=
=+ ),()ˆ,(ˆ),()ˆ,(,
1kkk
kkkkk yxyxsey
yxyxseyy
φφφφ
Passo 2: Resolva o P.L.
∈
+ +
Xxas
Hyxxc kTT
..
min 1 . Seja x uma solução especificada a seguir e vá para o
Passo 3.
<=
=++
+++ ),(),ˆ(ˆ
),(),ˆ(,
11
111
kkk
kkkkk yxyxsex
yxyxsexx
φφφφ
Passo 3: Se kk xx =+1 e kk yy =+1 , pare, com ),( kk yx como um ponto de Kuhn-Tucker. Caso contrário, 1+= kk , e vá ao Passo 1.
Baseado neste algoritmo, apresentaremos um algoritmo para os jogos nebulosos.
364
3.1. Algoritmo para os Jogos Nebulosos
Considere um jogos de soma não nula nebuloso representado pelo problema (2.3). É preciso reescrever o problema na forma de (3.1). Definindo:
=
1py
u f
3.2
=
q
xv f 1
3.3
+=
IBAH ~0~
0~~~~
3.4
onde [ ]1nxx = , [ ]1mxy = , p, q são números escalares.
1~1~0~0~0~0~..
~min
=
=
≥
≥
≥
≥
fTf
fTf
fTf
fTf
ff
ff
fTf
Fu
Ev
Du
Cv
vB
uAas
uHv
3.5
onde: ( )LR0,0,11~ = , ( )LR0,0,00~ = e a matriz I~ é uma matriz identidade nebulosa. As matrizes no problema (3.5) são escrita da seguinte forma:
( )0~1~~AAf = 3.6 ( )1~0~~Tf BB = 3.7
=
xm
mxmf
IC
20~~
3.8
=
xn
nxnf
ID
20~~
3.9
=
12
1
0~1~
x
mxfE
3.10
=
12
1
0~1~
x
nxfF
3.11
Quando é aplicado o método de decomposição no problema (3.5), tem-se dois problemas de programação linear nebuloso, descritos a seguir:
1~0~0~..
~min
=
≥
≥
fTf
fTf
ff
fTf
Fu
Du
uAas
vHu
3.12
1~0~0~..
~min
=
≥
≥
fTf
fTf
ff
fTf
Ev
Cv
vBas
uHv
3.13
Estes problemas de programação linear nebulosos são resolvidos através da metodologia descrita em Cadenas (1995). Para os coeficientes nebulosos da função objetivo e das restrições, Cadenas aplica funções de rankeamento, como: o Índice de Adamo e o Primeiro Índice de Yager, respectivamente.
Portanto, os problemas (3.12) e (3.13) são reescritos como:
365
( )( )( )
[ ]1,0
1)~()1~()~(
1)~()0~()~(
1)~()0~()~(..
)~(min
3222
2222
1222
1
∈
−+=
−+≥
−+≥
α
α
α
α
tGGufG
tGGudG
tGGuaGas
uHvG T
3.14
( )( )( )
[ ]1,0
1)~()1~()~(
1)~()0~()~(
1)~()0~()~(..
)~(min
3222
2222
1222
1
∈
−+=
−+≥
−+≥
α
α
α
α
tGGveG
tGGvcG
tGGvbGas
vHuG T
3.15
onde 1G e 2G são funções de rankeamento. 1G é aplicada a cada coeficiente da função objetivo e 2G é aplicada a cada coeficiente das restrições e it são números nebulosos, onde ( )LRtt 0,0,032 == .
A seguir, o algoritmo para resolução dos jogos nebulosos:
Algoritmo 2 . Algoritmo dos Jogos Nebulosos
- Reescreva o jogo de soma não nula na forma do problema (3.5);
- Faça a decomposição do problema de programação bilinear para dois problemas de programação linear nebulosa;
- Escolha as funções de rankeamento 1G para a função objetivo e 2G para os coeficientes das restrições e
- Aplique 1G a cada coeficiente da função objetivo e 2G em cada coeficientes das restrições e obtenha dois problemas de programação linear;
- Aplique o Algoritmo de Bazaraa (Algoritmo 1) para resolver o problema bilinear.
Na seção seguinte, serão apresentados os exemplos de aplicação que são inspirados em exemplos de Singh (1999) tratando problemas do mercado de energia de energia elétrica.
4. Aplicação
Existe inúmeros exemplos de aplicação da teoria de jogos quando usada na resolução de problemas reais. Sabe-se que os serviços públicos de energia elétrica de todo o mundo estão sendo submetidos a mudanças radicais nas estruturas reguladoras e no mercado. Uma tendência deste processo de reestruturação é promover a participação de agentes privados no processo de produção de energia, que historicamente está sob o controle do estado.
Os jogos não-cooperativos, motivo de estudo ao decorrer deste trabalho são a fundação para alguns modelos clássicos de oligopólio. O estudo de oligopólios é essential para o estudo do mercado de energia.
Existem dois modelos básicos de oligopólio que são: o duopólio de Cournot e o duopólio de Bertrand. O primeiro modelo envolve duas empresas que produzem a mesma quantidade e devem decidir o
366
preço da produção. A estratégia de cada firma é maximizar seu rendimento sem tomar conhecimento da decisão do oponente. Já, no modelo de Bertrand cada empresa escolhe o preço no qual está disposta a produzir.
Em Singh (1999), o mercado de energia é definido como a habilidade do participante do mercado em aumentar preços acima do nível de competição restringindo a saída ou a entrada de novos competidores. Nesta pesquisa, o mercado é um modelo simples de Cournot de dois geradores onde os cenários podem ser compostos ou não por contratos de diferenças.
Singh afirma que a teoria de jogos pode ser usada para o estudo dos efeitos dos contratos de diferenças no incentivos ao aumento de preços. E o propósito dos contratos de diferenças é isolar o fornecedor contra as variações de preços no mercado durante um período.
Neste trabalho serão estudados os exemplos fictícios de termoelétricas onde são inseridas incertezas nos preços dos geradores e não se tem o obejtivo de mostrar o efeito dos contratos de diferenças no aumento dos precos.
Os exemplos que serão apresentados neste trabalho se dividem conforme o tipo de combustível utilizado para a geração de energia elétrica, que pode ser: carvão, óleo ou gás. Cada um dos geradores produz no mínimo 100MW e no máximo 250MW, sendo que a produção conjunta varia entre 200MW a 500MW.
As incertezas do exemplos estão inseridas nas matrizes de preços. A quantidade de energia fabricada por cada gerador é a mesma independente do tipo de combustível usado e a única variação entre os diferentes casos é a matriz de preços (ou matriz de pagamentos). Essas quantidades estão representadas nas seguintes matrizes:
=
250180150100
A
=
250200130100
B
Para o cálculo do Lucro Líquido de cada um dos geradores as seguintes fórmulas são usadas:
QCPQLl ⋅−⋅= 4.1
)()( eccl PPQQQCPQL −⋅−−⋅−⋅= 4.2
onde onde lL é o lucro líquido, Q é a quantidade produzida (MWh), cQ é a quantidade de energia contratada, P é o preço do MWh ($/MWh), ecP é o preço da energia contratada e C é o custo de produção.
A equação (4.1) representa o lucro líquido dos geradores sem contratos de diferenças e a equação (4.2), o lucro líquido com contratos de diferenças.
A seguir, os custos de produção e os preços dos geradores:
Tipo de Gerador Custo de Produção (R$/MWh)
Carvão 15,00
Óleo 30,00
Gás 20,00
Tabela 4.1 – Custos de Produção para os diferentes geradores
367
=
90135135120
carvãoP
=
190225225250
óleoP
=
130170170150
gásP
Os geradores podem ou não aceitar contratos de diferenças, caso exista contratos a quantidade de energia contratada para cada gerador é de 150MWh e os preços das energias contratadas são:
Tipo de Gerador Custo de Energia Contratada (R$/MWh)
Carvão 120,00
Óleo 250,00
Gás 150,00
Tabela 4.2 – Custos da Energia Contratada para os diferentes geradores
As incertezas inseridas nestes problemas podem ser representadas através da seguinte expressão:
mxmvalorincerteza 1⋅= 4.3
onde o valor é escolhido pelo usuário e mxm1 é uma matriz formada por componentes com valor 1 e de dimensão igual a matriz de preços dos geradores.
Os valores das matrizes de lucros líquidos para cada um dos geradores foram obtidos aplicando as expressões (4.1) e (4.2).
A seguir, os resultados obtidos sem inserção de incertezas e os resultados obtidos com a inserção de incertezas para cada um dos problemas, lembrando que as inicializações usadas para a resolução dos problemas são:
( )
( )LR
ccT
tyBAxqp
yx
01.0,01.0,01.0~)(
5.0,5.0
1 =
+==
==
Nas tabelas seguintes, as incertezas adicionadas nos problemas são em valores absolutos, os valores de x correspondem aos valores das estratégias mistas para o Jogador 1 e os valores de y representam as estratégias mistas do Jogador 2. As matrizes de lucro líquido para cada gerador dependem da quantidade de energia, que pode ser a matriz A ou B (jogador 1 e 2, respectivamente) e depende de qual gerador será escolhido: carvão, óleo e gás. É importante ressaltar que no exemplo com geradores a carvão, os dois utilizam o carvão como combustível para a produção de energia elétrica, este princípio também é válido para os demais geradores. Não é possível a iteração entre geradores diferentes, por exemplo, carvão e óleo. Mesmo quando são resolvidos os exemplos com incertezas nulas, o valor do parâmetro 1
~t é mantido, por isso os valores de 1α e 2α não são iguais a 1.
368
Carvão SEM CONTRATOS
Incertezas X Y p q alpha1 alpha2 0 (0,1) (0.5072, 0.4928) 18.909 17.512 0 0
COM CONTRATOS 0 (1,0) (0,1) 19.504 23.250 1 0
Óleo SEM CONTRATOS
0 (0,1) (1,0) 40.000 25.457 0 1 COM CONTRATOS
0 (0,1) (1,0) 49.000 28.172 0 1 Gás
SEM CONTRATOS 0 (0,1) (0.2778, 0.7222) 27.500 25.278 0 1
COM CONTRATOS 0 (0,1) (1,0) 30.500 16.525 0 1
Tabela 4.3 – Resultados para os geradores sem incertezas
Carvão
SEM CONTRATOS Incertezas x y alpha1 alpha2 (5,10,15,...) (0,1) (1,0) 0 0
60 (0,1) (1,0) 0 0 70 (0,1) (1,0) 0 1 80 (1,0) (0.2783, 0.7217) 1 0 90 (1,0) (0.2459, 0.7541) 1 0
100 (1,0) (0.2126, 0.7874) 1 0 COM CONTRATOS
(5,10,15,...) (0,1) (1,0) 0 1 60 – 100 (60,70,...) (1,0) (0,1) 1 0
Tabela 4.4 – Resultados para o Gerador a Carvão com ou sem contratos de diferenças
Óleo SEM CONTRATOS
Incertezas x y alpha1 alpha2 5 – 50 (5,10,15,...) (0,1) (1,0) 0 0 60 – 100 (60,70,...) (0,1) (1,0) 0 0
COM CONTRATOS 5 – 50 (5,10,15,...) (0,1) (1,0) 0 1 60 – 100 (60,70,...) (1,0) (0,1) 1 0
Tabela 4.5 – Resultados para o Gerador a Óleo com ou sem contratos de diferenças
369
Gás SEM CONTRATOS
Incertezas x y alpha1 alpha2 5 (0,1) (0.2612,0.7388) 0 1 10 (0,1) (0.2444,0.7556) 0 1 15 (0,1) (0.2273,0.7727) 0 1 20 (1,0) (0.2099,0.7901) 1 0 25 (1,0) (0.1923,0.8077) 1 0 30 (1,0) (0.1744,0.8256) 1 0 35 (1,0) (0.1562,0.8438) 1 0 40 (1,0) (0.1378,0.8622) 1 0 45 (1,0) (0.1190,0.8810) 1 0 50 (1,0) (0.1,0.9) 1 0 60 (1,0) (0.0610,0.9390) 1 0 70 (1,0) (0.0207,0.9793) 1 0
80 – 100 (80,90,...) (1,0) (0,1) 1 0 COM CONTRATOS
5 – 25 (5,10,15,...) (0,1) (1,0) 0 1 25 – 50 (25,30,...) (1,0) (0,1) 1 0 60 – 100 (60,70,...) (1,0) (0,1) 1 0
Tabela 4.6 – Resultados para o Gerador a Gás com ou sem contratos de diferenças
Figura 4.1 – Resultados para as variáveis p, q e custo final para o Gerador a Carvão
370
Figura 4.2 – Resultados para as variáveis p, q e custo final para o Gerador a Óleo
Figura 4.3 – Resultados para as variáveis p, q e custo final para o Gerador a Óleo
Os resultados apresentados nos exemplos dos geradores em grande parte correspondem aos resultados dos problemas sem incertezas quando as incertezas dos problemas são pequenas. No exemplo do gerador de Carvão, a solução do clássico sem contratos para o mesmo exemplo com incertezas difere bastante desde o inicio da inserção das incertezas. Neste mesmo exemplo, as soluções para x e y são as mesmas até o valor igual a 50 nas incertezas. Já, no exemplo do gerador a óleo os valores de x e y são iguais aos casos clássicos para todos os casos com incertezas no exemplo sem contratos e até o valor
371
50 nas incertezas para o exemplo com contratos. Para o caso do gerador a gás, as soluções com incertezas pequenas no caso sem contratos são muito próximas, mas a medida que as incertezas são inseridas no problemas, as soluções tendem a divergir, principalmente quando se trata das estratégias do jogador 1 (x). É evidente que com soluções diferentes para x e y, os valores de 1α e 2α não são os mesmo que no exemplo clássico, ou seja sem incertezas. O significado para este tipo de parâmetro do problema é de quanto mais perto de zero ou for igual zero, significa que todas as incertezas estão sendo aceitas no problema original. Caso o α esteja próximo de 1 ou for igual a 1 significa que as incertezas inseridas no problema não estão sendo consideradas. Estas incertezas que estão sendo referenciadas, não são as incertezas dada pela equação (4.3), mas sim as incertezas definidas pelo parâmetro de tolerância, 1
~t . Os gráficos apresentados foram obtidos através dos valores de incertezas pelos soluções p, q e do custo final para cada um dos geradores. Este custo final é a variável que o programa usa para sair do laço principal e significa que o ponto de equilíbrio foi encontrado. Quanto mais incertezas inseridas no problema maior será o valor do custo final independente do tipo de gerador que está sendo observado. Analisando de forma geral os resultados obtidos nos exemplos, tem-se a total certeza de que se trata de um jogo de soma não nula com soluções não-cooperativas, já que as soluções obtidas para os jogadores estão em (0,1) ou (1,0). 5. Conclusão Neste trabalho, foi apresentado um algoritmo para a solução de jogos de soma não nula nebulosos. Este algoritmo é baseado em um método de decomposição e a metodologia para resolver os problemas de programção linear nebulosa é baseada em Cadenas (1995). Este algoritmo resolve uma sequência de problemas de programação linear. No final, a solução encontrada é um ponto de Kunh-Tucker. Não é possível garantir a melhor solução para o problema, mas sabe-se que é uma boa solução, já que não se tem convergência global do algoritmo. Como aplicação desta metodologia de resolução, exemplos do mercado de energia foram resolvidos através da mesma. O próximo passo da pesquisa é tentar encontrar outros tipos de aplicações reais e modificar o algoritmo, para que o mesmo resolva qualquer tipo de problema de programação bilinear. Referências
BAZARAA, M.S. & SHETTY, C. (1979) - Nonlinear Programming Theory and Algorithms. John Wiley & Sons. New York.
BUTNARIU, D. (1978) - Fuzzy Games: A description of the concept. Fuzzy Sets and Systems Vol 1, p. 181-192.
BUTNARIU, D. (1980) - Stability and shapley value for an n-persons fuzzy game. Fuzzy Sets and Systems Vol 4, p. 63-72.
CADENAS, J. & VERDEGAY, J. (1995) - PROBO: an interactive system in fuzzy linear programming. Fuzzy Sets and Systems Vol 76, p. 319-332.
CAMPOS, L. (1989) - Fuzzy linear programming models to solve fuzzy matrix games. Fuzzy Sets and Systems Vol 32, p. 275-289.
MAEDA, T. (2000) - Characterization of equilibrium strategy of bi-matrix game with fuzzy payoff. Mathemathical Anal. Applied Vol. 251, 885-896.
MAEDA, T. (2003) - On characterization of equilibrium strategy of two-person zero-sum games with
372
fuzzy payoffs. Fuzzy Sets and Systems Vol 139, p. 283-296.
SAKAWA, M. & NISHIZAKI, I. (1994) - A lexicographical solution concept in an n-person cooperative fuzzy game. Fuzzy Sets and Systems, Vol 61, p. 265-275.
SINGH, H. (1999) - Introduction to game theory and its application in electric power markets. IEEE Computer Applications in Power Vol. 12, n. 4, p. 18-20, 22.
TSURUMI, M., TANINO, T. & INUIGUCHI, M. (2001) - A shapley function on class of cooperative fuzzy games. European Journal of Operational Research Vol. 129, p. 596-618.
VISUDHIPAN, P. & ILIC, M. (1999) - Dynamic games-based modeling of electricity markets, Proceedings of the 1999 IEEE Power Enginnering Society Winter Meeting. Vol. 1, New York City, NY, USA, p. 274-281.