• Nenhum resultado encontrado

Uma rede de sensores podem ser formadas por uma grande quantidade de instrumen- tos. Apesar desse fato, nem sempre essa grande quantidade de instrumentos irá acarretar em uma boa diversidade de rotas. Por exemplo, podem existir casos em que uma ou mais rotas de um instrumento sensor acabem passando pelo mesmo instrumento roteador. No caso da falha ou perda de comunicação com esse instrumento roteador, mais de uma rota do instrumento sensor será afetada. Outro ponto a ser observado é o comprimento das rotas. Quanto mais roteadores existirem em uma rota, maior será o atraso da informação em comparação a uma rota menor.

Existem também o problema do excesso de rotas sobre um roteador (sobreposição de rotas de vários instrumentos). Se vários instrumentos utilizam um mesmo roteador como rota, no caso de sua falha ou perda de comunicação desse roteador, vários instrumentos sensores perderão uma de suas rotas.

A potência média também é um item importante pois, dado os problemas de obs- táculos, interferências e posicionamento dos instrumentos, a localização dos roteadores deve ser observada para que a potência média da rede se mantenha a mais alta possível, melhorando a recepção e diminuindo a possibilidade de falhas de comunicação.

para que a maior quantidade de rotas possa ser alcançada, também é um fator a se consi- derar no projeto de uma rede de sensores devido ao seu alto custo aquisitivo.

Esses pontos levantados são justamente aqueles a serem analisados pelo algoritmo genético multiobjetivo. Cada um deles é uma função objetivo a ser otimizada e definida como:

Dado MLRcomo sendo a média do comprimento das rotas de toda a rede, ela pode ser expressa pela equação 3.5:

MLR= I ∑ Ri ∑ SRir |Ri| |I| (3.5)

Onde I é o conjunto de todos os instrumentos sensores da rede, Ri é o conjunto das rotas de um determinado instrumento sensor, SRir denota a quantidade de instrumentos que compõem a rota r do instrumento i (comprimento da rota) e |.| o tamanho do conjunto. Adicionar essa função objetivo garante que a busca das soluções avaliará a média do comprimento das rotas, impedindo por exemplo o uso excessivo de roteadores em uma única rota, permitindo uma latência pior para essa rota. Rotas menores possuem latências menores por exigirem menos saltos na comunicação. Isso também diminui o gasto de energia, já que menos instrumentos serão envolvidos numa única transmissão.

Dado mDR como sendo a quantidade mínima de combinações de rotas disjuntas de todos os instrumentos da rede, ele pode ser expresso pela equação 3.6:

mDR= min (DRQi), ∀i ∈ I (3.6)

Já DRQi é a quantidade de combinações N em 3 das rotas do instrumento i que não possuem instrumentos em comum (excluindo-se o instrumento sensor, origem, e o Ga- teway, destino), expresso pela equação 3.7:

DRQi= Ci

Combc (3.7)

O conjunto Ci é o conjunto das combinações das rotas do instrumento i e Combc é a função que realiza a verificação da não existência de rotas em comum, definida pela equação 3.8: Combc=    1, if 3 T cRr = /0 0, otherwise (3.8)

Onde Rr é o conjunto de instrumentos da rota r, da combinação c.

Aqui a análise é realizada sobre a quantidade de combinações pois as combinações permitem gerar configurações diferentes das rotas utilizadas. Cada combinação é uma

3.6. DEFINIÇÃO DO PROBLEMA DE OTIMIZAÇÃO 45

configuração de rotas para cada instrumento. Por exemplo, se existir apenas uma combi- nação, na falha de uma rota, só existe uma configuração a ser utilizada.

Para instrumentos diferentes também é utilizado uma lógica semelhante. Como a ideia é existir uma rede onde cada instrumento possua n rotas disjuntas de todos os outros instrumentos da rede, ou seja, cada um possua n rotas que não sejam compartilhadas com nenhum outro instrumento, a combinação é realizada com todas as rotas de todos os instrumentos da rede ao mesmo tempo.

A quantidade de combinações de rotas disjuntas da rede é dada pela equação 3.9:

DRNQ= CN

Combn (3.9)

O conjunto CN é o conjunto das combinações das rotas de cada instrumento da rede com as rotas dos outros instrumentos e Combné a função definida pela equação 3.10:

Combn=    1, if |n| T nRi = /0 0, otherwise (3.10)

Onde |n| é o tamanho do conjunto da combinação n das rotas dos instrumentos da rede, nRi é o conjunto dos instrumentos da rota i da combinação n.

Da mesma forma que com as rotas disjuntas por instrumento, é realizada a análise das combinações de rotas disjuntas entre instrumentos. Com mais combinações, mais configurações da rede no caso de falhas em instrumentos ou roteadores. A única diferença é que no caso de rotas disjuntas entre instrumentos, a combinação é uma configuração com todas as rotas de todos os instrumentos ao mesmo tempo, o que torna uma análise um pouco mais complicada do ponto de vista computacional.

