• Nenhum resultado encontrado

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íduo

p

t

i

,

1 ≤ i ≤ n

,representa umasolução do problema asso iado. A ada iteração

t

,existe umme anismoquepermite arenovaçãoda população,obtendo-se

P(t)

apartirde

P(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ção

c

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 um

vetor 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 paip

2

. É es olhido aleato- riamente umpontode orte paraos romossomos pais. Oslhos f

1

e f

2

herdam afaixa antesdo ortedospaisp

1

ep

2

,respe tivamente,easfaixasdepoisdo ortesãoherdadas de p

1

porf

2

ede p

2

porf

1

. Assim omo nopro esso demutação, soluçõesinviáveispo- demsergeradas. Emambosoperadores, nãoérealizadotratamento deviabilidade aso

soluçõ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, dependendo

do 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

to

tamP op

do 2

P

.adi iona(

criaSolGulosa(.)

); /* geração da população ini ial */ 3

melhorSol←− avaliaP opulacao(.)

; /* avaliação da população */ 4

while

t < numM axGen

do 5

t←− t + 1

; 6

aplicaCrossover(taxaCross)

; /* pro esso de rossover */ 7

aplicaM utacao(taxaM ut)

; /* pro esso de mutação */ 8

melhorSol←− avaliaP opulacao(.)

; /* avaliação da população */ 9

if

f oiAlterada(melhorSol)

then 10

t←− 0

; 11

P

←− selecionaP opulacao(.)

; /* pro esso de seleção */ 12

return

melhorSol

; 13

end 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

)é riadaapartirde

P

(

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éis

Asaídadogerador onsistedeumarquivoquerepresentaomodeloapresentadono apítulo

3,dea ordo omosparâmetrosforne idos. Osmesmosparâmetrosdeentradaforamutilizados

para resolvero problemavia AG.

Documentos relacionados