• Nenhum resultado encontrado

(em Redes de Acesso Móvel Celular)

N/A
N/A
Protected

Academic year: 2021

Share "(em Redes de Acesso Móvel Celular)"

Copied!
13
0
0

Texto

(1)

Otimização de tarifas

(em Redes de Acesso Móvel Celular)

ALGORITMO GENÉTICO APLICADO AO PROBLEMA DE

TARIFAÇÃO EM REDES DE COMUNICAÇÕES MÓVEIS

CELULARES

Alexandre Street

e

Bruno Flach

street@ig.com.br

e

brunoflach@yahoo.com

Pontifícia Universidade católica do Rio de Janeiro

PUC-Rio

Departamento de Engenharia Elétrica

(2)

Índice

1. O MODELO 3

1.1. TRÁFEGO INTERNO A CÉLULA O: 3

1.2. TRÁFEGO EXTERNO, ORIUNDO DAS M CÉLULAS VIZINHAS: 4

1.3. PARÂMETROS DO MODELO: 4

1.4. RECEITA ORIUNDA DO TRÁFEGO INTERNO NO INTERVALO (0,T] 4

1.5. RECEITA ORIUNDA DO TRÁFEGO EXTERNO NO INTERVALO (0,T] 5

1.6. CASO DISCRETO DE INTERESSE: 7

2. RECEITA MÁXIMA DADA UMA QUEBRA 9

2.1. DEFINIÇÕES 9 2.2. PROCEDIMENTOS 9 3. O ALGORITMO GENÉTICO 10 4. RESULTADOS 12 5. CONSIDERAÇÕES FINAIS 13 6. BIBLIOGRAFIA UTILIZADA 13

(3)

Este trabalho utiliza o modelo de precificação desenvolvido na dissertação de mestrado de MARC

OLIVERO REGO MONTEIRO, intitulada “TARIFAÇÃO DINÂMICA EM REDES DE COMUNICAÇÕES

MÓVEIS CELULARES”

O modelo inicial para o problema de maximização de receita de uma operadora celular parte de algumas premissas:

• A empresa é monopolista e tem como objetivo apenas maximizar sua receita, sem levar em consideração os custos.

• As únicas restrições do problema são referentes aos requisitos de qualidade de serviço, que neste trabalho resumem-se às probabilidades de bloqueio de chamada e de queda por hand-off

Este trabalho propõe a implementação de um algoritmo genético para resolver o problema de maximização de receita de uma operadora celular, atendendo aos requisitos de qualidade, segundo o modelo apresentado. Os resultados desse algoritmo serão então comparados com aqueles obtidos através do uso do software Matlab.

1.

O modelo

O modelo proposto constitui-se de uma célula central O, cercada por M células, cujos usuários destas podem a ela migrar. Assume-se que os usuários da célula O podem ser classificados por N categorias distintas. Estas categorias para efeito de cálculo, resumem-se a curvas de reação ao preço e tráfegos distintos. O número de canais existentes na célula O assume o valor C.

N  Número de categoria de usuários (curvas de reação ao preço e tráfegos distintos).

M  Número de células que cercam a célula O.

C Número de canais existentes na célula O.

1.1. Tráfego interno a célula O:

[ ]

p

t

B

i

,

λ

para i = [1,N]  Taxa de

geração de chamadas da categoria i (dependente do preço praticado e do instante de tempo).

B i

µ

para i = [1,N]  Taxa de serviço de chamadas da categoria i.

( )

t

B

β

 Probabilidade de bloqueio de uma chamada.

Célula central

(4)

1.2. Tráfego externo, oriundo das M células vizinhas:

[

p t

]

H

j ,

λ

para j = [1,M]  Taxa de pedido de handoff de chamadas oriundas da célula j (não

havendo distinção quanto às categorias). H

j

µ

para j = [1,M]  Taxa de serviço de chamadas de handoff provenientes da célula j.

( )

t

H

β

 Probabilidade de queda por handoff de uma chamada que migra para célula O.

1.3. Parâmetros do modelo:

*

B

