• Nenhum resultado encontrado

ALGORITMO MEMÉTICO PARA RWA ESTÁTICO EM WDM SEM CONVERSÃO

N/A
N/A
Protected

Academic year: 2021

Share "ALGORITMO MEMÉTICO PARA RWA ESTÁTICO EM WDM SEM CONVERSÃO"

Copied!
11
0
0

Texto

(1)

A pesquisa Operacional e os Recursos Renováveis 4 a 7 de novembro de 2003, Natal-RN

ALGORITMO MEMÉTICO PARA RWA ESTÁTICO EM WDM SEM

CONVERSÃO

Tatiane Regina Bonfim, Akebo Yamakami1

Departamento de Telemática - Universidade Estadual de Campinas Fabiano J. L. Pádua, Edson Moschim2

Departamento de Semicondutores, Instrumentação e Fotônica – Universidade Estadual de Campinas

Resumo: Neste trabalho apresentamos uma proposta de um algoritmo memético

aplicado ao problema de roteamento e atribuição de comprimentos de onda (RWA), em uma rede óptica WDM sem conversão, de forma estática. O algoritmo é dividido em dois sub-algoritmos: encontrar um caminho para o roteamento, e atribuir um comprimento de onda para cada rota. Aplicamos o algoritmo memético utilizando a função fitness, que trabalha com a soma do custo e a distância envolvidos em um caminho óptico, para avaliar as soluções do problema. Apresentamos simulações e resultados baseados numa rede estudada em [MA]. Palavras-chaves: Algoritmo genético, algoritmo memético, redes ópticas, RWA.

Abstract: In this work we present a memetic algorithm applied to routing and wavelength assignment (RWA) problem in an optical WDM network without conversion, in static case. The algorithm is composed by two procedures: the first one finds a ligthpath for routing and the second one assigns wavelength to each route. We applied a memetic algorithm using the fitness function, which works with the sum of involved cost and distance in lightpath, to evaluate the solution of the problem. We present simulation and results based in a network found in [MA]. Keywords: Genetic algorithm, memetic algorithm, optical networks, RWA.

1. Introdução

A técnica de multiplexação por divisão no comprimento de onda (WDM) em fibras ópticas vem crescendo continuamente conjuntamente com técnicas de encaminhamento de informações por uma rede, mostrando um futuro promissor em telecomunicações. A tecnologia WDM oferece uma grande largura de banda para diversos tipos de aplicações, como por exemplo, voz, dados e vídeo, podendo estas aplicações estar sendo transmitidas simultaneamente. No encaminhamento utilizando comprimentos de onda (WRON), aplica-se às técnicas de reutilização de comprimentos de onda nas fibras ópticas ao longo dos enlaces (links), por toda a rede. O sistema em conjunto é denotado como redes ópticas ou redes fotônicas. As redes ópticas são aplicadas especialmente em redes de área metropolitana (MAN) e redes de ampla área (WAN).

Em redes WDM, um problema importante é o de roteamento e atribuição de comprimentos de onda (RWA). Diversos algoritmos vêm sendo criados para otimização do sistema, ou seja, algoritmos que procurem aumentar a quantidade de demandas atendidas na rede. Neste trabalho propomos uma técnica baseada em algoritmos meméticos, os quais usam combinações genéticas em conjunto com uma busca local para encontrar soluções para o problema. Estas soluções são avaliadas por meio de uma função de fitness. Usando mutações e

1

Departamento de Telemática - Universidade Estadual de Campinas. Caixa Postal 6101, Campinas, São Paulo 13081-970, Brasil. E-mail: {tatiane,akebo}@dt.fee.unicamp.br.

(2)

cruzamentos genéticos, pode-se recombinar as demandas até que se consiga ter o máximo de demandas simultâneas dentro da rede, com mínima quantidade de comprimento de onda e minimizando o número de bloqueios dentro da rede, cuja topologia é dada.