Assim, quando definimos um problema de otimização multiobjetivo, temos como fun- ções objetivos e principais contribuições deste trabalho

f1= MLR, f2= mDR, f3= DRNQ, f4= |RI| f5= meanPRx1n (3.11)

onde RI é o conjunto de instrumentos roteadores e meanPRx1n é a potência média

definida pela equação 3.4 e como objetivos

min ( f1), max ( f2), max ( f3), min ( f4), max ( f5) (3.12)

sujeitos as restrições

|Ri| >= 3, ∀i ∈ I, mDR > 1, DRQN > 1 (3.13) Além dessas restrições, o usuário também pode impor restrições de treinamento a fim

1

0

1

1

...

0

Roteador 3(Ativado)

Roteador 2 (Desativado)

Roteador 1 (Ativado)

Figura 3.3: Exemplo de Cromossomo.

de diminuir o espaço de busca do algoritmo, como por exemplo, limitar a quantidade de combinações desejada.

Por fim, a alocação dos instrumentos no espaço bidimensional pode ser realizada pela determinação das coordenadas x,y de cada instrumento. O problema dessa abordagem é a complexidade que isso gera para a busca da alocação ótima. Dependendo do formato escolhido (inteiro, decimal ou binário), poderia tornar a cadeia genética grande e o cru- zamento dos indivíduos mais complexa. Além disso, poderia tornar a busca das posições um processo bem mais lento (uma quantidade infinita de posições).

Como forma de simplificar esse processo de busca, optou-se por não gerar uma busca pela posição a cada geração da população (mudança dos genes dos indivíduos, o que muda as posições deles) e sim, os roteadores são dispostos aleatoriamente na área de alocação no início do processo e a partir dai, cada instrumento é ativado ou desativado. Se ativado, pode servir de roteador para os instrumentos ao seu redor. Se desativado, fica invisível para os instrumentos vizinhos.

Dessa forma, a codificação utilizada para a cadeia genética dos indivíduos é a binária e representa, em vez de uma coordenada, o estado de um instrumento roteador. Cada ro- teador é representado por um bit e todos os bits denotam a configuração da rede completa (uma solução possível), como mostrado na Figura 3.3.

Os instrumentos são alocados de forma uniforme, não podendo haver sobreposição e a distância mínima entre os instrumentos é de 1 metro. Sendo assim, a busca do algo- ritmo é pelo conjunto de indivíduos (configuração de roteadores) que atendem a função multiobjetivo 3.12.

Foi adicionado ainda ao modelo a possibilidade de se utilizar obstruções entre os ins- trumentos, o que geraria atenuações nos sinais de propagação (modificação do parâmetro de atenuação no modelo de propagação da equação 3.1). Tal possibilidade não foi uti- lizada neste trabalho por já existirem fatores em excesso para analisar, mas o algoritmo permite tal possibilidade.

Fazendo as alterações necessárias no algoritmo NSGA-II da seção 2 os passos de execução do algoritmo utilizado neste trabalho são:

3.6. DEFINIÇÃO DO PROBLEMA DE OTIMIZAÇÃO 47

NSGA-II para alocação de roteadores em uma WISN

1. Disperse routers in the plant area randomly 2. Create parents |P0| = N (random)

3. Create Q0= /0 (offspring) 4. From t = 0 until maxGen 5. Rt = PtSQt

6. for each s from Rt 7. for each i from s

8. Generate_Neighbors_List(i) 9. Generate_Routes_List(i) 10. Calculate_Ob jective_Functions(i) 11. fronts F = f ast_non_dominated_sort(Rt) 12. Pt+1= /0 and i = 0 13. until |Pt+1| + |Fi| ≤ N 14. calculate crowding-distance-assignment(Fi) 15. Pt+1= Pt+1SFi 16. i= i + 1

17. Pt+1= Sortn(Fi) (descending order)

18. Pt+1= Pt+1SFi[1 : (N − |Pt+1|)] 19. Until |Qt+1| ≤ N

20. Selection (fathers f1and f2from Pt+1) 21. Crossover ( f1and f2⇒ s1and s2) 22. Mutation (over s1and s2)

23. Qt+1= Qt+1Ss1Ss2

Onde s é um individuo (uma solução) tirada da população. Cada solução é uma área da planta com roteadores diferentes ativados, sendo assim, i é um instrumento daquela configuração de área e a função Generate_Neighbors_List(i) gera a lista dos instrumen- tos vizinhos de i (um instrumento vizinho é aquele que tem potência de recepção maior que o limiar), a função Generate_Routes_List(i) gera todas as rotas diretas (sem lo- ops) entre o instrumento i e o Gateway da rede e, de posse de todas as rotas, a função Calculate_Ob jective_Functions(i) calcula os valores das funções objetivos relativas as equações 3.5, 3.6, 3.9, 3.4 e a quantidade de roteadores utilizados nessa solução s. A partir desse ponto, o algoritmo segue o funcionamento normal do NSGA-II.

Definido o problema e a proposta de solução, o proximo passo é a realização dos testes com tais definições em foco.