β

 Máxima probabilidade de bloqueio aceitável.

*

H

β

 Máxima probabilidade de perda por handoff.

( )

t

pj  (Preço / unidade de tempo) praticado na célula j para uma chamada que se inicia no

instante t. Este será mantido durante toda a ligação.

1.4. Receita oriunda do tráfego interno no intervalo (0,T]

( )

∑∫

[

( )

]

[

( )

]

( )

=

=

N i o B i o B i T B B

p

t

dt

t

t

p

t

T

R

1 0

,

1

µ

λ

β

A equação acima pode ser interpretada da seguinte forma:

( )

B i

t

p

µ

0  é o tempo médio de serviço vezes a tarifa, ou seja, cada ligação que chega, em média gera

este valor de receita [tempo de serviço / chamada] * [R$ / tempo] = [R$ / chamada].

( )

[

1

β

B

t

]

λ

iB

[

p

0

( )

t

,

t

]

 é a taxa de geração de chamadas vezes a probabilidade delas não serem

bloqueadas. Isto gera uma valor com a mesma unidade de

λ

iB

[

p

0

( )

t

,

t

]

em [chamadas / tempo]

Desta forma, o integrando

[

( )

t

]

[

p

B

( )

t

t

]

p

o

( )

t

i o B i B

µ

λ

β

,

1

tem a dimensão de:

[chamadas / tempo]*[R$ / chamada] = [R$ / tempo] Integrando em t, tem-se [R$ / tempo]*[tempo] = R$

(5)

1.5. Receita oriunda do tráfego externo no intervalo (0,T]

Pode ser feita uma analogia para mostrar que

R

H

( )

T

também tem dimensão de R$.

( )

T

[

( )

t

]

[

p

( )

t t

]

p

( )

t dt R H j j j H j M j T H H =

∑∫

− ⋅ ⋅ ⋅ =

µ

λ

β

, 1 1 0

Para o administrador da célula O, somente o preço po

( )

t é controlável. Como os demais preços na outras células já foram definidos a função objetivo a ser maximizada restringi-se a RB(T).

Tráfego interno à célula gerado pela categoria i 

(

)

[

B

]

i B i B i

t

p

t

p

µ

λ

ρ

, =

,

Tráfego externo (handoff) gerado pela categoria j 

(

)

[

H

]

j H j H j t p t p

µ

λ

ρ

, = ,

Tráfego interno total 

[

( )

]

[

( )

]

= = N i o B i o B p t t p t t 1 , ,

ρ

ρ

Tráfego externo total 

[

( )

]

[

( )

]

=

=

M j j H j H

p

t

t

p

t

t

1

,

,

ρ

ρ

v

CB(t)  Número de chamadas internas em andamento no instante t.

CH(t)  Número de chamdas externas em andamento no instante t.

Assim,

( )

{

[

( )

]

( )

}

*

,

,

B B o B B

t

ρ

p

t

t

C

t

β

β

=

Β

(eq A)

( )

{

[

( )

]

( )

}

* , , H H H H t

ρ

p t t C t

β

β

=Β r ≤ (eq B) CB(t) + CH(t) C

(6)

Como a eq B não depende da variável de decisão po(t), tem-se: CH(t) CH * (t) =

{

[

( )

]

}

* , , H H p t t

β

ρ

ς

r CB(t) C – CH(t) C – CH * (t) = CB * (t)

( )

[

]

{

ρ

B

p

o

t

,

t

,

β

B*

}

ς

CB * (t)

( )

[

]

[

*

( )

*

]

,

,

B B o B

p

t

t

R

C

t

β

ρ

Seja t = t* um instante de tempo fixo qualquer.

B

ρ

é uma função não crescente de po

( )

t* .

É importante salientar que estamos assumindo um controle de administração de usuários “perfeito” onde

β

B

( )

t =

β

B*.

( )

=

[

( )

]

[

( )

]

( )

T o o B B B

T

t

p

t

t

p

t

dt

R

0 *

,

1

β

ρ

É fácil de se constatar que esta função é máxima quando po