Em [MA], foi aplicado um algoritmo genético para resolver o problema de RWA e com o intuito de minimizar o número de bloqueios dentro da rede. De acordo com o algoritmo proposto, foi obtido em [MA] um bloqueio mínimo de 6 conexões. Neste trabalho nós utilizamos o mesmo exemplo numérico com o objetivo de compararmos os resultados obtidos pelo algoritmo memético que desenvolvemos com os resultados obtidos em [MA]. Este artigo está dividido em cinco Seções. Na Seção 2 apresentamos uma explanação sobre redes ópticas. Na Seção 3 é apresentado o método de algoritmo memético. O funcionamento do algoritmo proposto é descrito na Seção 4. Na Seção 5 apresentamos as simulações e os resultados. Por último as conclusões são apresentadas na Seção 6.

2. Redes Ópticas

Nos dias de hoje o estado da arte das comunicações é a tecnologia WDM empregada em redes ópticas [CSRM]. Diversos equipamentos vêm sendo desenvolvidos para o melhoramento desta tecnologia, como por exemplo, as chaves ópticas (Optical Crossconnect – OXC) e os amplificadores ópticos (AO). A Fig. 1 mostra um exemplo de um sistema ponto-a-ponto. A rede óptica tem por finalidade a transmissão e recepção de informações através de roteamento baseado em encaminhamento e atribuição de comprimentos de onda por um caminho óptico. Mais detalhes podem ser visto em [CSRM] e [RR1].

Fig. 1. Exemplo de uma comunicação óptica WDM ponto-a-ponto.

As redes ópticas WDM são formadas por pares de nós origem-destino que se comunicam através de enlaces ópticos (EO), também chamados links. Uma rota entre um nó origem e um nó destino é chamada de caminho óptico (lightpath). Os caminhos ópticos podem envolver um ou mais nós da rede. O caminho óptico necessita do uso de um comprimento de onda (um canal), ou seja, cada tipo de informação ou cada usuário está associado a um comprimento de onda específico. Um nó da rede é formado por transmissor/receptor, multiplexador/demultiplexador (MUX/DEMUX), amplificador óptico e Adiciona/Extrai (Add/Drop - OADM), o qual tem por finalidade extrair ou adicionar ao sistema um determinado comprimento de onda. As informações chegam ao OADM, onde são multiplexados os comprimentos de onda, passa pelo transmissor e, em seguida, conecta-se a um amplificador óptico de linha (AO). Depois é enviado ao destino. O sinal chega ao receptor, o qual tem um demultiplexador (DEMUX), onde os comprimentos de onda são separados novamente e, em seguida, é direcionado ao OADM. Caso possua nós intermediários, é usado a chave OXC para chavear a luz de um nó anterior para o próximo nó, que pode ser outro nó intermediário ou até mesmo o nó destino.

Assim, a cada demanda requerida (requests) na rede é estabelecido um caminho óptico entre o nó origem e o nó destino, utilizando um determinado comprimento de onda. Dentro das redes ópticas, as demandas podem ser encaminhadas pela rede de duas maneiras: usando o mesmo comprimento de onda ou diferentes comprimentos de onda. Em redes sem conversão de comprimento de onda um caminho óptico usa o mesmo comprimento de onda em todos os enlaces ópticos que o compõem. Esta exigência é chamada de restrição de continuidade de comprimento de onda. Cada enlace óptico tem um número fixo de comprimentos de onda, disponibilizando vários canais, conforme a tecnologia WDM. A Fig. 2 apresenta um exemplo de roteamento e atribuição de comprimento de onda.

(3)

Fig. 2. Exemplo de RWA (λi = comprimento de onda).

Com o crescimento do uso das redes ópticas foi necessário o desenvolvimento de algoritmos que procurem otimizar o atendimento das demandas simultâneas dentro da rede. Com isso tem-se uma maximização de demanda e minimização de bloqueios. Estes algoritmos trabalham com roteamentos e atribuição de comprimentos de onda (RWA) de redes ópticas.

Existem duas formas de trabalhar com problemas de RWA: estática ou dinamicamente. Algoritmos RWA que trabalham de forma estática, têm como objetivo planejar a distribuição de demandas dentro da rede. No caso dos algoritmos RWA que trabalham de forma dinâmica (on-line) não ocorre esta distribuição planejada de demanda, pois cada demanda que chega ao nó origem é tratada individualmente. Em [RR2] e [YA] são mostrados modelos de algoritmos de RWA.

2.1. RWA Estático