Capítulo 4

Metodologia dos Experimentos e

Resultados

Esta capítulo descreve a metodologia dos experimentos e os resultados alcançados. A metodologia adotada passa pela configuração da área de testes, com os instrumentos fixos, o gerenciador de rede e posterior alocação aleatória dos roteadores, seguido pela configuração do algoritmo genético, com os parâmetros de treinamento e restrições e a parametrização dos testes, com a quantidade de testes.

4.1

Metodologia experimental

A área de dispersão dos instrumentos é uma área retangular bidimensional que possuí uma largura de 1590.75 metros com altura de 1228.50 metros. Essa área foi escolhida baseada na área de uma planta industrial real. O objetivo no início era de tentar simular todo o ambiente da planta, mas devido a dificuldade de realizar tal tarefa em tempo hábil, para o trabalho, foi utilizada apenas a área efetiva, que possui um tamanho que permite a utilização de instrumentos sem fio e possibilita a existência de instrumentos que não fiquem dentro do alcance do instrumento GW.

A quantidade máxima de instrumentos que podem ser alocados (somando os instru- mentos fixos, o gerenciador da rede e os roteadores) é limitada a 100 instrumentos (como mencionado no 3). Os roteadores, em cada teste, são alocados até o limite da quantidade de instrumentos suportados pela rede, de maneira aleatória sobre uma área de dispersão retangular que cobre todos os instrumentos fixos. Isso possibilita a não existência de instrumentos alocados a uma distância muito grande dos instrumentos fixos da rede (os instrumentos sensores).

O algoritmo Genético Multiobjetivo é configurado com os seguintes parâmetros: O tamanho da população, que é de 50 indivíduos, duas condições de parada são utilizadas que são quantidade máxima de gerações para a população, de 4000, e a porcentagem da população que não possuí melhorias, de 50%, o tamanho da tabela do torneio do algoritmo para a seleção dos pais, que é de 3 indivíduos, a probabilidade de cruzamento, 95%, e a probabilidade de mutação, 1%.

As outras configurações usadas para o problema são as limitações de no mínimo 1 combinação de 3 rotas disjuntas para cada instrumento e 1 combinação de 1 rota dis-

junta para a rede (no mínimo 1 rota disjunta entre vizinhos). Foram realizados 2 testes com alocações diferentes. No teste 1 (cenário 1) foram alocados 8 instrumentos fixos, permitindo a alocação de até 91 instrumentos roteadores (100 instrumentos no total - 1 GW - 8 instrumentos fixos). Para o teste 2 (cenário 2) foram utilizados 16 instrumentos fixos permitindo a alocação de até 83 instrumentos roteadores. Cada configuração tentou abordar um cenário onde a dispersão dos instrumentos fixos não permitia a obtenção da configuração ideal (3 rotas para cada instrumento).

Todos esses parâmetros são resumidos na tabela 4.1.

Tabela 4.1: Parâmetros utilizados.

Parâmetro Valor

Largura da área 1590.75 m

Altura da área 1228.50 m

Quantidade máximo de instrumentos 100

Quantidade de instrumentos fixos 8, 16

Tamanho da População 50

Quantidade máxima de gerações 4000

Quantidade de gerações sem melhora 50%

Probabilidade de Cruzamento 95%

Probabilidade de mutação 1%

Tamanho da tabela do torneio 3

Quantidade mínima de rotas disjuntas por instrumento 3 Quantidade mínima de rotas disjuntas entre instrumentos 1

O programa que executa todo o experimento foi desenvolvido na linguagem Java e os gráficos dos resultados foram obtidos através de uma ferramenta matemática.

A título de comparação, como não é possível realizar uma comparação com os tra- balhos descritos na seção 2.5, pois, apesar de todos utilizarem técnicas semelhantes, os problemas são bem diferentes e as redes são redes de sensores sem fio comuns (Ad hoc, sem restrições de latência, caminhos redundantes entre outros aspectos). Dessa forma, fo- ram desenvolvidos um algoritmo genético comum para achar uma solução que atenda as regras criadas pela HCF [Emerson 2011] (regra dos 5, regra dos 3 e regra dos 25%) e uma versão do algoritmo proposto para encontrar uma solução em que a busca por uma rota disjunta entre os instrumentos não fosse utilizada (uma rede onde existem rotas disjuntas apenas nas rotas dos próprio instrumento, mas podendo existir rotas compartilhadas entre instrumentos diferentes).

A regra dos 5 definida pela HCF recomenda que toda rede WirelessHART deve ter no mínimo 5 instrumentos dentro do raio de alcance do gateway. Caso tal recomendação não seja atendida, a rede WirelessHART, apesar de funcionar, não poderá se beneficiar da redundância intrínseca de uma rede auto-organizável.

A regra dos 3 diz que todo instrumento WirelessHART deve ter no mínimo 3 vizinhos dentro do seu raio de alcance efetivo, garantindo assim que existam ao menos duas rotas e uma potencial rota para os casos de necessidade.

Documentos relacionados