( )

t é tal que

( )

[

po t t

]

po

( )

t B , ⋅

ρ

é maximizado.

( )

* *

t

p

o

[

,t*

]

po B

ρ

( )

[

* * *

]

, B B t C R

β

(7)

Com a restrição de que

ρ

B

[

p

o

( )

t

,

t

]

R

[

C

B*

( )

t

,

β

B*

]

1.6. Caso discreto de interesse:

[0,T] é divido em 0 = Q0 Q1 ... QK = T

onde K-1 é o número de quebras da tarifa durante o intervalo de interesse [0,T]

e po

( )

t = pk t

[

Qk,Qk+1

]

k = [0,K-1]

Assim como pk não depende de t

[

Qk,Qk+1

]

,

( )

[

( )

]

∑∫

[

]

= + ⋅ ⋅ ⋅ − = 1 0 * 1 , 1 K k Q Q B k k B B k k dt p t p t T R

β

ρ

evolui para:

( )

[

( )

]

[

]

= + ⋅ ⋅ ⋅ − = 1 0 * 1 , 1 K k Q Q B k k B B k k dt t p p t T R

β

ρ

onde

( )

+

[

]

⋅ = k 1 , k Q Q B k k B k p

ρ

p t dt

ρ

logo

( )

[

( )

]

( )

= ⋅ ⋅ − = 1 0 * 1 K k k B k k B B T t p p R

β

ρ

A é maximizada quando pk for tal que o produto

p

k

ρ

kB

( )

p

k seja máximo.

HIPÓTESE:

(

p

t

)

iB

( ) ( )

t

h

i

p

B

i

=

λ

λ

,

função de variáveis separáveis, onde hi(p) é a função de reação ao preço do usuário da categoria i.

(8)

logo

[

]

[

]

( )

( )

k B i N i B i B i N i B i k B i k B h p t t p t p =

=

⋅ = =1 1 , ,

µ

λ

µ

λ

ρ

Onde por definição

( )

B i B i B i t A

µ

λ

= é o tráfego intrínseco de cada categoria. É o tráfego que cada categoria gera a preço zero.

Assim, podemos definir:

( )

∫ ∑

+

( )

( )

⋅ ⋅ ⋅ = ⋅ = = 1 1 k k Q Q N i k B i B i k k B k k p p A t h p dt p Z

ρ

( )

( )

∑ ∫

= ⋅     ⋅ = + N i k B i Q Q B i k A t dt h p p Z k k 1 1 se

+

( )

⋅ = 1 , k k Q Q B i B k i A t dt A

( )

= ⋅ ⋅ = N i k B i B k i k A h p p Z 1 ,

A função a ser maximizada é:

( )

( )

=

=

N i B i B k i k

A

h

Z

1 ,

α

α

α

(9)

2.

Receita máxima dada uma quebra

2.1. Definições

Ph e Pb  Probabilidades de máxima de perda por handoff e bloqueio. TrafficH(t)  Tráfego externo entrante na célula O.

A(i,t) para i=[1,N] e t=[0,T]  Tráfego interno gerado para membros da categoria i.

U(i,12) para i=[1,N]  Matriz de parâmetros de cada categoria de usuários. A coluna 1 contém os preços máximos aceitos por cada categoria e a coluna 2, o grau de reação ao preço ou elasticidade de reação ao preço de cada categoria.

Quebra = [Q1 , Q2 , ... , QK-1]  Quebras: instantes de tempo onde o preço cobrado (tarifa) muda.

Popt = [p0 , p1 , ... , pK-1]  pk é o preço ótimo encontrado para o intervalo de tempo restrito as

quebras [Qk , Qk+1] para k=[0,K-1].

REC = FO(Quebra)  Função objetivo (Receita máxima dado uma quebra). C  Número de canais na célula O.

2.2. Procedimentos

1o Passso: Arquivo maximiza.m

Importante: A função de erlang R( ) que retorna o tráfego máximo dado uma probabilidade de bloqueio e um número de canais foi implementada com o nome de TRAFIC( ), da mesma forma que a erlang