Neste trabalho, dado um conjunto D de demandas, procura-se distribuí-los na rede da melhor forma para obtenção de menor bloqueio. É considerado que a rede é sem conversão de comprimento de onda. Observe que não há grande preocupação com o tempo pelo fato de que está sendo feito planejamento na rede.

2.2. Problema de Roteamento

O problema de roteamento em redes DWDM é criar caminhos ópticos pela rede minimizando o número de enlaces ópticos envolvidos, bem como o custo total deste caminho. Pode-se resumir este problema na seguinte função de minimização:

I i x K k b Ax a s x C i k k k k i i k i k ,..., 2 , 1 ; } 1 , 0 { ,..., 2 , 1 ; . . min = ∈ = =      

∑∑

(1)

onde: A é a matriz de incidência da rede; xk é o vetor de identificação dos links da rede usando comprimento de onda k; bk é o vetor de demanda com comprimento de onda do tipo k; e

C

ki é o custo do enlace i de um caminho óptico k.

2.3. Problema de Atribuição de Comprimento de Onda

O objetivo do algoritmo é minimizar a quantidade total de comprimento de onda necessária para atender um conjunto de conexões de uma dada topologia de rede. A seguir é feita uma formulação do problema em questão.

(4)

{ }

{ }

0,1 1 , 0 , , 1 , . . 0 1 ; , , , , , , , max ∈ ∈ ∀ ∀ ≤ ∀ Λ = = = − = − ≤ ≤ ∀ ∈ ∀ ∈ ∀ ≥

sdw sdw ij d s sdw ij sd w sdw sdw sdw i k sdw jk sdw ij w d s sdw ij F ij w F sd c c se j d se j s se F F W w w e N d s L j i F F

λ

λ

λ

λ

(2)

onde: N é o conjunto de estações da rede; L é o conjunto de enlaces da rede; W é a quantidade máxima de comprimentos de onda por (i,j). λsdw é a quantidade de conexões estabelecidas, do nó origem s ao nó destino d, em um comprimento de onda w. Λsd denota o número de conexões (matriz de demanda) entre o nó s e o nó d; sd

w sdw

Λ

=

λ

, pois o número de conexões estabelecidas entre o par origem e destino (s,d) não pode ultrapassar a demanda para o par (s,d); Neste problema de atribuição de comprimento de onda, considera-se que 2 ou mais conexões podem ser requisitadas para o mesmo par de origem e destino (s,d), mas que cada uma delas deve utilizar um comprimento de onda distinto e, portanto,

λ

sdw

{ }

0,1 ; Fijsdw é o número de conexões, estabelecidas do nó s ao nó d, passando pelo enlace (i,j) e utilizando comprimento de

onda w;

1

,

d s ij

F

, pois o comprimento de onda em um enlace (i,j) pode ser atribuído para somente um caminho (s,d); sdw

{ }

0,1

ij

F , que significa que a conexão entre o nó s e o nó d, passando pelo enlace (i,j) estará utilizando o comprimento de onda w, caso seja 1 ou 0, em caso contrário.

3. Algoritmos Genéticos e Meméticos

Os algoritmos genéticos foram propostos inicialmente por Holland, na década de 70 [JHH]. Estes algoritmos são baseados nos conceitos da evolução genética, de onde se buscou importar os mecanismos de evolução, seleção natural das espécies e transmissão da informação genética para os ambientes computacionais.

O algoritmo genético é um método populacional, pois utiliza uma população de indivíduos, onde cada um representa uma solução para o problema. A cada geração do algoritmo, os indivíduos mais aptos têm maior probabilidade de sobreviverem e, consequentemente de transmitir boas qualidades a seus descendentes.

Este método usa o vocabulário da genética. Um indivíduo é representado por com cromossomo, que é uma cadeia de genes, que representa uma possível solução para o problema. Um gen representa uma certa característica no cromossomo. O valor de um gen é denominado alelo. O genótipo é o conjunto de genes que irão caracterizar o problema. Uma população é um conjunto de indivíduos (cromossomos). A criação de uma população é chamada geração. A função de aptidão (fitness function) representa uma avaliação da qualidade da solução do indivíduo. O processo de reprodução (crossover) envolve dois indivíduos (soluções do problema), dando origem a um novo, o qual herdará características genéticas de seus pais. O processo de seleção avalia cada indivíduo, selecionando os mais aptos para fazerem parte da próxima geração. A mutação é introduzida neste contexto com o único objetivo de introduzir diversidade à população. A mutação e o crossover, chamados operadores genéticos, são

(5)

aplicados, geração a geração, de forma que a população sofra um processo evolutivo, gerando indivíduos melhor adaptados.

Em linhas gerais, um algoritmo genético é implementado com o pseudo-código apresentado pela Fig. 3.

populacao_inicial( );

repita ate o numero de geracoes subpopulacao( ); crossover( ); mutacao( ); avalia_finess( ); selecao da nova_populacao( ); fim_repita

Fig. 3. Pseudo-código do algoritmo genético.

O algoritmo memético, que foi introduzido por Moscato e Norman [PM1][PM2], é também chamado de algoritmo genético híbrido, pois além de permitir a realização de operações genéticas, utiliza um (ou mais) operador (es) de busca local com o intuito de reforçar o processo de melhoria das soluções. Nesta abordagem híbrida, o algoritmo genético é utilizado para executar a exploração global na população, enquanto o otimizador local é utilizado para melhorar localmente a qualidade das soluções.

Um pseudo-código para o algoritmo memético é apresentado na Fig. 4.

populacao_inicial( );

repita ate o numero de geracoes subpopulacao( ); crossover( ); mutacao( ); avalia_finess( ); busca_local( ); selecao da nova_populacao( ); fim_repita

Fig. 4. Pseudo-código do algoritmo memético.

3.1. Algoritmos Meméticos com população estruturada

Um dos primeiros passos na implementação de um algoritmo genético ou memético, é definir a representação da solução do problema (representação do cromossomo). Com o intuito de adotarmos uma estrutura de dados eficiente e de rápida manipulação, optamos pelo uso de uma estrutura em árvore ternária com 3 níveis, com um número fixo de 13 agentes [PM2], conforme a Fig. 5.

(6)

Nesta estrutura em árvore, a população é formada hierarquicamente por agentes líderes e subordinados. Esta classificação é feita de acordo com o valor da solução que cada agente apresenta. Todo nó raiz possui um valor melhor que os seus nós filhos. Sendo assim, o valor armazenado no agente 1 apresenta a melhor solução encontrada na população.

Podemos verificar que, nesta estrutura, o agente 1 é líder dos agentes 2, 3 e 4. O agente 2 tem como subordinados os agentes 5, 6 e 7. O agente 3 tem como subordinados os agentes 8, 9 e 10 e o agente 4 tem como subordinados os agentes 11, 12 e 13.

Cada agente na população representa dois indivíduos, um chamado de pocket e o outro de current. A solução que o indivíduo pocket possui é sempre melhor que a solução do indivíduo current. Quando um current, para um dado agente, possui uma solução melhor que o pocket, estes valores devem ser trocados.

O indivíduo pocket de um líder possui melhor valor que os indivíduos pocket de seus agentes subordinados. Quando isto não ocorre, os indivíduos pocket destes agentes são trocados de posição. Com estas trocas, garantimos que todo pocket será melhor que seu current, que todo pocket líder será melhor que os indivíduos pocket subordinados e que o agente 1 possuirá a melhor solução da população.

A medida tomada para avaliar qual é a melhor solução da população é chamada de função de avaliação ou função de fitness. A função de fitness é responsável por atribuir um valor referente à qualidade desta solução, indicando o quão próximo um indivíduo está de ser a solução do problema. Assim, a cada indivíduo na população é atribuído um valor, denominado fitness, que representa o valor da solução na função objetivo do problema.

Neste tipo de estrutura em árvore, a operação de crossover é executada somente entre indivíduos pocket e segue o seguinte critério: cada pocket líder cruzará com todos os seus indivíduos pocket subordinados. O filho resultante deste cruzamento será armazenado no indivíduo current do subordinado. Suponha que seja executado um cruzamento entre o pocket do agente 1 (líder) e o pocket do agente 2 (subordinado), o filho resultante deste cruzamento é armazenado no current do agente 2. Como o cruzamento é efetuado para todos os indivíduos pocket, a cada geração são executados 12 cruzamentos.

A operação de mutação também é executada apenas em indivíduos pocket. Neste caso, escolhe-se aleatoriamente um indivíduo pocket, com exceção ao pocket do agente 1, e efetua-se a mutação. O filho gerado após esta operação é armazenado no indivíduo current deste pocket. 4. Aplicação do algoritmo memético com população estruturada ao problema de RWA

estático

Um fluxograma para o algoritmo memético com população estruturada é apresentado na Fig. 6.

Um conceito importante e crítico na execução de um algoritmo genético ou memético é a escolha da representação de possíveis soluções para o problema dentro de um cromossomo ou indivíduo.

Para o problema de RWA estático, o cromossomo foi codificado por uma matriz D de n linhas e m colunas, onde n é o número de lambdas ou comprimento de ondas disponíveis na rede óptica e m é o número de demandas (pares de origem e destino) estáticas da rede óptica. Cada campo Di,j da matriz, onde 1≤ i ≤ n e 1 ≤ j ≤ m, é preenchido pelos valores 1 ou 0. O campo Di,j será preenchido com o valor 1 se o comprimento de onda i for alocado à demanda j e 0 para o caso contrário.

(7)

Início Met_Djikstra() g = 0 Populacao_Inicial() Ordena_arvore() Avalia_fitness() selecione individuos pocket lider e subordinado

Crossover() selecione individuos

pocket g = numero

geracoes? retorne melhorindividuo Fim

Mutacao() Ordena_arvore() Avalia_fitness() Busca_local() Ordena_arvore() Avalia_fitness() g = g + 1 Início Met_Djikstra() g = 0 Populacao_Inicial() Ordena_arvore() Avalia_fitness() selecione individuos pocket lider e subordinado

Crossover() selecione individuos

pocket g = numero

geracoes? retorne melhorindividuo Fim

Mutacao() Ordena_arvore() Avalia_fitness() Busca_local() Ordena_arvore() Avalia_fitness() g = g + 1

Fig. 6. Fluxograma do algoritmo memético com população estruturada.

O primeiro passo na execução do algoritmo memético com população estruturada é a geração da população inicial. Foram gerados 26 indivíduos, 13 indivíduos pocket e 13 indivíduos current, de forma aleatória. Cada indivíduo (cromossomo) foi codificado por uma matriz D, conforme detalhado no parágrafo acima. Com o intuito de gerarmos apenas cromossomos factíveis, foi aplicado o critério representado pela Eq. (3).

.

1

;

.

1

;

1 , 1 ,

n

i

q

D

m

j

q

D

i m j j i j n i j i

= = (3)

O parâmetro qj que representa a quantidade de demandas que serão enviadas entre um determinado par de origem e destino (demanda do tipo j). O parâmetro qi representa a quantidade de comprimento de onda do tipo i disponível.

De acordo com Eq. (3), podemos verificar que, para que seja gerado um cromossomo factível, a quantidade de lambdas alocados para aquela demanda deve ser no máximo igual a quantidade de demandas existentes para aquele par de origem e destino.

O segundo passo na execução do algoritmo é a avaliação da função de fitness. O critério utilizado para a avaliação das soluções foi a soma do bloqueio com o custo. Foi aplicado um peso de 0.08 para o bloqueio e um peso de 0.01 para o custo.

(8)

Para o cálculo da função de fitness, cada indivíduo tem as rotas das demandas e os custos calculados através do algoritmo do caminho mínimo (Djikstra). O custo total C do indivíduo é a soma dos custos de cada demanda. Tendo as rotas definidas, uma demanda é considerada bloqueada se existir pelo menos 1 (link) nesta rota que utilize o mesmo (lambda) que outra rota, de outra demanda, num cenário mono-fibra. O bloqueio B total do indivíduo é a soma dos bloqueios de cada demanda. A função de fitness foi calculada, para cada indivíduo, de acordo com a Eq. (4). A cada geração, a solução considerada melhor é aquela que apresenta o menor valor de fitness.

fitnessfunction = 0.8B + 0.001C (4)

O terceiro passo na execução do algoritmo é a ordenação da árvore, seguindo os critérios de indivíduos pocket e current, de forma que o melhor indivíduo (com menor valor de fitness) fique na posição do agente 1.

Os passos seguintes, onde são executados os operadores genéticos, são realizados enquanto o critério de parada não for alcançado. Os operadores genéticos executados neste algoritmo são o crossover uniforme, mutação simples e mutação inversiva.

O crossover uniforme é realizado entre indivíduos pocket líder e pocket subordinado. O filho gerado por este crossover é armazenado no indivíduo current do subordinado. Nesta operação genética, é gerada aleatoriamente a taxa de pontos de cruzamento (p) ou número de genes que serão permutados entre os cromossomos do pocket líder com o do pocket subordinado. Em seguida, escolhe-se aleatoriamente a posição dos p genes (números de demandas, 1 ≤ j ≤ m) e efetua-se a permuta de toda a coluna da matriz entre os indivíduos pocket líder e subordinado.

A mutação é realizada apenas em indivíduos pocket e o filho gerado é armazenado no current deste indivíduo.

Na mutação simples, percorre-se todas as colunas (demandas) na matriz do cromossomo e, para cada demanda, escolhe-se duas posições de lambda e efetua-se a troca entre elas. Na mutação inversiva, percorre-se todas as colunas (demandas) da matriz do cromossomo e, para cada demanda, escolhe-se uma posição de lambda e efetua-se a troca entre posições de lambda adjacentes.

5. Exemplos Numéricos

Aplicamos o algoritmo memético para a rede óptica apresentada na Fig. 7.

(9)

Fig. 8. Matriz de demanda aplicada à rede da Fig. 7.

Foi aplicado ao algoritmo um conjunto de demanda fixas, conforme a matriz de demanda da Fig. 8. Somente os nós de 1 a 6 têm demandas.

O algoritmo adiciona as demandas na rede de forma a permanecerem sem serem excluídas. Assim, podemos verificar a capacidade de atribuição de rotas, mas nem todas as demandas conseguem entrar na rede. Estas demandas são consideradas como bloqueio. A Fig. 9 mostra um exemplo de estatística de bloqueio de acordo com a evolução de gerações do algoritmo memético. É utilizado o algoritmo de Busca Local no Melhor Indivíduo e nos indivíduos pockets com localização de caminhos alternativos no melhor indivíduo. É visto que conforme cresce o número de gerações o bloqueio tende a se estabilizar em um valor único. Foi encontrado um bloqueio mínimo de 5 conexões.

Fig. 9. Estatística de Bloqueio.

Pela Fig. 10 podemos visualizar um gráfico comparativo entre 4 simulações: • Algoritmo memético sem busca local;

(10)

• Algoritmo memético com busca local no melhor indivíduo e nos indivíduos pocket e sem localização de caminhos alternativos;

• Algoritmo memético com busca local no melhor indivíduo e nos indivíduos pocket e com localização de caminhos alternativos.

O que podemos ver é a melhor performance do algoritmo de busca local no melhor indivíduo e nos indivíduos pockets com localização de caminhos alternativos em todas as gerações. Este algoritmo procura por um caminho alternativo de forma heurística, quando não é encontrado um caminho ao ser executado pela primeira vez. Com isso, este algoritmo proporcionou o menor bloqueio possível, dada a quantidade de comprimentos de onda disponíveis na rede.

Fig. 10. Estatística de Bloqueio e Comparação de Algoritmos.

6. Conclusão

Este trabalho mostrou um algoritmo memético aplicado a Redes Ópticas WDM. Utilizando o algoritmo de Dijkstra, para encontrar o melhor caminho na rede, e trabalhando com o algoritmo proposto para atribuição de comprimentos de onda, obtivemos uma solução para o problema RWA em uma rede óptica WDM em malha, de forma estática. O algoritmo proposto foi trabalhado de quatro formas: algoritmo memético sem a busca local, algoritmo memético com busca local somente no melhor indivíduo, algoritmo memético com busca local

(11)

no melhor indivíduo e nos indivíduos pocket e sem localização de caminhos alternativos e algoritmo memético com busca local no melhor indivíduo e nos indivíduos pocket e com localização de caminhos alternativos.

Podemos verificar uma melhor eficiência em nosso algoritmo, principalmente usando o algoritmo memético com busca local no melhor indivíduo e em todos os indivíduos pocket e com localização de caminhos alternativos em todas as gerações, em relação aos resultados encontrados em [MA]. Em [MA] foi aplicado um algoritmo genético e o melhor resultado alcançado, para o mesmo exemplo numérico, foi um bloqueio de 6 conexões.

Referências

[MA] M. Ali, “Transmission-Efficient Design and Management of Wavelength-Routed Optical Networks”, MA: Kluwer, Norwood, 2001.

[CSRM] C. S. R. Murthy, M. Gurusamy, “WDM Optical Networks: Concepts, Design and Algorithms”, Prentice Hall PTR, New Jersey, 2002.

[RR1] R. Ramaswami, K. N. Sivarajan, “Optical Networks – A Practical Perspective”, Morgan Kaufmann Publishers, San Francisco, 1998.

[RR2] R. Ramaswami and K. N. Sirvarajan, “Routing and Wavelength Assignment in All-Optical Networks”, IEEE/ACM Transactions on Networking, vol. 3, pp. 489-500, October 1995.

[YA] Y. Ahang, K. Taira, H. Takagi, S. K. Das, “An Efficient Heuristic for Routing and Wavelength Assignment in Optical WDM Networks”, IEEE, 2002.

[HQ] H. Qin, Z. Liu, S. Zhang, A. Wen, “Routing and Wavelength Assignment Based on Genetic Algorithm”, IEEE Communications Letters, vol. 6, no. 10, October 2002.

[MA] M. Ali, B. Ramamurthy, J. S. Deogun, “Routing Algorithms for All-Optical Networks with Power Considerations: The Unicast Case”, IEEE, 1999.

[JAV] J. A. Vasconcelos, J. A. Ramírez, R. H. C. Takahashi, R. R. Saldanha, “Improvements in Genetic Algorithms”, IEEE Transactions on Magnetics, vol. 37, n0. 5, September 2001. [PM1] P. Moscato and M. Normam, “A memetic approach for the travelling salesman problem:

implementation of a computational ecology for combinatorial optimization on message-passing systems,” Proc. Intl. Conf. on Parallel Computing and Transportation Applications, Amsterdam (1992).

[JHH] J. H. Holland, “Genetic algorithms and the optimal allocation of trials,” SIAM J. Comput., 2, 88–105 (1973).

[PM2] P. Moscato and R. Berretta, “The number partitioning problem: An open challenge for Evolutionary Computation,” New Ideas in Optimisation, chapter 17, D. Corne, F. Glover, and M. Dorigo, (eds.), McGraw-Hill (1999).

[PM3] P. Moscato, P, “On Evolution, Search, Optimization, Genetic Algorithms and Martial Arts: Towards Memetic Algorithms,” Caltech Concurrent Computation Program, C3P Report 826 (1989).

[BS] B. Sendho and M. Kreutz and V. W. Seelen, “A condition for the genotype-phenotype mapping: Causality,” Proceedings of the Seventh International Conference on Genetic Algorithms (1997).

[SJL] S. J. Louis and J. Johnson, “Solving similar Problems using Genetic Algorithms and Case-Based Memory,” Proceedings of the Seventh International Conference on Genetic Algorithms, 283–290 (1997).

Referências

Documentos relacionados

organoclorados organofosforados carbamatos benzimidazóis permetrinas triazóis pirazóis piretróides avermectinas nicotinóides “etc”.. São usados como controle de vetores e

INDICADORES AMBIENTAIS ESSENCIAIS: UMA ANÁLISE DA SUA UTILIZAÇÃO NOS RELATÓRIOS DE SUSTENTABILIDADE DAS EMPRESAS DO SETOR DE ENERGIA ELÉTRICA SUL AMERICANO, ELABORADOS

Fonte: IDC, 2015 (Inquérito a 467 organizações portuguesas que possuem alguma presença na Internet)..

Dessa forma, os níveis de pressão sonora equivalente dos gabinetes dos professores, para o período diurno, para a condição de medição – portas e janelas abertas e equipamentos

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Analysis of relief and toponymy of the landscape based on the interpretation of the military topographic survey: Altimetry, Hypsometry, Hydrography, Slopes, Solar orientation,

A assistência da equipe de enfermagem para a pessoa portadora de Diabetes Mellitus deve ser desenvolvida para um processo de educação em saúde que contribua para que a

servidores, software, equipamento de rede, etc, clientes da IaaS essencialmente alugam estes recursos como um serviço terceirizado completo...