Os primeiros trabalhos rela ionados om Algoritmo Genéti o surgiram em meados de 1950
quandovários pesquisadores omeçaram autilizar omputadoresparasimularsistemasbioló-
gi os. Entretanto,seu desenvolvimento seini ioude fatonoiní io dadé adade 70do sé ulo
passado, oordenado por Holland (1975 ), om o objetivo de imitar o pro esso de evolução
observado na natureza.
Apartirdaí,surgiramdiversasté ni asdesoluçãodeproblemasbaseadosemprin ípiosda
evolução naturale hereditariedade, dentre elasestá a hamada Programação Evolutiva (PE)
na qual se situam os AGs. Programação Evolutiva é um algoritmo genéri o probabilísti o
(p
t
1
, p
t2
, ..., p
tn
)
. Em termosmatemáti os, adaindivíduop
t
i
,1 ≤ i ≤ n
,representa umasolução do problema asso iado. A ada iteraçãot
,existe umme anismoquepermite arenovaçãoda população,obtendo-seP(t)
apartirdeP(t − 1)
.OsAGs onstituemumaabstraçãodo pro esso adaptativo de sistemasnaturais. Em pri-
meirolugar,a evoluçãosepro essa por meio de romossomos,quesãodispositivosbiológi os
armazenadores das ara terísti as de ada indivíduo. Atravésde umpro esso de seleção na-
tural,os romossomos queapresentamumaestruturaquemelhorseadaptaaomeioambiente
(tness) sereproduzem ommaiorfreqüên ia. Areprodução é oponto noqual aevolução se
pro essa. Através da ombinação dosmateriais genéti os dosan estrais, novos romossomos
são produzidos. Atravésde umpro essode mutação, osdes endentes poderãovir a apresen-
tar ara terísti as diferentesde seus an estrais, om umeventualaumento na apa idade de
adaptação ao meio.
Dentro desta perspe tiva, os aspe tos fundamentais são: a estrutura do romossomo; a
função de avaliação; os pro essos de seleção natural e reprodução; os operadores genéti os,
dentreeleso rossover,amutaçãoea lonagem;ageraçãodapopulaçãoini ialeadetermina-
ção dosparâmetros. Dessaforma, no desenvolvimento dos algoritmos genéti os, osaspe tos
onsiderados são baseados nessas ara terísti as.
4.2 AG apli ado ao problema
Ao ser apli ado ao problema de atribuição de papéis em RSSF, algumas adaptações foram
feitas, paraadequar ada umdos omponentes ara terísti os do AG àsparti ularidades do
problema.
1. Representação da solução: A representaçãoda solução (gura 4.1)utilizada parao
problema onsiste emumvetorde tamanho
n
(número de nóssensores). Cadaposiçãoc
i
,i= 0, ..., n
, admite valoresinteiros, indi ando se umnó sensor está ativo ou não, e no aso de estar ativo,qual papelde sensoriamento (temperatura, pressão, vídeo)estáatribuído a ele. Além disso, um vetor binário de tamanho
m
(número de pontos de demanda) é usado para indi ar se os pontos de demanda estão obertos ou não e umvetor de rotasindi a a one tividade entre osnós.
2. Geração da população ini ial: A população ini ial para o problema de atribuição
depapéisfoi onstruída riandoum onjunto desoluções(vetores
c
). Assoluçõesforam geradas porummétodo onstrutivopar ialmente guloso,emquea ada iteraçãoumnósensorées olhidoparaserativadoeassimsu essivamenteatéqueospontosdedemanda
tenham sido obertos ou não exista nenhum nó quenão viole a one tividade paraser
Figura4.1: Representaçãode umasolução
amelhorrelação usto/benefí ioésele ionado,istoé,nósque onsumammenosenergia
e ubramo maiornúmero depontos dedemanda. Além disso,é ne essáriaaexistên ia
de one tividadeparaestenó,ouseja, arotaégerada onjuntamenteaopro edimento,
sempre bus ando one tar o nóao sensorjáativo que estejamaispróximo aele.
3. Função de Avaliação: Afunção deavaliaçãoouaptidãoadotadafoiaprópria função
objetivo do problema. Assim, umindivíduo (solução) om menor função de avaliação
(gasto de energia) tem maior nível de aptidão do que um om função maior. O não
atendimento de algum ponto de demanda a arreta um a rés imo no valor da função
de avaliação, através de uma penalidade. Assim, é possível privilegiar soluções que
atendam mais pontos. Não foi tratada a questão da sensibilidade da penalidade. O
valordapenalidadepoderiaserreduzido omopassaro tempo,umavezqueosvalores
da função de avaliaçãoda população omo umtodo estarãomaispróximos.
4. Operadores Genéti os: Nesse trabalho, dois tipos de operadores genéti os foram
adotados: mutaçãoe rossover.
Mutação: onsisteemsele ionardoissensoresaleatoriamenteeatribuirnovospapéisa
eles(gura4.2 ). Anovaatribuiçãoétambémaleatória,deformaquepossaseres olhido
qualquer um dos papéis ou até mesmo desativar o sensor. Tal atribuição não garante
a viabilidade da nova solução, isto é, pontos de demanda podem ar des obertos e a
one tividade para todos os sensores pode não existir. Esta operação é realizada em
adasensordea ordo omuma ertaprobabilidade,determinadapelataxademutação.
Crossover: esteoperador,representadonagura4.3 , onstróidois romossomoslhos
ombinandoumasubseqüên iadaatribuição asso iadaaum romossomopaip
1
e uma subseqüên ia da atribuição asso iadaao outro romossomo paip2
. É es olhido aleato- riamente umpontode orte paraos romossomos pais. Oslhos f1
e f2
herdam afaixa antesdo ortedospaisp1
ep2
,respe tivamente,easfaixasdepoisdo ortesãoherdadas de p1
porf2
ede p2
porf1
. Assim omo nopro esso demutação, soluçõesinviáveispo- demsergeradas. Emambosoperadores, nãoérealizadotratamento deviabilidade asosoluçõesinviáveis sejam geradas. Os romossomos pais sãoes olhidosaleatoriamentee
de a ordo om uma erta probabilidade denida pela taxa de rossover, darão origem
a romossomos lhos. O pro esso de rossover é realizado até que a população seja
dobrada.
Figura4.3: Operadorde rossover
5. Pro esso de seleção: A ada iteração, metade da população é sele ionada para so-
breviver na próxima geração. A seleção é realizada através de um pro esso baseado
na aptidão dos indivíduos, no qual soluções mais aptas tem mais han es de serem
sele ionadas, ou seja, aprimeira metade da população permane ena geraçãoseguinte.
6. Denição de parâmetros: Testes experimentais mostram que quanto maior for a
população,melhores serão osresultadosal ançados. Masporoutro lado, quanto maior
apopulação,maioresserãotambémostempos omputa ionais exigidosporiteração. O
que o orre na práti a é a alibragem dos parâmetros de forma empíri a, utilizando o
bomsensoeo onhe imento préviodoproblema. Assim,osvaloresutilizadosforam: 50
indivíduos(tamanho da população),
5
%parataxa demutação,90
% parataxa de ros- sover e número máximo de iteraçõessem melhora variando entre20 e 50, dependendodo tamanho doproblema.
7. Pseudo- ódigo do AG: O algoritmo 4.1 , mostrado a seguir, apresenta o pseudo-
ódigo do algoritmogenéti o apli ado ao problema de atribuição de papéis em RSSF.
O algoritmo re ebe omo parâmetros de entrada a rede para a qual se deseja resolver
o problema, o tamanho da população ini ial, a probabilidade de apli aro operador de
rossover, a probabilidade de apli ar o operador de mutação e o número máximo de
geraçõessem melhora.
Ageraçãodapopulaçãoini ialéfeitaatravésda onstruçãodesu essivassoluçõesgulosas
Algoritmo 4.1: AG-RSSF
Data:
rede, tamP op, taxaCross, taxaM ut, numM axGen
Result:melhorSol
begin 1
for
i←− 1
totamP op
do 2P
.adi iona(criaSolGulosa(.)
); /* geração da população ini ial */ 3melhorSol←− avaliaP opulacao(.)
; /* avaliação da população */ 4while
t < numM axGen
do 5t←− t + 1
; 6aplicaCrossover(taxaCross)
; /* pro esso de rossover */ 7aplicaM utacao(taxaM ut)
; /* pro esso de mutação */ 8melhorSol←− avaliaP opulacao(.)
; /* avaliação da população */ 9if
f oiAlterada(melhorSol)
then 10t←− 0
; 11P
←− selecionaP opulacao(.)
; /* pro esso de seleção */ 12return
melhorSol
; 13end 14
forma que esta a armazenada na variável melhorSol (linha 4). Em seguida, ini ia-se o
pro esso de evolução, respeitando-se o ritério deparada, determinado pelo número máximo
de gerações sem melhora (linha 5). A variável
t
armazena o número de gerações orrente, sendo in rementadaa ada iteração(linha 6) eretornando azero semprequeumamelhoraéobtida. Nalinha7,anovapopulação
P
(t
)é riadaapartirdeP
(t
-1), omodobrodotamanho dapopulaçãoini ial,quein luioslhos riadosatravésdaoperaçãode rossover. Amutaçãoé apli ada a alguns indivíduos da população, de a ordo om a probabilidade estabele ida
(linha 8). Novamente é realizada umaavaliaçãoda população para denir a melhor solução
e osindivíduos sobreviventes. Se a melhorsolução for melhorada, avariável
t
retorna azero (linha 11 ). Assim,a população é reduzida à metade, ou seja, retorna ao seutamanho ini ial(linha 12). Ao nalda exe uçãodo algoritmo, amelhorsolução é retornada (linha 13).
4.3 Considerações Finais
Ummétodoheurísti opararesoluçãodo problemafoiapresentadonesse apítulo, seguindoa
proposta de programaçãoevolutivadosAGs.
O uso de metaheurísti as na resolução de problemas ombinatórios tem omo prin ipal
vantagemo fatode en ontrarsoluçõesfa tíveis emumtempo omputa ionalviável. Embora
aotimalidadedasoluçãonãosejagarantida, taisté ni asvisamgerarsoluções omqualidade
próxima àmesma.
o onjunto desoluçõesatravés deoperadoresgenéti os e,além disso,portrabalhar om uma
grande quantidade de soluções simultaneamente e permitir que operadores mais omplexos
Resultados Computa ionais
Foram realizados um onjunto de testes experimentais, para diferentes enários, a m de
obter umestudo omparativo entre o modelomatemáti o ea heurísti a. Ostestes omputa-
ionais para resolvero problema foram exe utados utilizando um gerador de instân ias, que
é apresentadoa seguir.
5.1 Experimentos
As instân ias foram geradas onsiderando uma disposição aleatória dos nós sensores, em
uma área quadrada. Os nós sorvedouros foram posi ionados nas extremidades da área. Os
pontos de demanda foram dispostos uniformemente em grade na área de monitoramento,
sendoatribuídos papéisaleatóriosa ada umdeles. Foram onsiderados trêspapéis distintos,
om diferentes ustos, dea ordo omseuserviço.
Agura5.1mostra umapossívelrepresentação deumaárea asermonitorada, e adispo-
sição dosnóssensores,sorvedouro e pontosde demanda.
Dois enários foram onsiderados nosexperimentos, onforme apresentado na tabela 5.1.
O primeiro deles mantém a densidade dos sensores,isto é, a áreaaumenta de tamanho seo
número de nós sensores for aumentado. O segundo enário mantém a mesma dimensão da
área, ao aumentar o número de sensores. Ambosos enários onsistem de quatro onjuntos
de 33 instân ias ada. Custos diferentes foram denidos para ada papel, uma vez que eles
ofere em serviços distintos, por exemplo temperatura, áudio e vídeo. Considerando que o
serviço de vídeo impli a em um onsumo de energia muito maior do queum simplesserviço
de mediçãodetemperatura,os ustosforambaseados nostamanhosdospa otes. Alémdisso,
dependendoda distân ia entre doisnós, a potên ia de transmissão podevariar.
Figura 5.1: Representação de uma área de monitoramento mostrando a posição dos nós
sensores, sorvedouroe pontosde demanda
Cenário1 Cenário 2 #de sensores 12 25 51 102 12 25 51 102 #de sorvedouros 4 4 #de pontosde demanda 100 100 #de papéis 3 3 raio de omuni ação (m) 5 5 raio desensoriamento (m) 5 5 área(m) 10x10 15x15 22x22 30x30 10x10 penalidade 10000 10000
Tabela 5.1: Cenários experimentais
os onjuntosdas instân ias onforme denido. Também foram geradas soluçõesviáveis para
as instân ias via o algoritmogenéti o proposto no apítulo 4. Em ambos os asos, ostestes
foramexe utadossobosistemaopera ionalLinux,emummi ro omputador ompro essador
Pentium 4de 2.40GHz e 1GBde memória RAM.
Astabelas A.1, A.2, A.3 e A.4, presentes no apêndi e A,apresentam osdados referentes
às 33 instân ias de 12, 25, 51 e 102 nós do enário 1, respe tivamente, enquanto as tabelas
A.5,A.6, A.7eA.8apresentamosdadosreferentesao enário2paraessasmesmasinstân ias.
Para ada método são apresentados o tempo omputa ional em segundos, o número de
nós ativos,o número de pontos des obertos e a função objetivo emmAms, orrespondenteà
5.2 Gerador de arquivo
O gerador de arquivos para representar as instân ias do problema re ebe um onjunto de
parâmetros de entrada e retorna um arquivo de saída que representa o modelo matemáti o
orrespondente.
Osparâmetrosdeentrada orrespondema ara terísti as de onguração onformesegue:
•
número e oordenadas dosnóssensores•
número e oordenadas dosnóssorvedouros•
número dospontosde demanda•
raio de omuni ação•
raio de sensoriamento•
dimensão daárea•
número eespe i ação dospapéis•
apa idade de energia dosnóssensores•
usto de não obertura de umponto dedemanda•
ustosde energia de ativação emanutenção dossensores dea ordo omospapéis•
ustosde energia de roteamento de a ordo om ospapéisAsaídadogerador onsistedeumarquivoquerepresentaomodeloapresentadono apítulo
3,dea ordo omosparâmetrosforne idos. Osmesmosparâmetrosdeentradaforamutilizados
para resolvero problemavia AG.