ς

( ) que retorna o número de canais necessários para atender um dado tráfego com uma dada probabilidade de bloqueio foi implementada com o nome de CHANNEL( ).

Calcular TrafficMax(t) = TRAFIC{ Max[ 0 , C – CHANNEL( TrafficH(i) ,Ph ) ) ] , Pb } Tráfego máximo para atender aos pré-requisitos de qualidade

2o Passo: Arquivo maximiza.m.

Calcular PrecoMin(t)= arg minα

Ai

( ) ( )

thi

α

TrafficMax

( )

t

Preço mínimo que pode ser cobrado em cada instante de tempo que não gera um tráfego superior ao tráfego máximo calculado no passo 1.

(10)

Importante: PrecoMink é calculado dentro do arquivo Fo.m. Dado uma quebra à Fo( ), acha-se para

cada quebra o teto dos preços mínimos e armazena-se em PrecoMink.

Calcular para todo k = [0,K-1]

( )

      ⋅ ⋅ = α

α

ik i

α

k Max A h

p arg , sujeito a

α

≥PrecoMink

Com a coleção dos pk’s para todo k, monta-se o vetor Potm, que contém os preços ótimos para cada

quebra.

4o Passo: Arquivo Fo.m

Calcular

( )

− = =

=

1 0 1 , K k N i k i k i k

A

h

p

p

REC

Retornar REC, que é a receita máxima para uma quebra dada.

Desta forma, deve-se utilizar um algoritmo genético que irá buscar uma quebra que gere a maior das receitas ótimas.

3.

O Algoritmo Genético

O algoritmo genético (AG) realiza a busca da solução (quebra) ótima através do conceito de evolução biológica, onde os indivíduos, neste trabalho associados às quebras (possíveis soluções), mais aptos têm maior probabilidade de sobreviver e de transmitir seus materiais genéticos para gerações futuras.

Na figura abaixo, a representação do cromossoma de um indivíduo:

Cada elemento destes vetores representa o instante em que as condições de tráfego e os parâmetros de qualidade devem ser re-avaliados. Desta forma define-se a tarifa a ser praticada até o próximo instante de quebra de modo a maximizar a receita gerada neste intervalo.

Vetor de números reais representando os instantes de quebra

0.2 0.3

(11)

Desta forma uma população de indivíduos, quebras ou soluções é gerada aleatoriamente sobre todo o espaço de busca, para que cada integrante da população possa ser avaliado segundo uma aptidão, que neste trabalho está associada ao valor de receita gerado por tal indivíduo.

Na figura abaixo, exemplo de indivíduos gerados aleatoriamente sobre um espaço de busca bidimensional (2 quebras durante um dia)

No plano horizontal, o domínio ([0,1];[0,1]) representa o percentual do dia em que as quebras ocorrem.

O eixo vertical representa uma receita ilustrativa.

Por meio dos operadores genéticos, crossover e mutação, que modificam e combinam as informações genéticas dos indivíduos sobreviventes a uma “seleção natural”, são gerados novos indivíduos (filhos), que tendem a serem melhores que os antepassados.

A dinâmica evolucionária das populações se dá através da segmentação destas em três classes, A, B e C. A classe A contém os 15% melhores indivíduos da população, a C os 8% piores e a B os demais restantes. Ao passar de uma geração qualquer t para a t+1, os indivíduos da classe A são todos preservados, por serem os melhores, os da classe C são eliminados e gerados aleatoriamente e os da classe B são substituídos pelos descendentes (filhos) dos indivíduos sorteados para reprodução. Esse sorteio é baseado em uma probabilidade de escolha que favorece os indivíduos mais aptos. Abaixo, o esquema da dinâmica de uma população em uma geração qualquer para a seguinte. 0 0.5 1 0 0.2 0.4 0.6 0.8 1 180 185 190 195 200 205 210 Classe A Classe B Classe C

Ordena segundo aptidão

