Um estudo comparativo entre a teoria dos jogos cooperativos e uma heurística
aplicados a um problema real de alocação de custos
1. Introdução
As recentes privatizações na indústria nacional motivaram o estudo de modelos
de como os preços e a distribuição de custos devem ser estruturados [S94]. Em
situações de monopólio, existem trocas de subsídios entre serviços e clientes.
Em um ambiente competitivo estes subsídios não são sustentados, ou aparecem de
outra forma. Os problemas de alocação de custos giram em torno de situações nas
quais clientes, que demandam um certo tipo de serviço (de comunicação, de
computação, de energia elétrica, de água e esgoto, de transporte entre outros),
são incentivados a se articularem para conseguir o serviço pretendido da melhor
forma possível. A questão, difícil de resolver, que tem atraído muita atenção
neste caso, é como distribuir o custo deste serviço entre estes clientes.
Como o serviço pode representar qualquer produto ou bem, a abrangência de áreas
em que este problema pode ser encontrado, caracterizado e estudado torna-se
significativa. Além disso, vale a pena ressaltar o aspecto cooperativo do
problema. Como estamos lidando com custos, o interesse é, após resolvido o
problema de encontrar o custo ótimo, distribuir este custo entre os clientes da
forma mais justa possível, sem considerarmos competição entre os participantes.
De fato, sempre deve existir uma cooperação entre os clientes para que o
serviço seja obtido com um menor custo e para que uma alocação satisfatória
deste valor entre os clientes seja alcançada.
A matéria serve também, ao estudo sobre o impacto da introdução da competição
com a quebra do monopólio, em companhias públicas ou privadas, ou, ao papel do
governo para regulamentar o mercado, com taxas, subsídios e mínimas e máximas
tarifas recomendadas para os serviços requeridos [RL99].
Formulamos o problema então como um problema de rede de acesso. Uma rede é uma
infra-estrutura comum que conecta vários usuários de um certo tipo de serviço.
Esta rede foi representada por um grafo onde consideramos nós de demanda, um nó
fornecedor comum e não capacitado, e os arcos também não capacitados com custos
associados, caso o arco participe da solução ótima. Nós de transbordo, ou de
Steiner também podem ser considerados. Estes nós representam a possibilidade de
bifurcações ou esquinas em situações reais, são nós sem demanda nem
fornecimento de serviço, servem apenas como passagem. Vale lembrar que o
acréscimo de apenas um nó de Steiner ao problema faz com que ele passe da
classe P para a classe NP-difícil. Uma representação em grafo de uma rede de
acesso genérica pode ser vista na Figura_1.1.
Nesta figura os nós redondos e pretos representam os nós de demanda, o nó
branco, de transbordo, e o nó quadrado é o fornecedor comum. Na tentativa de
conectar todos os nós de demanda ao nó fornecedor com o menor custo possível,
os nós brancos podem ou não ser ligados e todos os arcos podem ou não
participar da solução ótima, existindo um custo de instalação do arco
envolvido, caso ele seja selecionado. Os arcos destacados com linhas mais
espessas representam uma solução de conexão entre os clientes e o fornecedor.
Esta solução será ótima se a soma dos custos associados a todos os arcos
utilizados for a menor entre todas as outras somas, obtidas nas outras
possibilidades de conexão. Observemos que trata-se de uma solução em árvore,
cuja configuração é desejada para a solução ótima, visto que a presença de um
ciclo qualquer aumentaria o custo total não ligando a mais nenhum outro nó de
demanda. Porém em situações reais, outras variáveis podem ser consideradas,
como por exemplo, a garantia que o serviço chegará sempre ao destino, o que
poderia impor uma configuração de anel à solução, em vez de uma árvore.
Neste trabalho consideramos que o problema de encontrar a configuração ótima já
foi resolvido, já que vários estudos de métodos para isso podem ser encontrados
na literatura [B77, GL00, GP68]. Nossa preocupação concentrou-se então na forma
de distribuir este custo ótimo entre os nós de demanda. Para isso, o valor com
o qual qualquer grupo de clientes está carregado deve, sempre que possível, ser
menor que o custo necessário para prover o mesmo serviço a este grupo através
de qualquer outra configuração de conexão possível. Esta é uma questão crucial
desde que, se qualquer grupo de usuários acreditar que está sobrecarregado, ele
poderá desistir de participar da solução de menor custo total para participar
de outra solução que lhe pareça mais "vantajosa".
Somos induzidos então, a fazer apelo à Teoria dos Jogos Cooperativos como
ferramenta de solução neste estudo. Para isso, apresentamos em seguida uma
revisão bibliográfica caracterizando o estado da arte para esta teoria. A seção
3 deste artigo contém a caracterização de um problema real de distribuição de
custos, a modelagem matemática do problema e os critérios de seleção das
soluções que foram aplicadas. Dentre estes critério uma heurística é
apresentada, justificada, aplicada e comparada com as soluções dadas pela
teoria revisada. Na seção 4 estão os resultados obtidos. E, finalmente, na
última seção fazemos a análise e a comparação entre as soluções para o problema
apresentado na seção 3, e as conclusões referentes ao estudo.
2. Teoria dos Jogos: Estado da Arte
A teoria dos jogos aplicada aos problemas de alocação de custos lida com a
introdução de um jogo cooperativo na forma de uma função característica, com os
nós de usuários como jogadores e a função característica definida em todos os
subconjuntos do conjunto de jogadores N. O valor da função característica para
uma certa combinação de jogadores, que também chamaremos de coalizão, deve ser
o custo da sub-rede ótima provendo serviço apenas àquele subconjunto de
usuários. As restrições do modelo são dadas pelas restrições que definem os
conceitos de "núcleo" (core) e de "e -núcleo menos
ponderado" (least weightede-core).
Na teoria dos jogos cooperativos várias soluções para alocação de custos
razoáveis tem sido sugeridas [D88, Y85], entre elas estão o "valor de
Shapley" e o "nucleolus". Estas definições e notações foram
revisadas e analisadas quanto à eficiência de aplicá-las a problemas reais de
rateio de custos que envolvem um grande número de jogadores. A partir dessa
revisão pudemos encontrar critérios para a seleção das soluções aplicadas ao
problema apresentado na seção 3.
Formalmente seja N={1,2..n} o conjunto finito de jogadores. Chamamos de jogo
(N,c) o jogo cooperativo na forma da função característica cdada por:
definida para todas as coalizões de usuários. Onde c(N) representa o custo que
deve ser repartido entre os jogadores e P,o conjunto formado por todos os
subconjuntos S de N. Chamamos atenção para a cardinalidade de P dada por 2n, ou
seja, nosso domínio cresce exponencialmente com o número de jogadores. Isto já
representa uma barreira inicial para a aplicação da teoria dos jogos se for
necessário o cálculo da função característica em todo seu domínio. Continuamos,
portanto, a revisão procurando soluções que não necessitem da definição
completa da função característica.
Seja xÎRn e SÍN, seja x(S)ºåjÎSxj um vetor de alocação de custo entre os
jogadores. Podemos interpretar x(S) como a parte do custo total pago pela
coalizão S. Todo vetor que representa um bom candidato para a alocação de
custos x no jogo (N,c) satisfaz: x(N)=c(N).
As restrições, como dito anteriormente, seguem a definição do
"núcleo" do jogo, que consiste em todos os vetores que atendem à
restrição:
Observe que o "núcleo" consiste de todas as alocações de custo x onde
nenhuma coalizão tenha incentivos de montar sua própria sub-rede, pois para
qualquer subconjunto de jogadores, o custo da sua sub-rede ótima c(S) é sempre
maior ou igual ao valor que este subconjunto deverá pagar x(S). Com respeito à
formação e à estabilidade da rede ótima, pela teoria dos jogos pode ser dito
que a alocação deve pertencer ao "núcleo" [082]. Em geral o
"núcleo" pode ser vazio. Porém, no caso dos jogos de árvores
geradoras mínimas, Granot & Huberman [GH81] demonstram que o
"núcleo" nunca será vazio, o que torna este modelo interessante para
estudo e aplicação. Além disso, eles também caracterizam uma solução que é
sempre pertencente ao núcleo destes jogos e é de fácil obtenção.
Esta solução é dada pela solução de árvore de Bird [C97], e consiste em fazer
uma leitura direta dos custos dos arcos do grafo associado ao problema, e
atribuir cada custo lido ao nó que é extremidade do arco e ainda não recebeu um
valor. Em outras palavras, cada um paga o custo do arco que incide nele na
trajetória que o liga ao fornecedor. Selecionamos esta solução então, como boa
de ser aplicada em jogos com um grande número de jogadores, visto a
simplicidade e o crescimento linear com o número de nós da complexidade de
tempo do seu procedimento de obtenção, considerando o número de leituras e
atribuições como as operações relevantes.
Bird também contribuiu para esta teoria, com a definição do núcleo irredutível.
Segundo ele, se considerarmos apenas uma árvore geradora mínima de um grafo G
(N, E), mesmo sem conhecimento algum dos custos dos arcos que pertencem a Emas
não à AGM, podemos encontrar outras distribuições de custos pertencentes ao
núcleo, sem a necessidade de defini-lo por completo. Estas são dadas pelo
conjunto de alocações de árvores de Bird, obtidas a partir de outras AGMs de um
novo grafo completo G'(N, E') derivado da primeira AGM da seguinte forma:
Seja T uma árvore geradora mínima do grafo G(N,E)e ET os arcos desta árvore.
O custo kijdo arco {i,j}no novo grafo G'será dado por:
A partir deste novo grafo, encontram-se outras árvores geradoras de custo total
igual ao custo mínimo. De cada uma faz-se a leitura direta da solução de árvore
de Bird, ou seja, cada cliente pagando o custo do arco que chega a ele. Em
[C97] foi provado que para todo nó iÎN, existe uma árvore geradora mínima Ti em
que i é uma folha. Portanto, este procedimento gerará várias árvores geradoras
mínimas que podem levar a diferentes vetores de distribuição do custo. Este
conjunto de vetores pertence ao núcleo do jogo cooperativo de árvore geradora
mínima e formam o núcleo irredutível. Esta proposta de soluções também foi
utilizada na seção 3 do trabalho, já que representa uma forma de obtenção de
outras soluções pertencentes ao núcleo do jogo, sem a necessidade de que a
definição do núcleo esteja completa. Para instâncias com um número grande de
jogadores e com informações incompletas é razoável pensar em utilizar este
conceito.
Para o caso de não existência do núcleo, podemos usar o conceito de "e-
núcleo menos ponderado" onde, para um número real e, é o conjunto de
todos os vetores que atendem a: xÎRn| x(S)+e£c(S)" ƹSÌNe x(N)=c(N), onde
e é dado pela diferença entre os valores da função objetivo para todo
subconjunto de usuários e os valores cobrados do mesmo subgrupo, de forma que o
e- núcleo nunca seja vazio. Há casos em que o valor de e é negativo e podem ser
entendidos como situações em que é preferível subsidiar um certo subgrupo de
usuários a deixar que eles rompam com a solução de custo total mínimo. Ele
nunca será vazio [KB94]. Porém chamamos atenção para seu tamanho, que será
também O(2n), para n jogadores, inviabilizando sua aplicação para valores
grandes de n.
Em relação à satisfação dos clientes, ou seja, à justiça na distribuição do
custo, qualquer uma das muitas alocações de custos que satisfazem às restrições
anteriores poderia ser considerada, porém algumas podem ser mais interessantes
que outras dependendo do problema a ser tratado.
Para efetuarmos a seleção da "melhor" solução, dentre as que atendem
as restrições do modelo, encontramos na literatura os conceitos de "valor
de Shapley" e de "nucleolus", que apresentaremos a seguir. O
"valor de Shapley", introduzido por L. S. Shapley [S53] já foi
utilizado em várias aplicações práticas como na distribuição de lucros do
serviço nacional de reconhecimento de chamadas (BINA), na alocação da taxa de
pouso de aeronaves, na distribuição de custos de bens e serviços públicos e em
alocação de custos de reservas de água e suas desvalorizações [C97, LRRS95,
S94]. Pela definição de Shapley, o valor da parcela xi do custo representa
estatisticamente a contribuição marginal esperada do jogador i, assumindo que
as coalizões se formam aleatoriamente. Formalmente é dado por:
Sendo S qualquer subconjunto não vazio de N, n a cardinalidade do conjunto N e
s a do conjunto S. Verificamos que para cada jogador, precisamos resolver uma
soma formada por 2n-1 termos, o que não seria eficiente para valores grandes de
n. Além disso, precisamos definir a função característica em todo seu domínio
para a obtenção do valor de Shapley, o que também inviabiliza a aplicação deste
conceito em instâncias com muitos jogadores. Para vinte jogadores, seria uma
soma com um milhão de termos para se ter uma idéia.
Além desta, outra proposta de seleção de uma alocação de custo explorada por
vários autores [CK73, GH81, GH84, KB94] é o conceito de "nucleolus".
Para um jogo (N;c) e para um vetor de alocação de custos x, seja: e(x,S)=c(S)'x
(S) o excesso de S relativo a x e seja e(x) um vetor em R(2n-2) cujos elementos
são e(x,S),ƹSÌN, em ordem não decrescente. O "nucleolus" é o vetor x
que maximiza lexicograficamente e(x).
Granot & Huberman [GH84] apresentam um algoritmo para o cálculo do
"nucleolus" para jogos de árvores geradoras mínimas. Ele é baseado na
resolução de uma seqüência de subproblemas de programação linear. A cada novo
subproblema a ser solucionado, fixamos no modelo a restrição, ou um conjunto de
restrições, que tenham atingido a igualdade no último problema resolvido. O
algoritmo pára quando chega em uma solução única, que é o próprio
"nucleolus". O "nucleolus" sempre existe, é único e
pertence ao núcleo, quando este não é vazio.
A solução pode ser encontrada sem necessariamente se fazer o acréscimo de todas
as restrições do problema. Isso já foi verificado para jogos de redes
capacitadas, por exemplo, como foi mostrado por Kapov & Beltrán [KB94].
Estes jogos também formam um conjunto interessante de estudo e aplicação em
redes reais, já que o espaço de busca diminui significativamente, diminuindo
conseqüentemente o tempo de execução do procedimento de obtenção do
"nucleolus". Neste caso, apesar de não existir um algoritmo exato
eficiente para sua obtenção, existem artigos empregando heurísticas juntamente
com algoritmos exatos que conseguem tratar problemas com 25 jogadores. Mas um
estudo mais específico nas propriedades do procedimento de obtenção do
nucleolus pode encontrar alguma forma mais eficiente de seu cálculo favorecendo
sua aplicação em instâncias envolvendo um grande número de jogadores. Como até
o momento não encontramos nada neste sentido, preferimos descartar também este
conceito para aplicação na seção 3.
A teoria dos jogos lida com conceitos bem amarrados matematicamente, e nos dá
uma boa idéia de condições que devem ser consideradas em um problema de
alocação de custos. Porém os procedimentos necessários para o cálculo da
maioria destes conceitos de solução possuem uma função de complexidade de tempo
e de espaço W(2n), sendo n o número de jogadores considerados. Para valores
grandes de n torna-se praticamente impossível sua obtenção, por exemplo, para
n=10, o núcleo deve ser definido por 1024 restrições, para cada restrição deve
ser resolvido um problema de rede, que no caso mais simples é encontrar uma
árvore geradora mínima associada ao grafo. Se dobramos o número de jogadores,
n=20, teremos que encontrar 1048576 restrições, o que já é inviável
computacionalmente. Por estas razões nos limitamos em aplicar as soluções já
mencionadas, que não necessitam da definição da função característica em todo
seu domínio. Algumas heurísticas de solução do problema de alocação de custos
foram encontradas na literatura [LRRS95, LZC87, MLG00]. Porém elas eram
específicas ao problema em particular, aos dados que estavam disponíveis e à
forma de coletá-los.
3. Um Problema Real de Alocação de Custos
3.1 Caracterização do problema
A Empresa de Informática e Informação do Município de Belo Horizonte, que entre
outras coisas, é responsável pelo funcionamento da Rede Municipal de Informação
de Belo Horizonte (RMI), concordou em disponibilizar alguns dados para serem
aplicados ao estudo pretendido.
A RMI está organizada numa topologia de anéis, sendo composta por um anel
central e dez anéis que saem de dois pontos deste anel central e interligam uma
seqüência de órgãos da Prefeitura Municipal de Belo Horizonte (PBH). No anel
central estão os prédios da Prefeitura de Belo Horizonte e da empresa de
informática. Nos outros anéis, as Administrações Regionais da prefeitura foram
dispostas ligadas diretamente aos órgãos que formam o backbone central. Os
demais prédios foram distribuídos pelos anéis aproximadamente de acordo com
suas necessidades de tráfego. As conexões entre as instituições são feitas
através de linhas privativas de comunicação de dados contratadas junto à
concessionária de Telecomunicações TELEMAR sobre as quais utiliza-se o
Protocolo Ponto-a-Ponto (PPP) associado ao conjunto de protocolos Protocolo de
Controle de Transmissão / Protocolo de Internet (TCP/IP). O problema a ser
resolvido é, dada a topologia da rede ótima, como distribuir o custo de aluguel
das linhas dedicadas de informação entre os órgãos que formam a RMI. Sua
topologia pode ser vista na Figura_3.1 a seguir. A seqüência de órgãos
encontra-se na Tabela_3.1.
Como todos os órgãos participantes recebem dinheiro da Prefeitura, não existe
política de distribuição do custo da RMI entre os usuários. A empresa de
informática passa para a prefeitura quanto gastou no mês, e esse dinheiro é
repassado a ela. Com a distribuição destes custos, esta empresa de informática
poderá saber quanto cada órgão pesa no montante gasto, justificar as grandes
quantias que a prefeitura despende com a rede em seus circuitos de
telecomunicações, entre outras possibilidades de uso dessa informação.
3.2 Modelagem matemática
Para tentarmos montar um jogo cooperativo usando a Rede Municipal de
Informação, propomos fazer uma redução do problema, passando de uma rede em
anel para uma em árvore, para a qual a teoria se encontra bem desenvolvida.
Para isso quebramos os anéis nas suas conexões centrais, aproximadamente
eqüidistante dos órgãos que fazem parte do backbone central. Essas conexões são
geralmente de menor capacidade e quase nunca são utilizadas, estando presentes
na rede apenas para garantir a existência de pelo menos dois caminhos para a
informação fluir. O custo destes circuitos dedicados foi distribuído igualmente
entre todos os órgãos, visto que atendem uma necessidade de todos.
Quanto ao anel central, criou-se um nó imaginário O' no grafo G'. Os arcos
incidentes a este nó substituem os arcos do backbone central, e conectam O' a
cada órgão deste anel.
Passou-se de uma configuração em triângulo para uma estrela conectando os
prédios do anel central, com O' no centro da estrela como pode ser visto na
Figura_3.2.
Visto a dificuldade de separar órgãos fornecedores de clientes, já que o
serviço de informação pode ser tanto solicitado quanto fornecido por qualquer
órgão, foi resolvido considerar todos os nós de G' como clientes, somando os
tráfegos que originam e destinam em cada um, e considerando como sendo sua
demanda. Com exceção do nó O' que foi idealizado como um fornecedor comum sem
limite de capacidade.
Chegou-se então a uma nova rede em estrutura de uma árvore com raiz em O', com
as mesmas características da rede original. Além disso, ela é formada por três
sub-árvores, cujos nós raízes estão nos prédios da empresa de informática
(PDBL), e da prefeitura (AC200 e PBH1212). Com as três sub-árvores, que
consideramos ótimas, montamos um jogo de árvores geradoras mínimas, cooperativo
na forma da função característica, onde os órgãos municipais, como jogadores,
cooperam entre si para formar a Rede Municipal de Informação. Esta formulação é
propícia já que temos a garantia da existência do jogo para este caso.
A função característica ctem como domínio todos os subconjuntos Sdo conjunto de
jogadores N.Como a cardinalidade desse conjunto é 79, a cardinalidade do
conjunto domínio é então dada por 279=604. 462. 909. 807. 314. 587. 353. 088!
Para cada ponto do domínio, o valor de c é dado pela resolução de um problema
de árvore geradora mínima, considerando apenas os nós pertencentes ao
subconjunto S em questão, que também chamaremos de coalizão. Aqui encontramos
outras dificuldades, primeiro no tamanho exponencial do domínio e segundo por
só conhecermos os arcos que fazem parte da árvore que consideramos ótima, assim
não podemos definir completamente a função característica, o que nos impede de
aplicar a maioria dos conceitos revisados.
Contudo, mesmo com a falta de informações, encontramos alguns conceitos da
teoria dos jogos para serem usados nestas situações, em que a definição do jogo
é incompleta. Estes foram então selecionados para a aplicação. Uma breve
descrição dos mesmos é dada a seguir, juntamente com a definição da heurística
utilizada.
3.3 Conceitos de solução selecionados para aplicação
Usando os resultados de Granot & Huberman [GH84], encontramos um vetor de
alocação de custos para o jogo de árvore geradora mínima em que nenhum órgão
pague mais que pagaria se ligando de qualquer outra forma. Particularmente, é a
solução que pertence ao "núcleo" do jogo e pode ser lida diretamente
do grafo associado ao problema. Consiste em alocar para cada usuário o custo da
conexão que incide nele, na trajetória que o liga ao fornecedor. Esta é uma
solução conveniente, devido ao tamanho do problema e sua falta de informações.
Chamamos esta distribuição de VALOR I no trabalho.
O outro conceito selecionado, foi o de núcleo irredutível [C97], visto que para
seu cálculo só precisamos conhecer a solução ótima, como na aplicação em
questão. Implementamos então um programa para o cálculo de algumas soluções
pertencentes ao núcleo irredutível do jogo definido para a instância do
problema associada à RMI. Como as soluções se diferenciavam pouco entre si e
entre a solução dada em VALOR I, selecionamos a que apresentou mais diferença
nos valores alocados e apresentamos como VALOR II.
Na revisão bibliográfica realizada, encontramos o uso de várias heurísticas
para a resolução de problemas reais de alocação de custos. Porém todas eram
muito específicas para as instâncias em que eram aplicadas. Verificamos em
[MGL00] que para a mesma instância do problema, heurísticas que lidavam apenas
com a distribuição do fluxo ou com a distribuição do custo da estrutura
igualmente entre seus usuários não proporcionavam bons vetores de alocação, do
ponto de vista de deixar todos os usuários satisfeitos. Aproveitamos algumas
idéias que foram usadas e somando com as informações de tráfego da RMI que
tínhamos disponíveis, propusemos uma heurística, associando para a
distribuição, os custos da estrutura da rede com o tráfego de informação que
nela circula associado a cada usuário. Esta foi uma tentativa de considerar
tanto os custos fixos quanto os variáveis no rateio, visto que os conceitos da
teoria dos jogos só consideravam o primeiro tipo de custos. A idéia proposta se
baseia em associar um percentual de utilização a cada usuário, retirado dos
relatórios mensais de tráfego da RMI. A distribuição de custos seguiu então o
seguinte critério: cada órgão fica responsável por pagar a sua porcentagem de
utilização sobre as linhas que o liga à raiz da árvore, menos a linha que
incide nele da qual ele paga (1- soma), onde soma é a soma das porcentagens de
utilização dos órgãos ligados ao fornecedor através dele. Se o órgão for uma
folha desta árvore, ele paga sua porcentagem em todas as linhas pertencentes à
trajetória que o liga à raiz, menos a linha que incide nele da qual ele paga o
custo total. Chamamos esta alocação de VALOR III.
A seguir, apresentamos os resultados obtidos para as três propostas de solução,
que serão posteriormente analisadas e comparadas.
4. Resultados
Na tabela seguinte pode ser visto cada órgão usuário da Rede Municipal de
Informação de Belo Horizonte, a capacidade de fluxo da linha que chega a ele,
segundo o grafo da Figura_1.1, sua porcentagem de utilização, e as três
propostas de distribuição descritas nas seções anteriores.
5. Análises e Conclusões
Em VALOR I percebemos a existência de situações em que órgãos com diferentes
percentuais de utilização estão carregados com o mesmo valor. O que não
consideramos como uma "injustiça", já que a linha está
disponibilizada para cada órgão usar como quiser. Mesmo que algum usuário
esteja sub-utilizando a rede, o aluguel do circuito está sendo pago.
Em VALOR II, notamos poucas diferenças comparada a VALOR I. No anel 7 a mudança
de valores entre DCUO e ARCS pode ser encarada como menos "justa" se
a porcentagem de utilização for usada como parâmetro de decisão. Neste caso
podemos optar em continuar com os valores da distribuição dada em VALOR I. Já
no caso do anel 9, a troca de valores entre DISAN e FARMACIA-ARP pareceu mais
"justa" pois o órgão com maior porcentagem de utilização ficou
carregado com o maior valor. Para estes órgãos, pôde-se dar preferência a uma
ou outra alocação baseando se nas informações de tráfego. Os órgãos nesta
situação com menor percentual de uso da rede ficaram preferencialmente
carregados com os menores valores obtidos. Isto representa uma melhoria da
solução em relação a VALOR I, pois podemos fazer uma associação com o início do
uso de informações de fluxo no rateio dos valores entre os jogadores.
Em VALOR III não verificamos injustiças do ponto de vista do jogo montado sobre
o grafo G', os órgãos que usam mais sempre pagam mais, numa proporção adequada.
Além disso, fizemos uma diferenciação entre clientes cobrando diferentes
valores de acordo com o fluxo que circula na rede associado a cada um. Isso
ainda amenizaria o sentimento de insatisfação que pode surgir nas propostas
anteriores. Porém trata-se de uma heurística muito particular para a instância
em questão, onde temos a possibilidade de determinar um percentual de uso fixo
para os usuários. Também pode ser utilizada para redes com um comportamento de
tráfego em média constante, ou constante por períodos, associando uma certo
percentual para cada período. Verificamos também que esta heurística obteve uma
solução pertencente ao núcleo do jogo, já que o tráfego que circula na rede
impõe um limite inferior para a capacidade necessária das conexões, e
conseqüentemente para o custo da rede. Se um órgão usa muito, ele precisa de
uma linha de maior capacidade e é justo que este aumento no custo seja alocado
para ele. Esta representou então a melhor forma de solucionar o problema de
distribuição dos custos dos circuitos dedicados da RMI, não constituindo porém
um conceito abrangente para a resolução de qualquer problema de alocação de
custos.
Neste trabalho encontramos uma solução justa, pertencente ao núcleo do jogo, em
tempo polinomial com o número de jogadores. O que na prática, para um grande
número de usuários, podemos considerar satisfatório, já que para a aplicação
dos conceitos da teoria dos jogos lidamos sempre com funções de complexidade de
tempo e de espaço que crescem exponencialmente com o número de jogadores.
Porém, tivemos que relaxar as propriedade de robustez e de otimalidade do
procedimento de resolução, verificando sua validade apenas para a instância
considerada e sem a preocupação de obtenção do ótimo global, os quais
representam os pontos fracos da heurística proposta para a resolução de um
problema genérico de alocação de custos. O que é superado pela teoria do jogos
cooperativos, que usa definições robustas que valem para o problema
generalizado.