Classe B (t) Classe A (t) Classe C (t) Aptidão Pop(t) Descendentes de (t) em (t+1) Classe A (t) Indivíduos Aleatórios Pop(t+1) Cópia Crossover Mutação Classe B (t+1) Classe A (t+1) Classe C (t+1) Aptidão

(12)

4.

Resultados

Para o caso de 2 quebras, onde os indivíduos em conjunto com suas avaliações encontram-se no R3, pode-se visualizar o espaço de busca por meio de uma varredura de pontos. Este caso é bastante interessante por se tratar do número de quebras adotado no mercado nos dias atuais pelas operadoras líderes de mercado.

O gráfico abaixo ilustra um comparativo entre soluções obtidas com o Matlab, através da função de busca fmincon, e o com o Algoritmo genético:

Para 2 quebras

MATLAB (Posicionando a solução inicial no melhor local possível – ponto branco)

• Solução Inicial = ( 0.200 0.899) Receita = 195.070

• Solução Final = ( 0.272 0.840) Receita máxima = 207.434

GA

• Solução Final GA = ( 0.260 0.819) Receita máxima obtida com o GA= 209.062

Fmincon

GA

Fmincon

(13)

5.

Considerações finais

Para que o programa consiga gerar informações reais, é preciso que os inputs sejam também reais, como por exemplo o tráfego de uma célula, o número de canais disponíveis na mesma,a demanda, em tráfego, de handoff e talvez o mais difícil de se conseguir, as curvas de reação ao preço e os tráfegos típicos que descrevem uma dada categoria de usuários. Assim sendo, todos os resultados exibidos neste trabalho são resultados obtidos para os cenários aqui construídos.

Outra consideração importante é que ao assumir um controle de administração de usuários “perfeito” onde

β

B

( )

t =

β

B*.

A receita deixa de ser

( )

=

[

( )

]

[

( )

]

( )

T o o B B B

T

t

p

t

t

p

t

dt

R

0

,

1

β

ρ

e passa a ser

( )

=

[

( )

]

[

( )

]

( )

T o o B B B

T

t

p

t

t

p

t

dt

R

0 *

,

1

β

ρ

Assim não estamos utilizando o máximo possível dos recursos do sistema, porém uma implementação de um algoritmo que o faça, fica como proposta para trabalhos futuros, bem como a obtenção de dados reais, que desviaria forças a estudos e tratamentos estatísticos.

6.

Bibliografia utilizada

Dissertação de mestrado de Marc Oliveira – CETUC – Rio de Janeiro, 18 de setembro de 2001 Apostila “Algoritmos Genéticos: Princípios e Aplicações” – Marco Aurélio Pacheco

“Evolutionary computing and the weight setting problem in open shortest path first (OSPF) routing” – Maurício Resende

Referências

Documentos relacionados

Como foi pedido pelo Sindivigilantes do Sul o bloqueio das faturas de todos os postos da Camargo aos postos e à Justiça do Trabalho, o advogado do sindicato adiantou que

• Manutenção Manutenção Manutenção ((((Gerou Manutenção Gerou Gerou recomendações Gerou recomendações para recomendações recomendações para para extensão para

licitante vencedora deverá enviar, no prazo máximo de 60 (sessenta) minutos, os documentos discriminados no Anexo II – Relação dos Documentos de Habilitação, com

No entanto, maiores lucros com publicidade e um crescimento no uso da plataforma em smartphones e tablets não serão suficientes para o mercado se a maior rede social do mundo

Os candidatos habilitados na fase de prova de conhecimentos específicos serão submetidos à avaliação psicológica que terá por objetivo avaliar o perfil psicológico do

Requeiro a Vossa Excelência, com fulcro no artigo 50, § 2º da Constituição Federal e na forma dos artigos 115 e 116 do Regimento Interno da Câmara dos

/ kVA riducibili in caso di potenza di rete ridotta (si veda manuale uso e manutenzione) / kVA variable para potencia de red demasiado pequeña, ver Manual de instrucciones.. /

Les produis et services proposés peuvent être des marques de fabrique, des marques de service ou des appellations commerciales de Terex Corporation et/ou ses filiales aux Etats Unis