D080-IvanReinaldoMeneghini

117
Centro Federal de Educac ¸˜ ao Tecnol´ ogica de Minas Gerais Programa de P´ os-Graduac ¸˜ ao Modelagem Matem´ atica e Computacional Um operador de Busca Local para o Algoritmo Gen´ etico com restri¸c˜ oes de igualdade utilizando Decomposi¸c˜ ao de Adomian Ivan Reinaldo Meneghini Texto de mestrado submetido `a Banca Exami- nadora designada pelo Colegiado do Programa deP´os-Gradua¸ ao em Modelagem Matem´atica Computacional do Centro Federal de Educa¸c˜ ao Tecnol´ ogica de Minas Gerais, como requisito fi- nal para obten¸c˜ ao do t´ ıtulo de Mestre. Orientador: Prof. Fausto de Camargo J´ unior Co-orientador: Profa. Elizabeth Fialho Wanner Belo Horizonte, 4 de julho de 2010

description

ok

Transcript of D080-IvanReinaldoMeneghini

  • Centro Federal de Educac~ao Tecnologica de Minas Gerais

    Programa de Pos-Graduac~ao Modelagem Matematica e

    Computacional

    Um operador de Busca Local para o Algoritmo

    Genetico com restric~oes de igualdade utilizando

    Decomposic~ao de Adomian

    Ivan Reinaldo Meneghini

    Texto de mestrado submetido a Banca Exami-

    nadora designada pelo Colegiado do Programa

    de Pos-Graduac~ao em Modelagem Matematica

    Computacional do Centro Federal de Educac~ao

    Tecnologica de Minas Gerais, como requisito -

    nal para obtenc~ao do ttulo de Mestre.

    Orientador: Prof. Fausto de Camargo Junior

    Co-orientador: Profa. Elizabeth Fialho Wanner

    Belo Horizonte, 4 de julho de 2010

  • ...\ os pensamentos postos em papel n~ao passam, em

    geral, de um vestgio deixado na areia por um passante:

    ve^-se bem o caminho que ele tomou, mas para saber o

    que ele viu durante o caminho e preciso usar os proprios

    olhos."

    Schopenhauer

    Aos meus pais e amigos.

  • Agradecimentos

    Inicialmente gostaria de agradecer aos meus orientadores, Fausto e Beth.

    Durante este tempo em que trabalhamos juntos muita coisa aconteceu e

    aprendi muito. Obrigado pela dedicac~ao, pacie^ncia, pelas palavras de incen-

    tivo e pelos \pux~oes de orelha". Em particular, acredito ter uma grata dvida

    eterna com a Beth, por ter acreditado e investido neste projeto, e espero que

    este seja o incio de uma nova e longa jornada. Gostaria tambem de agradecer

    aos demais professores e colegas do curso, pela dedicac~ao e amizade.

    Devo muito tambem ao Marcelo, meu maninho, que sempre me acolhe em

    sua casa no Rio e em meio a cerveja e longas conversas, os misterios do mundo

    se tornam menos misteriosos. Um boa parte deste trabalho foi feito ao seu

    lado e lhe devo muito por isto. Ao grande amigo Jurandir, que estando perto

    ou longe, esta sempre presente (ainda vamos a Ushuaia, certo?). Ao Eder,

    que um dia me apareceu com um artigo em m~aos, me perguntando o que

    eu achava. A resposta esta nas paginas seguintes. A minha irm~a Glasiela,

    por estar ao meu lado em um momento t~ao importante. E principalmente a

    Deus, por tudo.

  • Resumo

    Este trabalho trata da utilizac~ao de metodos de continuac~ao para a ob-

    tenc~ao da soluc~ao da equac~ao F (x) = 0 e prop~oe a utilizac~ao de tais tecnicas

    em um operador de busca local para o Algoritmo Genetico com uma restric~ao

    de igualdade. A equac~ao F (x) = 0 e denida pela aplicac~ao F : D ! Rn comn 1, contnua e sucientemente diferenciavel em algum domnioD Rn. Ooperador de busca local proposto, aplicado em um Algoritmo Genetico basico

    de codicac~ao real, se aplica a problema de minimizac~ao mono-objetivo da

    forma

    x? = argmin f(x)

    sujeito a: g(x) = 0

    .

    Palavras chave: Analise numerica, metodos de continuac~ao, Algoritmo

    Genetico hbrido.

  • Abstract

    This work deals with the usage of continuation methods for obtaining the

    solution of the equation F (x) = 0 and it proposes the usage of such techniques

    inside a local search operator for Genetic Algorithms, when applied to iguality

    constrained optimization problems. The equation F (x) = 0 is dened by the

    mapping F : D ! Rn, n 1, in which F is continuous and diferenciable ina certain domain D Rn. The proposed local search operator, coupled witha basic real-coded Genetic Algorithm, handles whith dierenciable equality

    constrained mono-objective optimization problems of the form

    x? = argmin f(x)

    subject to: g(x) = 0

    .

    Keywords: Numerical analysis, continuation methods, Hybrid Genetic

    Algorithm.

  • Sumario

    1 Introduc~ao 12

    2 Metodos numericos para determinac~ao de razes de equac~oes 15

    2.1 Busca por Intervalos . . . . . . . . . . . . . . . . . . . . . . . 16

    2.2 Iterac~ao de Ponto Fixo . . . . . . . . . . . . . . . . . . . . . . 17

    2.3 Metodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . 18

    2.4 Metodos Quasi-Newton . . . . . . . . . . . . . . . . . . . . . . 22

    2.5 Metodos de Continuac~ao . . . . . . . . . . . . . . . . . . . . . 23

    2.5.1 Metodo de Continuac~ao Finito . . . . . . . . . . . . . . 24

    2.5.2 Metodos de Continuac~ao baseados em um problema

    diferencial . . . . . . . . . . . . . . . . . . . . . . . . . 25

    2.5.3 Metodo da Perturbac~ao da Homotopia . . . . . . . . . 27

    2.5.4 Decomposic~ao de Adomian . . . . . . . . . . . . . . . . 30

    3 Metaheursticas para resoluc~ao de problemas de otimizac~ao

    n~ao linear 37

    3.1 Introduc~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    3.2 Algoritmos Evolucionarios . . . . . . . . . . . . . . . . . . . . 40

    5

  • 3.3 Operadores de um AG . . . . . . . . . . . . . . . . . . . . . . 44

    3.3.1 Func~ao Objetivo e de Aptid~ao . . . . . . . . . . . . . . 45

    3.3.2 Selec~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    3.3.3 Recombinac~ao . . . . . . . . . . . . . . . . . . . . . . . 48

    3.3.4 Mutac~ao . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    3.3.5 Reinserc~ao . . . . . . . . . . . . . . . . . . . . . . . . . 54

    4 Um operador de Busca Local para o AG 55

    4.1 Desenvolvimento . . . . . . . . . . . . . . . . . . . . . . . . . 57

    5 Experimentos Numericos 60

    5.1 Resoluc~ao de equac~oes . . . . . . . . . . . . . . . . . . . . . . 61

    5.1.1 Equac~oes denidas por func~oes de uma variavel . . . . 61

    5.1.2 Aplicac~oes em Rn . . . . . . . . . . . . . . . . . . . . . 65

    5.2 Operador de Busca Local . . . . . . . . . . . . . . . . . . . . . 69

    6 Conclus~oes e trabalhos futuros 83

    6.1 Conclus~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

    6.2 Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . 85

    A Denic~oes 91

    A.1 Topologia e Analise Matematica . . . . . . . . . . . . . . . . . 91

    A.2 Algoritmos e Converge^ncia . . . . . . . . . . . . . . . . . . . . 97

    B Aproximac~oes Quadraticas 101

    B.1 Obtenc~ao da Aproximac~ao Quadratica . . . . . . . . . . . . . 103

    6

  • C Implementac~oes em MATLAB 106

    C.1 MPH e ADM - func~ao f1 . . . . . . . . . . . . . . . . . . . . . 106

    C.2 ADM - aplicac~ao F1 . . . . . . . . . . . . . . . . . . . . . . . . 110

    C.3 Busca local - problema P1 . . . . . . . . . . . . . . . . . . . . 112

    7

  • Lista de Figuras

    2.1 Iterac~oes do Metodo de Newton . . . . . . . . . . . . . . . . . 21

    3.1 Escolha de 4 indivduos utilizando SUS . . . . . . . . . . . . . 47

    3.2 Recombinac~ao multiponto com i 2 f2; 7g . . . . . . . . . . . . 493.3 Recombinac~ao uniforme . . . . . . . . . . . . . . . . . . . . . 49

    3.4 Recombinac~ao real convexa . . . . . . . . . . . . . . . . . . . 50

    3.5 Recombinac~ao real convexa com extrapolac~ao . . . . . . . . . 51

    3.6 Recombinac~ao real convexa generalizada . . . . . . . . . . . . 52

    3.7 Mutac~ao do quarto gen . . . . . . . . . . . . . . . . . . . . . . 54

    4.1 Ajuste de x na coordenada ej . . . . . . . . . . . . . . . . . . 59

    5.1 Resultado problema P1 . . . . . . . . . . . . . . . . . . . . . . 71

    5.2 Resultado problema P2 . . . . . . . . . . . . . . . . . . . . . . 72

    5.3 Resultado problema P3 . . . . . . . . . . . . . . . . . . . . . . 73

    5.4 Resultado problema P4 . . . . . . . . . . . . . . . . . . . . . . 74

    5.5 Resultado problema P5 . . . . . . . . . . . . . . . . . . . . . . 75

    5.6 Resultado problema P6 . . . . . . . . . . . . . . . . . . . . . . 76

    5.7 Resultado problema P7 . . . . . . . . . . . . . . . . . . . . . . 77

    5.8 Resultado problema P8 . . . . . . . . . . . . . . . . . . . . . . 78

    8

  • 5.9 Resultado problema P9 . . . . . . . . . . . . . . . . . . . . . . 79

    9

  • Lista de Tabelas

    3.1 Estrutura padr~ao de um Algoritmo Genetico . . . . . . . . . . 45

    4.1 Operador de busca local em um AG . . . . . . . . . . . . . . . 58

    5.1 Func~oes teste de uma variavel . . . . . . . . . . . . . . . . . . 62

    5.2 Func~ao f1; x0 = 0:35; jxn xn1j < 1050 . . . . . . . . . 625.3 Func~ao f2; x0 = 1; jxn xn1j < 1050 . . . . . . . . . . . . 625.4 Func~ao f3; x0 = 1; jxn xn1j < 1050 . . . . . . . . . . . . 635.5 Func~ao f4; x0 = 1:7; jxn xn1j < 1050 . . . . . . . . . . . 635.6 Func~ao f5; x0 = 0:2; jxn xn1j < 1050 . . . . . . . . . . 635.7 Func~ao f6; x0 = 10; jxn xn1j < 1050 . . . . . . . . . . . 635.8 Func~ao f7; x0 = 4; jxn xn1j < 1050 . . . . . . . . . . . . 645.9 Func~ao f8; x0 = 2; jxn xn1j < 1050 . . . . . . . . . . . . 645.10 Aplicac~oes utilizadas nos experimentos e aproximac~oes iniciais

    x0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

    5.11 Aplicac~ao F1; x0 = (0:1; 0:1;0:1)0; jxn xn+1j1 < 1015 . . 665.12 Aplicac~ao F1; x0 = (0:1; 0:1;0:1)0; jxn xn+1j1 < 1020 . . 665.13 Aplicac~ao F2; x0 = (1;2; 1)0; jxn xn+1j1 < 1015 . . . . 665.14 Aplicac~ao F2; x0 = (1;2; 1)0; jxn xn+1j1 < 1020 . . . . 67

    10

  • 5.15 Aplicac~ao F3; x0 = (0; 0; 0)0; jxn xn+1j1 < 1015 . . . . . . 67

    5.16 Aplicac~ao F3; x0 = (0; 0; 0)0; jxn xn+1j1 < 1020 . . . . . . 67

    5.17 Para^metros utilizados no AG . . . . . . . . . . . . . . . . . . . 70

    5.18 Tempo medio de execuc~ao do problema P1 . . . . . . . . . . . 80

    5.19 Resultados para o problema P1 . . . . . . . . . . . . . . . . . 81

    5.20 Resultados para o problema P3 . . . . . . . . . . . . . . . . . 81

    5.21 Resultados para o problema P4 . . . . . . . . . . . . . . . . . 82

    B.1 AG com busca local aplicado a um problema do tipo Caixa

    Preta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

    11

  • Captulo 1

    Introduc~ao

    A soluc~ao de equac~oes da forma F (x) = 0 e um problema antigo e

    basico em varias areas do conhecimento. Algumas equac~oes possuem formas

    analticas de resoluc~ao, como os polino^mios de grau ate quatro por exemplo,

    mas dada a grande diversidade e especicidade dos problemas traduzidos por

    meio de uma equac~ao, estes casos se tornam mais excec~ao do que regra. Con-

    trapondo as tecnicas analticas temos os metodos numericos. Historicamente

    t~ao antigos quanto as tecnicas analticas, os metodos numericos de resoluc~ao

    de equac~oes sempre foram um importante objeto de estudo e aliado das prin-

    cipais evoluc~oes tecnologicas existentes. Com o advento e a popularizac~ao

    da computac~ao, a utilizac~ao e a pesquisa de tais tecnicas se tornaram mais

    intensiva, contribuindo sobremaneira com o desenvolvimento cientco atual.

    A minimizac~ao de func~oes, ou problemas de otimizac~ao, consiste em de-

    terminar o valor de x? que minimiza alguma func~ao f(x), sujeita ou n~ao a

    algum tipo de restric~ao em seu domnio. O metodo simplex [1], dos mul-

    tiplicadores de Lagrange e do gradiente conjugado [2, 3] s~ao exemplos de

    12

  • metodologias aplicadas a este tipo de problema, que utilizam informac~oes

    diretas da func~ao, das restric~oes de domnio e/ou de suas derivadas para a

    determinac~ao do valor otimo do problema. Quando estas informac~oes n~ao s~ao

    disponveis ou n~ao s~ao de facil obtenc~ao, o problema de minimizac~ao pode ser

    resolvido pela aplicac~ao de uma metaheuristica [4]. Uma eciente classe de

    metaheuristicas de busca e o Algoritmo Genetico [5]. Inspirado em processos

    de selec~ao e evoluc~ao propostos por Darwin, o Algoritmo Genetico se aplica

    a diversos tipos de problemas, onde as func~oes podem ser diferenciaveis,

    contnuas, discretas ou mesmo sem uma express~ao analtica que as denam e

    contituem um importante objeto de pesquisa, sendo alvo de constante apri-

    moramento [2, 6]. Inicialmente desenvolvido para problemas irrestritos, um

    algoritmo genetico tambem e aplicado em problemas que apresentam algum

    tipo de restric~ao no domnio da func~ao de interesse [7, 2], usualmente uti-

    lizando uma func~ao de penalidade. A aplicac~ao de um algoritmo genetico

    em problemas com restric~oes de igualdade foi descrito em [7], de modo que

    o algoritmo de busca local proposto encontra a soluc~ao para o problema de

    forma eciente e precisa. O presente trabalho prop~oe uma abordagem alter-

    nativa para o tratamento de restric~oes de igualdade, introduzindo um novo

    operador de busca local que aumenta a taxa de converge^ncia na busca de

    soluc~oes que atendam a este tipo de restric~ao.

    O trabalho esta dividido da seguinte forma: no captulo 2 faremos uma

    breve introduc~ao sobre algumas tecnicas de resoluc~ao de equac~oes. Dos

    metodos analisados, daremos destaque a dois metodos recentemente desenvol-

    vidos e classicados como metodos de continuac~ao: o Metodo da Perturbac~ao

    da Homotopia e o Metodo da Decomposic~ao de Adomian. Criados de forma

    13

  • independente, estes se aplicam tambem a resoluc~ao de equac~oes diferenciais

    ordinarias e parciais e tambem de equac~oes integrais. No captulo 3 faremos

    uma breve apresentac~ao de alguns algoritmos evolucionarios, com destaque

    para o Algoritmo Genetico. Em seguida, no captulo 4, apresentaremos um

    mecanismo de busca local utilizando o metodo da decomposic~ao de Adomian.

    Este sera aplicado no Algoritmo Genetico em problemas de minimizac~ao com

    restric~oes de igualdade. Experimentos numericos utilizando os metodos de

    continuac~ao descritos no captulo 2 e o mecanismo de busca local desenvolvido

    no captulo 4 s~ao apresentados no captulo 5 em diversos tipos de problemas,

    com caractersticas distintas e diferentes graus de diculdade. O ape^ndice A

    faz uma revis~ao de topicos matematicos e computacionais presentes em todo

    o texto. O ape^ndice B trata das aproximac~oes quadraticas de uma func~ao,

    uma metodologia que permite a aplicac~ao do Algoritmo Genetico hibrido

    proposto em problemas onde n~ao se disp~oe de uma express~ao algebrica para

    a func~ao de interesse ou esta e de difcil obtenc~ao. Os codigos referentes aos

    experimentos numericos realizados s~ao apresentados no ape^ndice C.

    14

  • Captulo 2

    Metodos numericos para

    determinac~ao de razes de

    equac~oes

    Neste captulo iremos abordar os metodos numericos de obtenc~ao da

    soluc~ao x? da equac~ao f(x) = 0 onde f : Rn ! Rn com n = 1; 2; k euma func~ao de classe Ck; k 0. Dos metodos listados a seguir, apenaso metodo de busca por intervalos n~ao exige a diferenciabilidade da func~ao

    f(x). Nos demais, exige-se que a func~ao considerada seja sucientemente di-

    ferenciavel, ou seja, tenha derivadas contnuas ate uma determinada ordem,

    em geral dada pela ordem da expans~ao em serie de Taylor da func~ao consi-

    derada. Como e de se esperar, a ecie^ncia do metodo e proporcional a sua

    sosticac~ao e o tipo de informac~ao que se pode extrair da func~ao de estudo.

    15

  • 2.1 Busca por Intervalos

    Seja f : I R! R uma func~ao contnua com I = [a; b]. Se f(a)f(b) < 0ent~ao, pelo teorema do valor intermediario, sabemos que existe x? 2 I talque f(x?) = 0 [8]. O metodo de busca por intervalos, ou metodo da bissec~ao,

    consiste na determinac~ao de uma seque^ncia de intervalos encaixantes In =

    [an; bn] contendo x?, com In+1 In, ate que uma das condic~oes seja satisfeita:

    jf(an)j ou jf(bn)j

    bn an (2.1)

    O metodo da bissec~ao consiste em se dividir sucessivamente o intervalo

    de busca em duas partes iguais e tomar aquela parte que contem x?. Desta

    maneira, a partir do intervalo In = [an; bn], consideramos o ponto medio

    cn =bnan

    2. Ent~ao

    Se f(an) f(cn) < 0 faca

    i) an+1 = an;

    ii) bn+1 = cn;

    iii) In+1 = [an+1; bn+1].

    Caso contrario, se f(an) f(cn) > 0, faca

    i) bn+1 = bn;

    ii) an+1 = cn;

    iii) In+1 = [an+1; bn+1].

    16

  • e repetimos o procedimento acima ate que uma das condic~oes descritas em

    (2.1) sejam satisfeitas. Naturalmente, e necessario que no intervalo inicial

    considerado a func~ao tenha paridade oposta nos.

    Por se tratar de um metodo bem simples, este apresenta uma converge^ncia

    muito lenta. Como o tamanho do intervalo e multiplicado por 12a cada

    iterac~ao, na iterac~ao n temos que

    bn an = b a2n

    :

    Da, se x? e uma soluc~ao e xn 2 [an; bn] ent~ao jx?xnj ba2n e a seque^nciaxn converge para x

    ? com uma ordem de converge^ncia O

    1n2

    . Uma outra

    decie^ncia deste metodo e que no intervalo [a; b] que contem a soluc~ao x? de

    f(x) = 0, devemos ter que f(a) f(b) < 0 e portanto o metodo falha em casosbem simples, como por exemplo f(x) = x2 no intervalo [1; 1].

    2.2 Iterac~ao de Ponto Fixo

    Denic~ao 2.2.1 (Ponto Fixo) Uma aplicac~ao G : D Rn ! Rn tem umponto xo p 2 D; se G(p) = p

    O problema de se determinar x? tal que F (x?) = 0 pode ser convertido

    em um problema de determinac~ao de ponto xo, bastando denir G(x) = xF (x). Reciprocamente, se G(x) tem um ponto xo p, ent~ao F (x) = xG(x)tem uma raiz em x = p.

    Teorema 2.2.2 (Contrac~ao) Suponha que F : Rn ! Rn seja uma con-trac~ao em um conjunto fechado D Rn tal que F (D) D. Ent~ao F tem

    17

  • um unico ponto xo p 2 D e para qualquer x0 2 D, a iterac~ao

    xn+1 = F (xn); (2.2)

    converge para p. Alem disto,

    jxn pj (1 )1jxn xn1j;

    onde e a constante de contrac~ao denida em (A.1.8).

    A demonstrac~ao deste teorema se encontra em [9]. Da, se

    G(x) = x F (x) e uma contrac~ao ent~ao e possvel se determinar uma raizde F (x).

    2.3 Metodo de Newton

    O metodo de Newton e o mais conhecido e utilizado metodo iterativo para

    se determinar uma soluc~ao da equac~ao f(x) = 0 onde f : Rn ! Rn; n 1e uma func~ao de classe C1. Isto e devido a sua simplicidade, ecie^ncia e

    elega^ncia. Com uma clara interpretac~ao geometrica, pode ser deduzido de

    diversas maneiras diferentes e varios metodos mais sosticados o apresentam

    como caso particular. Apresentaremos a seguir uma das maneiras de se obter

    a forma geral de sua iterac~ao.

    Suponha, que para a aplicac~ao diferenciavel F : D Rn ! Rn, existax? 2 Rn tal que F (x?) = 0 e F 0(x?) > 0. Fazendo a + v = x? na expans~aoem serie de Taylor de F (x), a saber

    18

  • F (a+ v) = F (a) + F 0(a) v + 12F 00(a) v2 + + 1

    p!F (p) vp + rp(v); (2.3)

    e truncando na derivada de ordem 1 encontramos

    0 = F (x?) = F (a) + F 0(a) (x? a) + r1(x? a);

    onde r1(x? a) e o resto em v = x? a. Considerando x proximo de x? e

    negligenciando r1(x? a) obtemos

    0 F (x) = F (a) + F 0(a) (x a)

    e ent~ao,

    0 F (a) + F 0(a) (x a)

    F 0(a) (x a) F (a)

    x a (F 0(a))1 F (a)

    x a (F 0(a))1 F (a):

    A ultima relac~ao acima induz o metodo iterativo dado por

    xn+1 = xn (F 0(xn))1 F (xn) (2.4)

    19

  • A iterac~ao acima dene o metodo conhecido como Metodo de Newton ou

    Metodo de Newton-Raphson para se aproximar, com uma precis~ao dada, uma

    raiz de F (x). Em [9], encontramos a demonstrac~ao de que o Metodo de

    Newton apresenta converge^ncia quadratica se f(x0)f 00(x0) > 0. Modicac~oesdeste metodo surgem a todo momento na busca da melhoria de sua taxa de

    converge^ncia. Observe que, para func~oes de uma variavel, denindo

    g(xn1) = xn1 f(xn1)f 0(xn1)

    para n 1; (2.5)

    o Metodo de Newton se reduz a iterac~ao de ponto xo xn = g(xn1).

    Geometricamente (gura 2.1), no caso unidimensional quando passamos

    da iterac~ao xk1 para a iterac~ao xk, a func~ao f(x) e aproximada pela func~ao

    am

    f 0(xk)(x xk) + f(xk) = y; (2.6)

    que representa a equac~ao da reta tangente ao graco de f(x) no ponto

    (xk; f(xk)), cuja raiz (em x) e o ponto xk+1. A seque^ncia das iterac~oes

    convergem, segundo o criterio de parada, para a soluc~ao x? de f(x) = 0 .

    Uma desvantagem deste metodo e a exige^ncia de uma boa aproximac~ao

    inicial. Uma outra desvantagem reside no fato de que em cada iterac~ao se faz

    necessario o calculo da matriz jacobiana e de sua inversa, o que exige grande

    esforco computacional alem de erros de arredondamento, exceto quando a

    dimens~ao do problema n~ao e muito grande e as func~oes envolvidas s~ao rela-

    tivamente simples.

    Na pratica, podemos determinar numericamente a matriz jacobiana uti-

    20

  • Figura 2.1: Iterac~oes do Metodo de Newton

    lizando diferencas nitas:

    @fj@xk

    (xi) =fj(xi + ekh) f(xi)

    h(2.7)

    com jhj pequeno (h 2 R) e sendo ek o k-esimo vetor da base cano^nica. Ja ocalculo do inverso da matriz jacobiana pode ser evitado utilizando o seguinte

    forma:

    1. Determine o vetor y tal que (F 0(xk1)) y = F (xk1);2. Faca xk = xk1 + y.

    Este procedimento reduz o tempo computacional gasto pois a resoluc~ao

    de um sistema de equac~oes lineares tem um custo computacional menor do

    que o processo de invers~ao de uma matriz.

    21

  • 2.4 Metodos Quasi-Newton

    A modicac~ao do metodo de Newton proposta em (2.7) inspira os cha-

    mados Metodos Quasi-Newton, tambem chamados de Metodo de Newton

    Discretizado [10, 11, 3]. Por apresentarem uma taxa de converge^ncia mais

    lenta, a aplicac~ao de tais metodos se justica nos casos onde a determinac~ao

    da derivada (ou do jacobiano) da func~ao de interesse, bem como de sua in-

    versa, tem um custo computacional alto ou mesmo e impossvel de ser obtida.

    Para o caso unidimensional, a equac~ao (2.7) se resume a:

    xn+1 = xn f(xn + hn) f(xn)

    hn

    1f(xn) para n = 0; 1; (2.8)

    Dois casos especiais da equac~ao (2.8) s~ao o Regula Falsi, cuja iterac~ao e

    dada por

    xn+1 = xn f(x) f(xn))

    x xn

    1f(xn) para n = 0; 1; (2.9)

    onde hn = x xn para algum x xo, e o metodo da secante, cuja iterac~ao edada por

    xn+1 = xn f(xn1) f(xn))

    xn1 xn

    1f(xn) para n = 0; 1; (2.10)

    onde hn = xn1 xn.Para o caso de dimens~ao n, muitas s~ao as generalizac~oes de (2.7), produ-

    22

  • zindo os chamados metodos de atualizac~ao de secante de alterac~ao mnima

    [10, 8]. Em particular, no metodo de Broyden [12], a matriz jacobiana J(x)

    utilizada no metodo de Newton e substituda a partir da segunda iterac~ao

    por uma matriz Ai denida da seguinte maneira:

    A1 = J(x0) +[F (x1) F (x0) J(x0)(x1 x0)] (x1 x0)t

    jx1 x0j2 (2.11)

    Ai = Ai1 +yi Ai1s1

    jsij2 sti (2.12)

    onde

    yi = F (xi) F (xi1)

    si = xi xi1

    E cada iterac~ao do metodo de Broyden e dada por

    xn+1 = xn A1n F (xn) (2.13)

    2.5 Metodos de Continuac~ao

    Os metodos de Busca Unidimensional por Intervalos procuram uma soluc~ao

    de f(x) = 0 criando uma seque^ncia de intervalos encaixados In+1 In con-tendo uma soluc~ao x?. Os metodos de Newton e suas variac~oes buscam

    a soluc~ao de F (x) = 0 utilizando informac~oes da propria aplicac~ao F (x)

    ou de suas derivadas (ou mesmo de aproximac~oes de F 0(x)), criando uma

    23

  • seque^ncia de pontos no domnio de F (x) convergindo para a soluc~ao x?.

    Nesta sec~ao, discutiremos uma terceira categoria de metodos, chamada de

    Metodos de Continuac~ao (ver[13, 14]), que buscam a soluc~ao de F (x) = 0,

    com F : D Rn ! Rn, utilizando uma seque^ncia de pontos denidaem uma curva C : R ! Rn obtida por meio da aplicac~ao da homotopiaH : [0; 1]Rn ! Rn, dada por

    H(t; x) = tF (x) + (1 t)G(x); (2.14)

    entre a func~ao objetivo F e uma outra aplicac~ao G, onde o valor de x? 2 Rn,tal que G(x?) = 0 e conhecido ou de facil obtenc~ao.

    2.5.1 Metodo de Continuac~ao Finito

    Seja

    G(x) = F (x) F (x0); (2.15)

    sendo x0 uma aproximac~ao inicial para a obtenc~ao da soluc~ao de F (x) = 0.

    Desta maneira (2.14) pode ser reescrito como

    H(t; x) = F (x) + (1 t)F (x0): (2.16)

    Considere agora a equac~ao H(t; x) = 0 com t 2 [0; 1] e suponha que paracada t 2 [0; 1] uma soluc~ao x?t = x?(t) de H(t; x) = 0 possa ser obtida poralgum metodo sequencial e que a aplicac~ao H(t; x?(t)) seja contnua em t.

    Como H(1; x) = F (x), ent~ao x?(1) = x? e uma soluc~ao de F (x). Para isto,

    24

  • devemos determinar a seque^ncia de pontos fx?n(t)g na curva C : R! D Rn

    denida por C(t) = H(t; x?(t)). Considere uma partic~ao

    P = f0 = t0; t1; ; tp = 1g

    do intervalo [0; 1] e x0 2 Rn uma aproximac~ao qualquer da soluc~ao x? deF (x). Para cada ponto ti de P aplicamos o metodo de Newton para de-terminarmos a soluc~ao x?i da equac~ao H(ti; x) = 0. Para o primeiro ponto

    t0 = 0 de P , tomamos uma aproximac~ao inicial x0 e para cada equac~aoH(tk; x) = 0 utilizamos como aproximac~ao inicial a soluc~ao x

    ?k1 obtida an-

    teriormente. Repetindo este processo p vezes para todo i = 0; 1; p 1obtemos x?(1) = x? que e uma soluc~ao de F (x).

    Este metodo e ideal quando n~ao dispomos de uma boa aproximac~ao inicial

    x0 para a soluc~ao x? de F (x), porem tem um custo computacional alto devido

    as diversas vezes em que o Metodo de Newton e aplicado.

    2.5.2 Metodos de Continuac~ao baseados em um pro-

    blema diferencial

    Novamente, queremos determinar uma seque^ncia de pontos fx?n(t)g nacurva C : R ! D Rn, com 0 = t1; ; tm = 1. Tomando a derivada deH(t; x(t)) = 0 em relac~ao a t encontramos

    0 =@H(t; x(t))

    @t+@H(t; x(t))

    @xx0(t):

    Resolvendo esta equac~ao para x0(t), obtemos

    25

  • x0(t) = @H(t; x(t))

    @t

    1@H(t; x(t))

    @t;

    um sistema de equac~oes diferenciais com condic~ao inicial x(0) = x0 que pode

    ser resolvido utilizando algum metodo numerico conhecido, como o Runge

    Kutta, por exemplo. Em [12] ha uma descric~ao detalhada do algoritmo e

    exemplos.

    Nas proximas sec~oes abordaremos dois metodos de continuac~ao: OMetodo

    da Perturbac~ao da Homotopia (MPH) e o Metodo da Decomposic~ao de

    Adomian (MDA). Tais metodos surgiram de forma independente e s~ao apli-

    cadas a resoluc~ao dos mais diversos tipos de equac~ao (algebricas, diferenciais

    ordinarias, diferenciais parciais, integrais etc) e na refere^ncia [15] e demons-

    trada a equivale^ncia entre estas duas tecnicas. Cada tecnica, a seu modo,

    considera a representac~ao da soluc~ao x? de uma equac~ao f(x) = 0, onde f(x)

    e uma func~ao real de variavel real sucientemente diferenciavel, como uma

    serie

    x? = x0 + tx1 + t2x2 + t

    3x3 +

    Em particular, o MDA faz t = 1 e introduz uma representac~ao para a

    func~ao f(x) como soma de polino^mios (polino^mios de Adomian) enquanto

    que o MPH trunca a serie acima em uma determinada ordem e determina

    explicitamente uma formula fechada para suas somas parciais.

    26

  • 2.5.3 Metodo da Perturbac~ao da Homotopia

    O Metodo da Perturbac~ao da Homotopia (MPH), proposto por He [16]

    encontra a soluc~ao de uma equac~ao algebrica n~ao linear de uma variavel

    real f(x) = 0. Este metodo e inspirado no trabalho de Nayfeh que, em

    [17], considera a aproximac~ao da soluc~ao de uma equac~ao algebrica cuja

    variavel depende de um para^metro . Tal tecnica e chamada de Perturbac~ao

    do Para^metro (Parameter Perturbation). O metodo proposto por He aplica

    esta tecnica na homotopia

    H(t; x) = tf(x) + (1 t)g(x); x 2 R; t 2 [0; 1] (2.17)

    onde f : R ! R e a func~ao de interesse e g : R ! R e uma func~ao ainda adeterminar. Note que H(0; x) = g(x); H(1; x) = f(x) e portanto H(t; x) = 0

    pode ser considerada uma equac~ao cuja variavel x depende de um para^metro t

    (pequeno) e a tecnica da perturbac~ao do para^metro pode ser aplicada. Assim

    como em [17], supomos que a soluc~ao de H(t; x) = 0 pode ser expressa como

    uma serie de pote^ncias em t:

    x = x0 + tx1 + t2x2 + t

    3x3 + (2.18)

    Fazendo t! 1 encontramos

    x? = x0 + x1 + x2 + x3 +

    e portanto H(t; x) = 0 implica que H(1; x?) = 0. Como H(1; x) = f(x) segue

    que x? e uma soluc~ao de f(x).

    27

  • Considerando x0 uma soluc~ao conhecida de g(x), a representac~ao em serie

    pote^ncias de x dada por (2.18) e a expans~ao em serie de Taylor em torno de

    x0 das func~oes f(x) e g(x), obtemos

    f(x) = f(x0) + f0(x0)(tx1 + t2x2 + )

    +1

    2!f 00(x0)(tx1 + t2x2 + )2 + (2.19)

    g(x) = g(x0) + g0(x0)(tx1 + t2x2 + )

    +1

    2!g00(x0)(tx1 + t2x2 + )2 + (2.20)

    Substituindo (2.19) e (2.20) em H(t; x) = 0 e igualando os coecientes de

    mesma pote^ncia em t, obtemos

    t : g0(x0)x1 + f(x0) g(x0) = 0

    t2 : g0(x0)x2 + [f 0(x0) g0(x0)]x1 + 12g00(x0)x21 = 0 (2.21)

    t3 : g0(x0)x3 +1

    2[f 00(x0) g00(x0)]x1 + g00(x0)x1x2

    + [f 0(x0) g0(x0)]x2 + 13!g000(x0)x31 = 0

    Se g0(x0) 6= 0, ent~ao podemos, a partir de (2.21), determinar express~oespara x1; x2 e x3:

    x0 soluc~ao de g(x) = 0

    x1 = f(x0)g0(x0)

    28

  • x2 =[g0(x0) f 0(x0)]x1 12g00(x0)x21

    g0(x0)(2.22)

    x3 =12 [g

    00(x0) f 00(x0)]x1 g00(x0)x1x2 [f 0(x0) g0(x0)]x2 13!g000(x0)x31g0(x0)

    Como g(x) deve ser uma func~ao conhecida e cujas derivadas g0(x); g00(x) e

    g000(x) sejam de facil manipulac~ao, as possveis escolhas para g(x) s~ao:

    1. Uma func~ao linear ou quadratica;

    2. Partes da func~ao f(x).

    Em particular, tomando g(x) = f(x)f(x0), onde x0 e uma aproximac~ao paraa soluc~ao de f(x) = 0, as express~oes denidas em (2.22) cam

    x1 = f(x0)f(x0)

    x2 = 12!

    f 00(x0)f 0(x0)

    x21 = 1

    2!

    f 00(x0)f 0(x0)

    f(x0)

    f 0(x0)

    2(2.23)

    x3 = f00(x0)f 0(x0)

    x1x2 13!

    f 000(x0)f 0(x0)

    x31

    E desta maneira obtemos as aproximac~oes de primeira, segunda e terceira

    ordens:

    aproximac~ao de primeira ordem: x = x0 + x1

    aproximac~ao de segunda ordem: x = x0 + x1 + x2

    aproximac~ao de terceira ordem: x = x0 + x1 + x2 + x3

    Utilizando as aproximac~oes (2.23), determinamos as iterac~oes de primeira, se-

    29

  • gunda e terceira ordens

    xn+1 = xn f(xn)f 0(xn)

    (2.24)

    xn+1 = xn f(xn)f 0(xn)

    f00(xn)

    2f 0(xn)

    f(xn)

    f 0(xn)

    2(2.25)

    xn+1 = xn f(xn)f 0(xn)

    f00(xn)

    2f 0(xn)

    f(xn)

    f 0(xn)

    2+

    (f 000(xn)6f 0(xn)

    12

    f 00(xn)f 0(xn)

    2) f(xn)f 0(xn)

    3(2.26)

    Note que a iterac~ao de primeira ordem corresponde ao conhecido metodo de

    Newton-Raphson. Wu [18] considera em seu artigo outras possibilidades para

    a func~ao auxiliar g(x), tais como a func~ao constante ou a func~ao exponencial,

    enquanto que Feng e He [19] utiliza as formulas de diferencas centradas

    f 0(xn) =f(xn + h) f(xn h)

    2h(2.27)

    f 00(xn) =f(xn + h) 2f(xn) + f(xn h)

    h2(2.28)

    com h = f(xn); 6= 0 em (2.25) obtendo a aproximac~ao de segunda ordem

    xn+1 = xn 2hf(xn)f(xn + h) f(xn h) (2.29)

    e demonstra a sua converge^ncia.

    2.5.4 Decomposic~ao de Adomian

    Um metodo iterativo eciente proposto por Adomian [20, 21] para a resoluc~ao

    de equac~oes n~ao lineares de diversos tipos (algebricas, diferenciais, diferenciais

    30

  • parciais, integrais etc) e o Metodo de Decomposic~ao de Adomian (MDA). Vamos

    iniciar sua descric~ao para a determinac~ao de razes de uma equac~ao denida pela

    express~ao f(x) = 0, onde f(x) e uma func~ao real de variavel real. Este metodo

    considera a representac~ao da soluc~ao x? de uma equac~ao f(x) = 0 pela serie

    x? =1Xn=0

    xn: (2.30)

    Assumimos que a equac~ao f(x) = 0 pode ser escrita na forma cano^nica

    x = c+N(x); (2.31)

    onde c e uma constante e N(x) e uma func~ao n~ao linear. A parte n~ao linear N(x)

    de f(x) pode ser representada pela serie

    N(x) =1Xn=0

    An; (2.32)

    onde as parcelas An = An(x0; x1; ; xn) s~ao os chamados Polino^mios de Adomiandenidos por

    An =1

    n!

    dn

    dn

    "N

    1Xi=0

    ixi

    !#=0

    : (2.33)

    Abbaoui e Cherruault [22] demonstram que a serie (2.32) e absolutamente conver-

    gente se existe 2 [0; 1] tal que jAn+1j jAnj, e prop~oem uma nova formulac~aopara se determinar An. Abbaoui et all [23] tratam da generalizac~ao dos Polino^mios

    de Adomian para o caso de n variaveis. Para n = 0 em (2.33), obtemos

    A0 =1

    0!

    d0

    d0

    "N

    1Xi=0

    0x0 + 1x1 +

    !#=0

    31

  • = N

    1Xi=0

    x0 + 1x1 +

    !=0

    = N

    1Xi=0

    x0 + 0 + !

    = N(x0)

    e os demais s~ao obtidos da mesma maneira. Por exemplo, os polino^mios A1 e A2

    s~ao

    A1 = x1N0(x0)

    A2 = x2N0(x0) +

    1

    2x21N

    00(x0):

    Substituindo (2.30) e (2.32) em (2.31) obtemos

    1Xn=0

    xn = c+

    1Xn=0

    An; (2.34)

    e, desta maneira, podemos assumir que

    x0 = c (2.35)

    x1 = A0 (2.36)

    xn+1 = An; n = 0; 1; (2.37)

    O metodo da Decomposic~ao de Adomian pode ser ent~ao expresso pela serie

    S =P1

    n=1 xn. Varios metodos iterativos s~ao decorrentes da equac~ao (2.34) trun-

    32

  • cando esta serie em algum n. Por exemplo, considere a expans~ao em serie de

    Taylor de segunda ordem de uma func~ao f : R! R de classe C2

    f(x h) = f(x) hf 0(x) + h2 f00(x)2!

    + r2(h): (2.38)

    Para x sucientemente proximo da soluc~ao x? de f(x) = 0, seja ~h = x x?.Assim f(x ~h) = 0 e ent~ao

    0 = f(x?) = f(x ~h) f(x h) f(x) hf 0(x) + h2 f00(x)2!

    : (2.39)

    Resolvendo (2.39) para h encontramos a seguinte aproximac~ao para ~h :

    ~h h = f(x)f 0(x)

    +h2

    2

    f 00(x)f 0(x)

    ;

    ou simplesmente,

    h = c+N(h);

    onde c = f(x)f 0(x) e uma constante e N(h) =h2

    2f 00(x)f 0(x) e uma func~ao n~ao linear na

    variavel h. Utilizando a express~ao (2.34) e fazendo n = 0 temos que x0 = c =f(x)f 0(x)

    e uma aproximac~ao para x? = x ~h x h e portanto,

    x? x h = x f(x)f 0(x)

    ;

    que fornece a conhecida iterac~ao de Newton-Raphson.

    Considere agora a expans~ao em serie de Taylor de primeira ordem de uma

    func~ao f : R! R

    33

  • f(x h) = f(x) hf 0(x) + r1(h): (2.40)

    Fazendo r1(h) = g(h) obtemos,

    g(h) = f(x h) + hf 0(x) f(x): (2.41)

    Se x esta sucientemente proximo da soluc~ao x? de f(x) = 0 e h e pequeno,

    temos que f(x h) 0. Resolvendo (2.41) para h obtemos

    h =f(x)

    f 0(x)+

    g(h)

    f 0(x)

    h = c+N(h): (2.42)

    onde c = f(x)f 0(x) e N(h) =g(h)f 0(x) . Para as duas primeiras parcelas de (2.34), obtemos

    h x0 + x1 = c+A0(x0)

    =f(x)

    f 0(x)+N

    f(x)

    f 0(x)

    : (2.43)

    onde fazemos x0 = c =f(x)f 0(x) pela equac~ao (2.35). Mas

    N

    f(x)

    f 0(x)

    =

    g

    f(x)f 0(x)

    f 0(x)

    =1

    f 0(x)

    f(x)

    f 0(x)f 0(x) f(x) + f

    x f(x)

    f 0(x)

    =fx f(x)f 0(x)

    f 0(x)

    : (2.44)

    34

  • Substituindo (2.44) em (2.43) obtemos

    h =f(x)

    f 0(x)+fx f(x)f 0(x)

    f 0(x)

    : (2.45)

    Como x? x h temos

    x? x f(x)f 0(x)

    fx f(x)f 0(x)

    f 0(x)

    ; (2.46)

    que fornece a iterac~ao proposta por Potra e Ptak [24],

    xn+1 = xn f(xn)f 0(xn)

    fxn f(xn)f 0(xn)

    f 0(xn)

    ; (2.47)

    que possui converge^ncia cubica para pontos em uma vizinhanca de x?.

    Darvishi & Barati [25], ainda utilizando a decomposic~ao de Adomian, modi-

    cam (2.47) e apresentam a iterac~ao

    xn+1 = xn f(xn)f 0(xn)

    f(x?n+1)

    f 0(x?n+1)(2.48)

    x?n+1 = xn f(xn)

    f 0(xn);

    de converge^ncia supercubica, extendendo seu resultado para aplicac~oes F-Diferenciaveis

    F : Rn ! Rn; n > 1

    xn+1 = xn F (xn)F 0(xn)1 F (x?n+1)F 0(x?n+1)1:

    x?n+1 = xn F (xn)F 0(xn)1: (2.49)

    Considerando o Metodo de Perturbac~ao da Homotopia discutido na sec~ao 2.5.3,

    35

  • considere a representac~ao da soluc~ao x? da equac~ao f(x) = 0 pela serie

    x? = ~x0 + t~x1 + t2~x2 + t

    3~x3 + (2.50)

    apresentada em (2.18). Li [15] demonstra a equivale^ncia entre o Metodo da Per-

    turbac~ao da Homotopia e o Metodo da Decomposic~ao de Adomian, considerando

    os polino^mios de Adomian denidos por

    A1 = ~x1 A0 + ~x0 c

    An = ~xn; n > 2

    e a homotopia dada por

    H(u; t) = tN(u) u+ c:

    36

  • Captulo 3

    Metaheursticas para resoluc~ao

    de problemas de otimizac~ao n~ao

    linear

    3.1 Introduc~ao

    Neste captulo faremos uma breve introduc~ao sobre uma classe de metaheursticas

    de busca: os Algoritmos Evolucionarios, com destaque para o Algoritmo Genetico.

    Em particular, tais metodologias se aplicam a problemas de minimizac~ao mono

    objetivo, que pode ser apresentado como

    x? = argminx

    f(x) (3.1)

    sujeito a

    8>: gi(x) 0 i = 1 rhj(x) = 0 j = 1 p37

  • onde x 2 Rn; f : D Rn ! R e chamada de Func~ao de Interesse ou Func~aoObjetivo, D Rn e chamado de Espaco de Busca, gi : Rn ! R s~ao restric~oes dedesigualdade e hj : R

    n ! R s~ao restric~oes de igualdade. Uma soluc~ao (local) de(3.1) e um ponto x?k 2 D que atenda a todas as restric~oes e que possui o menorvalor para f(x) em algum conjunto aberto Dk D. Uma soluc~ao global x? 2 De uma soluc~ao local x?k com o menor valor possvel quando avaliada pela func~ao

    objetivo f(x).

    Caso a func~ao objetivo f(x) e as restric~oes gi(x); hi(x) sejam de classe Ck,

    e possvel a utilizac~ao de metodos exatos para a obtenc~ao de x? [8, 2] tais como

    o Metodo do Gradiente ou o Metodo do Gradiente Conjugado, que utilizam in-

    formac~oes do vetor gradiente para determinar a direc~ao de busca e o tamanho do

    passo. Tais tecnicas s~ao muito ecientes no renamento de soluc~oes, porem muitas

    vezes apresentam um custo computacional alto devido ao calculo das derivadas.

    Alem disso exigem uma escolha inicial sucientemente proxima de um otimo local

    (que tambem atenda as restric~oes) e n~ao apresentam estruturas que permitam a

    explorac~ao do espaco de busca a m de se encontrar um otimo global, falhando no

    caso de func~oes multimodais.

    Uma alternativa a tais metodos s~ao as Metaheursticas. Estas se baseiam

    na explorac~ao estocastica \inteligente" do espaco de busca. Algumas tem seu

    funcionamento baseado em estruturas sociais, tais como Otimizac~ao por Colo^nia

    de Formigas (Ant Colony Optimization Metaheuristic - ACO [26, 4]) 1, processos

    fsicos, como Simulated Annealing [4] 2 ou em processos de evoluc~ao e selec~ao

    natural propostos por Darwin, como os Algoritmos Evolucionarios [5]. Como o

    1Metaheurstica inspirada na explorac~ao por caminhos aleatorios de um ambiente porformigas e a posterior converge^ncia destas rotas em uma que minimiza a dista^ncia percor-rida do formigueiro a fonte de alimento [27].

    2Metaheurstica inspirada no processo de forja de metais, onde ha uma repetic~ao deprocessos de aquecimento e resfriamento, ate se atingir um estado desejado de organizac~aomolecular.

    38

  • foco das ac~oes destas tecnicas e de natureza exploratoria do espaco de busca,

    tais metodos n~ao exigem a diferenciabilidade ou mesmo continuidade da func~ao

    objetivo, podendo ser utilizados nos mais variados tipos de problema.

    Uma fragilidade que as metaheursticas apresentam e sua pouca ecie^ncia em

    realizar uma busca local e consequentemente fazer o renamento de uma soluc~ao.

    Tambem estas apresentam pouca ecie^ncia para o caso de problemas de otimizac~ao

    com restric~oes de igualdade, uma vez que ha a reduc~ao da dimens~ao e forma do

    espaco de busca. O espaco de busca se reduz a pontos em uma superfcie de

    dimens~ao inferior a dimens~ao original do problema. Por exemplo, se a func~ao

    objetivo tem como domnio o espaco R2, uma restric~ao de igualdade corresponde

    a uma curva, um objeto de dimens~ao um. Tal tipo de problema e chamado de

    busca em volume zero. Esta mudanca na topologia do espaco de busca aumenta

    a complexidade do problema e reduz a ecie^ncia das metaheursticas, uma vez

    que estas foram idealizadas para problemas irrestritos e com ampla liberdade de

    mobilidade no espaco de busca.

    A incapacidade de uma metaheurstica fazer a busca local e contornada com

    a utilizac~ao de algoritmos hbridos, que combinam a capacidade de explorac~ao do

    espaco de busca das metaheursticas com algoritmos capazes de realizar o rena-

    mento local de uma soluc~ao. Esses algoritmos hbridos s~ao tambem conhecidos

    como Algoritmos Memeticos [7].

    As restric~oes de igualdade ou de desigualdade s~ao tradicionalmente tratadas

    utilizando o metodo das penalidades: ao se criar a func~ao de aptid~ao FO(x),

    as restric~oes g(x)i s~ao incorporadas a func~ao objetivo f(x), que assume a forma

    f(x) +P

    i ig(x)+i , sendo i o fator de penalidade da i-esima restric~ao e g(x)

    +i

    denota o valor de gi se este for positivo, ou zero nos outros casos [7].

    Um exemplo classico de utilizac~ao de metaheursticas e o Problema do Caixeiro

    39

  • Viajante (PCV): Dado um conjunto de n cidades e conhecida a dista^ncia entre

    duas cidades quaisquer, queremos determinar a rota que visita todas as cidades

    uma unica vez e percorre a menor dista^ncia. Uma rota possvel e representada

    por um vetor n dimensional de inteiros positivos e a func~ao objetivo f : Zn+ ! Ravalia a dista^ncia percorrida por aquela rota. Em [27, 4] ha uma descric~ao de

    varias metaheursticas e problemas onde estas se aplicam.

    3.2 Algoritmos Evolucionarios

    Os Algoritmos Evolucionarios (AE) s~ao metaheursticas de busca popula-

    cional inspirados em processos biologicos de evoluc~ao genetica e selec~ao natural

    propostas por Darwin. Resumidamente, a teoria de Darwin diz que indivduos de

    uma mesma especie n~ao s~ao ide^nticos, mas apresentam pequenas variac~oes de todo

    tipo. O numero de indivduos n~ao apresenta grandes variac~oes, estando limitado

    pela capacidade do meio onde se encontram. Todo indivduo apresenta grande po-

    tencial reprodutivo, mas apenas aqueles que se mostraram mais adaptados ao meio

    te^m uma maior sobrevida e consequentemente uma maior prole. As caractersticas

    que tornaram aquele indivduo mais apto s~ao transmitidas para seus descendentes,

    fazendo com que aquela populac~ao apresente uma constante evoluc~ao e se torne

    cada vez mais adaptada ao meio onde se encontra.

    Fazendo uma analogia com este quadro, um AE aplicado ao problema (3.1) as-

    sume que cada ponto do espaco de busca e um indivduo e e representado por um

    vetor, que corresponde a sua carga genetica (cromossomo), sendo que cada coorde-

    nada deste vetor corresponde a um gene. E gerado aleatoriamente um conjunto de

    pontos (populac~ao inicial) e associado a eles uma aptid~ao (tness) relativa a regi~ao

    onde se encontram no espaco de busca, em geral utilizando a func~ao objetivo e suas

    40

  • restric~oes. A explorac~ao do espaco de busca e feita por mecanismos estocasticos de

    recombinac~ao (crossover) e perturbac~ao (mutac~ao) dos pontos situados em regi~oes

    promissoras, representados pela reproduc~ao (sexuada e assexuada) de indivduos e

    a mutac~ao de seus genes. A cada iterac~ao (gerac~ao) novos pontos s~ao criados (lhos

    ou ospring) a partir de pontos selecionados (pais) e inseridos na populac~ao, en-

    quanto que outros s~ao selecionados para serem retirados, mantendo o tamanho da

    populac~ao constante. Apos um numero pre estabelecido de gerac~oes, a populac~ao

    (ou parte dela) converge para uma soluc~ao otima [7, 5].

    Faremos abaixo uma breve apresentac~ao de alguns modelos de Algoritmos Evo-

    lucionarios. Maiores detalhes podem ser encontrados em [5, 28, 29].

    Sistema Evolucionario (EV (m;n)): Um EV (m;n) e o mais simplesexemplo de algoritmo evolucionario. Um conjunto de m indivduos s~ao gera-

    dos aleatoriamente, representados por vetores contendo suas caractersticas

    basicas. Aleatoriamente s~ao escolhidos (com distribuic~ao uniforme) n in-

    divduos para reproduc~ao. O processo reprodutivo e assexuado, ou seja, um

    indivduo gera um unico lho, que difere de seu pai pela aplicac~ao de um

    operador de mutac~ao em seus genes. Para problemas que admitem a repre-

    sentac~ao por numeros reais, a mutac~ao corresponde a uma perturbac~ao nas

    coordenadas dos pontos do espaco amostral, somando ou subtraindo uma

    variavel aleatoria com distribuic~ao gaussiana de media zero e varia^ncia .

    Em seguida, n indivduos s~ao selecionados da populac~ao e competem dire-

    tamente com esta nova gerac~ao, tendo como base sua func~ao de aptid~ao.

    Dentre estes 2n indivduos, selecionamos os n melhor avaliados pela func~ao

    de aptid~ao s~ao reintroduzidos na populac~ao.

    Programac~ao Evolucionaria (PE(m)): A programac~ao evolucionaria eum aperfeicoamento do EV (m;n). Sua diferenca consiste em fazer o numero

    41

  • de novos indivduos igual a populac~ao inicial (m = n). Os novos indivduos

    s~ao ent~ao reintroduzidos na populac~ao e adota-se uma estrategia elitista de

    selec~ao: apenas os m melhores indivduos avaliados pela func~ao de tness

    sobrevivem para a proxima gerac~ao. Desta maneira evita-se que um in-

    divduo com baixa aptid~ao passe para a gerac~ao seguinte. Desta maneira

    ha um acrescimo da velocidade de converge^ncia, mas com uma perda de

    diversidade populacional.

    Estrategia Evolutiva (( + )EE; (; )EE): Mais sosticada que asanteriores, em uma EE e gerada uma populac~ao inicial de indivduos e,

    a cada gerac~ao, descendentes. O que difere as estrategias ( + )EE e

    (; )EE e a maneira de como s~ao selecionados os indivduos para a gerac~ao

    seguinte. Na estrategia (+) os descendentes s~ao incorporados a populac~ao

    e ent~ao e feita a selec~ao de novos indivduos. Na estrategia (; ), devemos

    ter > e s~ao selecionados indivduos dentre os novos indivduos

    gerados e desta maneira toda a populac~ao e renovada a cada gerac~ao.

    Ha varias possibilidades para os para^metros e , tais como

    1. 1 = ,

    2. ,

    3. (apenas na estrategia (+ )EE).

    A reproduc~ao dos indivduos pode ser assexuada (como na EV e PE) ou

    sexuada, com a presenca de recombinac~ao. Discutiremos mais adiante este

    mecanismo de recombinac~ao ao tratarmos dos Algoritmos Geneticos. A

    mutac~ao aparece com uma pequena probabilidade de incide^ncia, tambem

    por meio de uma perturbac~ao dada pela soma/subtrac~ao de uma variavel

    aleatoria com distribuic~ao gaussiana de media zero e varia^ncia e apresenta

    42

  • um fator de de auto adaptac~ao regido pela chamada regra do 1/5: Seja '

    a raz~ao entre as mutac~oes que geram um indivduo melhor do que o pai e

    o total de indivduos mutados [5]. Se ' > 15 aumente o valor de . Caso

    contrario, diminua o valor de .

    Algoritmos Geneticos (AG): Os princpios basicos de um AG forampropostos por Holland [30] e s~ao inspirados nos mecanismos de evoluc~ao e

    selec~ao natural, onde indivduos com melhor desempenho prevalecem e per-

    petuam suas caractersticas dominantes aos seus descendentes. Para resolver

    o problema de minimizac~ao (3.1), inicialmente e gerado aleatoriamente (com

    distribuic~ao uniforme sobre o espaco de busca) um conjunto de pontos (deno-

    minados indivduos). Originalmente, a representac~ao de tais pontos e feita

    por um vetor de codicac~ao binaria, mas e usual se utilizar a codicac~ao

    real. As coordenadas de tais pontos formam sua carga genetica (cromos-

    somos). No caso da codicac~ao binaria, cada bit e tomado como um gene

    do indivduo e, para pontos no espaco Rn, cada coordenada e um gene. A

    sua aptid~ao, que indica o qu~ao adaptado ao meio tal indivduo esta (se esta

    proximo de um otimo local, por exemplo), e medida por um valor positivo

    denotado por tness ou func~ao de aptid~ao, tomado como uma combinac~ao

    da func~ao objetivo e das func~oes de restric~ao.

    A cada gerac~ao alguns indivduos s~ao selecionados tomando como base o

    seu valor da func~ao de aptid~ao e s~ao recombinados, gerando novo indivduos

    (osprings). Tal procedimento parte do pressuposto que, combinando dois

    indivduos com boa avaliac~ao, produziremos um novo indivduo tambem com

    um bom valor de tness. E no processo de recombinac~ao que e realizada a

    busca global, e a populac~ao converge para regi~oes onde se situa um otimo

    local.

    43

  • A uma pequena parcela destes novos indivduos, escolhidos aleatoriamente

    e com uma pequena probabilidade de selec~ao (em geral menor do que 0.1), e

    aplicado ainda um operador de mutac~ao, que realiza uma busca local. Esta

    operac~ao pode ser a troca de um bit no caso da representac~ao binaria ou uma

    pequena perturbac~ao nas coordenadas no caso da representac~ao real. Este

    operador procura ampliar a variabilidade genetica da populac~ao, corrigindo

    eventuais vcios.

    Apos os processos de recombinac~ao e mutac~ao, os novos indivduos s~ao rein-

    seridos na populac~ao e outros s~ao retirados em igual numero de modo a

    manter o tamanho da populac~ao constante. Repetimos todos estes procedi-

    mentos a cada nova gerac~ao.

    O tamanho da populac~ao inicial, o numero de gerac~oes, a forma de selec~ao

    de indivduos para a recombinac~ao, o tipo de recombinac~ao realizado, a taxa

    de mutac~ao aplicada e quais s~ao os indivduos retirados s~ao para^metros de-

    terminantes para o desempenho de um AG. Na proxima sec~ao abordaremos

    alguns componentes de um AG.

    3.3 Operadores de um AG

    Nesta sec~ao faremos uma breve apresentac~ao sobre alguns dos componentes de

    um AG. Maiores detalhes podem ser encontrados em [31, 32, 33].

    Um AG apresenta em geral a seguinte estrutura:

    44

  • inicio: faca t = 0;

    Inicialize a populac~ao P (t);

    avalie P (t)

    enquanto n~ao nalizado, faca:

    inicio: faca t = t+ 1;

    Selecione ~P (t) de P (t 1);recombine os elementos de ~P (t);

    aplique a mutac~ao nos novos elementos;

    reinsira os novos elementos em P (t);

    avalie P (t) e selecione indivduos para serem excludos da po-pulac~ao.

    m

    m

    Tabela 3.1: Estrutura padr~ao de um Algoritmo Genetico

    3.3.1 Func~ao Objetivo e de Aptid~ao

    A Func~ao Objetivo e dada pelo problema a ser tratado. Iremos tratar sem-

    pre de problemas de minimizac~ao, tais como (3.1), sendo que um problema de

    maximizac~ao pode ser facilmente convertido em um problema de minimizac~ao,

    multiplicando a func~ao de interesse por 1. Usualmente, as restric~oes de um pro-blema de minimizac~ao s~ao agregadas a func~ao objetivo por meio do metodo de

    penalidades. Assim, para (3.1), a func~ao objetivo pode ser escrita como

    FO(x) = f(x) + 1g21 + + rg2r + 1h21 + + ph2p (3.2)

    sendo i e j pesos (positivos) associados as func~oes de restric~ao. A func~ao de

    aptid~ao F (x) mede a adequac~ao de cada indivduo no espaco de busca e deve

    45

  • sempre assumir um valor positivo. Isto pode ser feito pela transformac~ao am

    F (x) = a FO(x) + b

    sendo a < 0 um fator de escala e b sendo usado para se manter a positividade de

    F (x). Outras formas de denic~ao para a func~ao de tness podem ser encontradas

    em [32, 5]

    3.3.2 Selec~ao

    Selec~ao e o mecanismo que determina quais indivduos ir~ao se reproduzir e so-

    frer mutac~ao e quais indivduos ser~ao eliminados da populac~ao. Um mecanismo de

    selec~ao puramente elitista, que seleciona sempre os melhores indivduos segundo

    sua func~ao de aptid~ao (ou os piores, no caso de eliminac~ao de indivduos da po-

    pulac~ao) e utilizado em algumas situac~oes, mas seu uso fere o carater estocastico

    do metodo e provoca uma perda de diversidade da populac~ao, enfraquecendo sua

    capacidade de explorac~ao do espaco de busca. Iremos tratar com mais detalhes

    tre^s metodos de selec~ao: o Torneio (Tournament Selection), a Roleta (Roulette

    Whell Selection ou RWS) e o SUS (Stochastic Universal Sampling).

    Torneio: E um metodo apropriado quando a populac~ao e elevada dado seubaixo esforco computacional. Para um populac~ao de tamanho n, escolha

    aleatoriamente q indivduos. Destes q indivduos, e selecionado aquele com

    maior valor da func~ao de aptid~ao. Todos os indivduos selecionados retornam

    a populac~ao, podendo ser sorteados para o proximo torneio. Este procedi-

    mento e repetido ate atingir o numero de indivduos a serem selecionados.

    Roleta: E um metodo onde a probabilidade de escolha de um indivduo eproporcional a sua func~ao de aptid~ao. A probabilidade P (xi) do indivduo

    46

  • xi ser selecionado e dada por

    P (xi) =F (xi)nX

    j=1

    F (xj)

    ; (3.3)

    sendo F (xi) a func~ao de aptid~ao do indivduo xi. Para a escolha de um

    indivduo, estes s~ao ordenados em uma lista e e sorteado um numero k em

    [0; S), sendo S =Pn

    j=1 F (xj). A cada indivduo xi; i > 1, e associado um

    subintervalo [li; ui), sendo li =Pi1

    j=1 F (xj) e ui =Pi

    j=1 F (xj) e o intervalo

    [0; F (x1)) e associado ao indivduo x1. Se k 2 [li; ui) ent~ao o indivduo xi esorteado e retirado da lista. A cada novo sorteio, o processo se repete.

    No metodo da roleta, a cada indivduo sorteado devemos reiniciar o proce-

    dimento, o que eleva o custo computacional, que e O (n log(n)).

    SUS: No metodo SUS, de uma populac~ao de n indivduos, selecionamos Nindivduos de uma so vez da seguinte maneira: Aleatoriamente escolhemos

    um numero k no intervalo [0; S=N ], sendo S =Pn

    j=1 F (xj). Em seguida sele-

    cionamos os indivduos associados aos intervalos [li; ui) (denidos no metodo

    da roleta) que contem cada um dos numeros k; k+ SN ; k+2SN ; ; k+(n1) SN .

    O Metodo SUS apresenta um custo computacional O (n).

    A B C D E F G

    0 SFintess total da populao (n indivduos)

    S/n

    Figura 3.1: Escolha de 4 indivduos utilizando SUS

    47

  • A gura 3.1 ilustra o sorteio dos indivduos A;B;C e F pelo metodo SUS.

    O tamanho de cada indivduo e proporcional a sua func~ao de aptid~ao. A

    amostragem no SUS faz uma melhor representac~ao da populac~ao reduzindo

    vcios provocados por indivduos bem avaliados.

    3.3.3 Recombinac~ao

    O processo de recombinac~ao, ou crossover, e o mecanismo responsavel pela ex-

    plorac~ao do espaco de busca e renamento de soluc~oes. Uma parte da populac~ao e

    selecionada para reproduc~ao. O numero de indivduos selecionados e denido pela

    probabilidade de crossover (ou taxa de crossover pc), geralmente entre 60 e 80 por-

    cento da populac~ao. A recombinac~ao em um AG e sexuada, onde dois indivduos

    (chamados de pais, sem distinc~ao sexual) combinam sua carga genetica gerando

    novos indivduos (lhos), que posteriormente e com uma pequena probabilidade

    de ocorre^ncia, sofrem tambem o processo de mutac~ao. A maneira como e feito a

    recombinac~ao e determinado pelo tipo de representac~ao do indivduo: binaria ou

    real.

    Recombinac~ao Multiponto: Usado quando a representac~ao do indivduoe binaria. Neste tipo de recombinac~ao, i posic~oes s~ao aleatoriamente esco-

    lhidas, com i 2 f1; 2; ; l1g sendo l o tamanho do cromossomo e l=2 umarefere^ncia para o numero de pontos escolhidos [5]. A partir das posic~oes pre-

    viamente determinadas, blocos de genes de cada indivduo s~ao permutados

    gerando os novos indivduos.

    A gura 3.2 ilustra a recombinac~ao dos indivduos Pai 1 e Pai 2 por meio

    da recombinac~ao de dois pontos, com i 2 f2; 7g: O lho 1 tem os genes1,2,8,9,10,11 e 12 herdados do Pai 1 e os restantes s~ao herdados do Pai 2.

    Para o Filho 2 a situac~ao se inverte.

    48

  • A A A AAA A A A AAA Pai 1

    B B B BBB B B B BBB Pai 2

    A A B BBB B A A AAA Filho 1

    B B A AAA A B B BBB Filho 2

    Figura 3.2: Recombinac~ao multiponto com i 2 f2; 7g

    Recombinac~ao Uniforme: E uma generalizac~ao da recombinac~ao multi-ponto. E gerado uma mascara, que e um vetor binario de mesmo tamanho

    dos indivduos com coordenadas aleatorias (0 ou 1), indicando quais genes

    devem ser trocados.

    A A A AAA A A A AAA Pai 1

    B B B BBB B B B BBB Pai 2

    B B B BAA A A A BBA Filho 1

    A A A ABB B B B AAB Filho 2

    1 1 1 100 0 0 0 110 Mscara

    Figura 3.3: Recombinac~ao uniforme

    A gura 3.3 ilustra a recombinac~ao uniforme. Para o Filho 1, o dgito \0"

    na posic~ao i do vetor mascara indica que este herda o gene da posic~ao i do

    Pai 1, enquanto que o dgito \1" indica que este herda o gene da posic~ao i

    do Pai 2. Para o Filho 2 a situac~ao se inverte.

    Recombinac~ao Real Convexa: Utilizada quando a representac~ao dosindivduos e feita por vetores de codicac~ao real. Escolhidos dois pais x1 e

    49

  • x2, seu descendente x3 e obtido pela express~ao

    x3 = x1 + (1 )x2; (3.4)

    onde e uma variavel aleatoria com distribuic~ao uniforme no intervalo [0; 1].

    Observe que (3.4) corresponde a combinac~ao linear convexa dos pontos x1

    e x2, de modo que o novo indivduo x3 se encontra no interior do segmento

    de reta denido pelos pontos x1 e x2. A gura 3.4 ilustra este tipo de

    recombinac~ao.

    Figura 3.4: Recombinac~ao real convexa

    Recombinac~ao Real Convexa com Extrapolac~ao: Uma forma de am-pliar a capacidade de explorac~ao do espaco de busca feita pela recombinac~ao

    real convexa e a introduc~ao de um fator de extrapolac~ao [2, 7], que extende a

    possvel localizac~ao dos descendentes para alem do segmento de reta denido

    por seus pais. A recombinac~ao real convexa com extrapolac~ao e denida pela

    express~ao

    x3 = x1 + (1 )x2; (3.5)

    50

  • onde

    = + (1 2) (3.6)

    sendo 0 o fator de extrapolac~ao e e uma variavel aleatoria com distri-buic~ao uniforme no intervalo [0; 1]. Observe que, se o fator de extrapolac~ao

    for igual a zero, o novo indivduo x3 se localizara no interior do segmento

    de reta S denido por x1 e x2 e temos a recombinac~ao real convexa comum.

    Se > 0, a possvel localizac~ao do novo indivduo x3 se extende para alem

    do segmento denido por x1 e x2 de forma simetrica.

    Figura 3.5: Recombinac~ao real convexa com extrapolac~ao

    A gura 3.4 ilustra a recombinac~ao real convexa com extrapolac~ao. O seg-

    mento de reta destacado indica a possvel localizac~ao do novo indivduo x3.

    Recombinac~ao Real Polarizada: Mais sosticada que as anteriores, arecombinac~ao real polarizada ou cruzamento real polarizado [2, 7], produz

    um descendente x3 a partir de dois pais x1 e x2, com x1 tendo uma melhor

    avaliac~ao pela func~ao de aptid~ao. Obtemos x3 da seguinte maneira:

    x3 = x1 + (1 )x2 (3.7)

    51

  • onde pertence ao intervalo [; 1 + ], sendo um fator de extrapolac~ao.O para^metro e selecionado de acordo uma distribuic~ao de probabilidade

    dada por

    = + (1 2)12;

    onde 1 e 2 s~ao variaveis aleatorias com distribuic~ao uniforme escolhidas

    no intervalo [0; 1]. Desta maneira, o novo indivduo x3 tem uma maior

    probabilidade de estar mais proximo de x1 (indivduo melhor avaliado) do

    que de x2 [7, 2].

    Recombinac~ao Real Convexa Generalizada: E analoga a recombinac~aoreal convexa, porem e gerado um fator de escala diferente para cada uma

    das n coordenadas (genes), assumindo que o indivduo e um ponto em Rn.

    Desta maneira, um lho pode se localizar no interior de um hipercubo que

    contem seus pais. A gura 3.6 ilustra a esta situac~ao

    Pais

    Potenciais lhos

    Gen 2

    Gen 1

    Possvel localizao dos lhos

    Figura 3.6: Recombinac~ao real convexa generalizada

    Os mecanismos de extrapolac~ao e polarizac~ao podem naturalmente ser in-

    52

  • corporados a recombinac~ao real convexa generalizada, bastando aplicar estes

    procedimentos a cada uma das coordenadas dos pontos.

    3.3.4 Mutac~ao

    O operador de mutac~ao tem como objetivo produzir pequenas alterac~oes no

    cromossomos dos novos indivduos. Assim como em sistemas biologicos reais, um

    descendente n~ao e uma simples mistura do codigo genetico de seus pais, sofrendo

    pequenas alterac~oes em seus genes. O operador de mutac~ao em um AG faz exata-

    mente isto. Uma pequena parcela dos novos indivduos, denida pela probabilidade

    de mutac~ao pm, sofre uma alterac~ao em seus genes. Man [32] sugere as seguintes

    taxas de acordo com o tamanho da populac~ao quando e utilizada a representac~ao

    binaria:

    1. Para populac~ao muito numerosa (100 indivduos)

    Taxa de recombinac~ao: Pc = 0:6.

    Taxa de Mutac~ao: Pm = 0:001.

    2. Para populac~ao pouco numerosa (30 indivduos)

    Taxa de recombinac~ao: Pc = 0:9.

    Taxa de Mutac~ao: Pm = 0:01.

    Para indivduos com codicac~ao binaria, o operador de mutac~ao aleatoriamente

    escolhe um gene e faz a troca do bit. No caso de codicac~ao real, uma coordenada

    e perturbada segundo alguma distribuic~ao de probabilidade, em geral utilizando-se

    a distribuic~ao gaussiana com media zero e varia^ncia igual a um.

    A gura 3.7 ilustra o processo de mutac~ao do quarto gene de um indivduo

    53

  • A A A AAA A A A AAA

    A A A AAB A A A AAA

    Figura 3.7: Mutac~ao do quarto gen

    3.3.5 Reinserc~ao

    Apos a operac~ao de recombinac~ao e mutac~ao, os novos indivduos s~ao reinseri-

    dos na populac~ao. Como a cada gerac~ao a populac~ao deve ter um numero xo de

    indivduos, alguns devem ser retirados. Para isto, ha duas estrategias: a elitista,

    onde sobrevivem apenas os mais aptos (com maior valor da func~ao de aptid~ao),

    ou s~ao retirados os membros mais antigos da populac~ao, ou uma escolha aleatoira

    com mais peso para os indivduos de maior aptid~ao, como na roleta.

    54

  • Captulo 4

    Um operador de Busca Local

    para o AG

    Algoritmos Geneticos s~ao ecientes metaheursticas de busca por populac~ao

    para problemas de minimizac~ao, porem n~ao possuem mecanismos de busca local

    responsaveis pelo renamento da soluc~ao encontrada e s~ao pouco ecientes para

    problemas com restric~ao, em especial restric~oes de igualdade [7]. Uma soluc~ao

    para tais decie^ncias e a introduc~ao de operadores de busca local, que fazem o

    renamento das soluc~oes encontradas. Com a introduc~ao de um operador de busca

    local em um AG, obtemos um algoritmo chamado de Algoritmo Genetico Memetico

    ou Hbrido[34].

    Uma das principais contribuic~oes desta dissertac~ao e o desenvolvimento de um

    operador de busca local para ser utilizado em um AG, que trata de problemas de

    minimizac~ao de func~oes que apresentam restric~oes de igualdade. Restric~oes de de-

    sigualdade em um problema de minimizac~ao alteram a fronteira da regi~ao factvel,

    reduzindo a liberdade de mobilidade dos pontos no processo de explorac~ao do

    espaco de busca. Por outro lado, uma restric~ao de igualdade corresponde geometri-

    55

  • camente a uma superfcie imersa no domnio de denic~ao do problema (como uma

    curva para problemas bidimensionais), trazendo uma modicac~ao na dimens~ao e

    na topologia do espaco de busca, dicultando ainda mais o movimento exploratorio

    nas operac~oes de cruzamento e mutac~ao do AG. Tal situac~ao e classicada como

    busca em volume zero [7]. Como o algoritmo genetico foi projetado para problemas

    irrestritos, tais complicadores elevam o grau de diculdade do tipo de problema.

    Em [7], o autor trata em sua tese de tais situac~oes. O problema de mini-

    mizac~ao de uma func~ao n~ao linear com uma restric~ao de igualdade n~ao linear e

    resolvido da seguinte forma: utilizando os pontos da gerac~ao atual, aproximac~oes

    quadraticas para a func~ao s~ao obtidas. Em seguida, utilizando as condic~oes de

    Karush-Kuhn-Tucker (denic~ao A.10) e o metodo da bissec~ao, e possvel obter a

    soluc~ao do problema quadratico associado. Esta soluc~ao e ent~ao reintroduzida na

    populac~ao corrente do AG. Tal metodologia se mostrou eciente para a resoluc~ao

    dos problemas propostos, porem o metodo da bissec~ao apresenta uma taxa de

    converge^ncia lenta (da ordem O(1=2n)).Diferentemente da proposta em [7], o operador de busca local apresentado aqui

    age diretamente na restric~ao, aplicando o metodo da decomposic~ao de Adomian

    tratado no captulo 2. Esta metodologia ajusta alguns pontos do espaco de busca

    a restric~ao do problema de minimizac~ao e apresenta converge^ncia supercubica.

    Por atuar diretamente na restric~ao de igualdade, por apresentar converge^ncia su-

    percubica e ser menos sensvel a valores iniciais, o metodo da decomposic~ao de

    Adomian mostrou ser uma boa alternativa a metodologia proposta em [7]. Alem

    destas vantagens, o operador proposto introduz varios novos pontos na populac~ao,

    todos ajustados a restric~ao de igualdade.

    56

  • 4.1 Desenvolvimento

    Considere o problema de minimizac~ao com uma restric~ao de igualdade

    x? = argminx f(x) (4.1)

    sujeito a h(x) = 0

    onde todas as func~oes envolvidas s~ao de classe Ck e x = (x1; x2; ; xn) 2 Rn. Aequac~ao h(x) = 0 corresponde a uma superfcie formada pelos pontos de Rn cujas

    coordenadas satisfazem a esta equac~ao.

    Escolhido x = (x1; x2; ; xn) um ponto da populac~ao em uma dada gerac~aodo AG e sendo ~x = xk; 1 k n uma de suas coordenadas, denimos a func~aohk : R! R da seguinte maneira:

    hk(~x) = h(x1; ; ~x; ; xn) (4.2)

    Como h e de classe Ck, ent~ao hk tambem e de classe Ck e podemos utilizar

    algum metodo descrito no capitulo 2 para resolver a equac~ao hk = 0 tomando como

    aproximac~ao inicial a propria coordenada xk. Devido ao seu melhor desempenho

    nos problemas analisados no captulo 5, foi escolhido o Metodo da Decomposic~ao

    de Adomian, utilizando a iterac~ao dada por

    xn+1 = xn f(xn)f 0(xn)

    fxn f(xn)f 0(xn)

    f 0(xn)

    : (4.3)

    Caso seja encontrada alguma soluc~ao ~x? de hk e o novo ponto

    x? = (x1; ; ~x?; ; xn) apresente uma melhora func~ao de aptid~ao, ou seja, se

    57

  • FO(x) FO(x?)

    ent~ao o novo ponto x? e incorporado a populac~ao, substituindo x. Tambem e

    levado em conta se o novo ponto x? pertence ao intervalo I onde esta denido o

    problema. Caso contrario, se f(x) < f(x?) ou x? =2 I, x e mantido.O funcionamento do operador de busca local desenvolvido e descrita na tabela

    4.1.

    Passo 1: Para uma populac~ao de p indivduos, escolha q indivduos, q < p;

    Passo 2: Para cada indivduo x escolhido, escolha aleatoriamente uma co-ordenada k de x e execute os passos 3 e 4.

    Passo 3: Resolva a equac~ao hk(xk) = 0.

    Passo 4: Se for encontrada uma soluc~ao x?k da equac~ao hk = 0 e o novoponto x? apresentar uma melhora na func~ao objetivo e x? 2 I,substitua x por x?. Sen~ao, mantenha x.

    Passo 5: Fim do procedimento de busca local. Retorne para o AG.

    Tabela 4.1: Operador de busca local em um AG

    No Passo 1, a escolha dos indivduos pode ser feita tomando uma estrategia

    elitista, por roleta ou mesmo tomando toda a populac~ao. Nas simulac~oes realiza-

    das, q corresponde a 1/3 da populac~ao. Apos a classicac~ao dos indivduos segundo

    a avaliac~ao de tness, foram selecionados os indivduos localizados no terco medio

    segundo esta classicac~ao, ignorando os melhores e os piores indivduos, localiza-

    dos no primeiro terco e no terceiro terco respectivamente. Tal procedimento visa

    58

  • escapar de algum otimo local onde os indivduos melhores classicados possam es-

    tar. A escolha da coordenada a ser ajustada no Passo 2 mantem a aleatoriedade

    do procedimento, evitando vcios. Geometricamente, o que ocorre quando uma

    coordenada consegue ser ajustada e a projec~ao do ponto x na curva de restric~ao

    segundo a k-esima coordenada.

    Figura 4.1: Ajuste de x na coordenada ej

    A gura 4.1 ilustra o ajuste do ponto x. O ponto x? corresponde a projec~ao de

    x na curva de restric~ao C(ei; ej), obtido resolvendo-se a equac~ao C(ei; x) = 0 para

    a variavel x. Observe que se a coordenada a ser ajustada fosse ei, o ponto x seria

    mantido uma vez que ele n~ao se projeta na curva de restric~ao nesta coordenada.

    59

  • Captulo 5

    Experimentos Numericos

    Faremos neste captulo uma serie de experimentos numericos 1 de modo a ana-

    lisarmos as tecnicas apresentadas neste trabalho. Na primeira sec~ao abordaremos

    a resoluc~ao de equac~oes, onde utilizaremos o metodo da decomposic~ao de Adomian

    e o metodo da perturbac~ao da homotopia, que s~ao metodos de continuac~ao apre-

    sentados no captulo 2. Na segunda sec~ao vamos aplicar o operador de busca local

    apresentado no captulo 4 para resolver alguns problemas de minimizac~ao com

    restric~oes de igualdade. Adotaremos duas estrategias: inicialmente, aplicaremos

    o operador utilizando informac~oes diretas da func~ao objetivo e das derivadas das

    func~oes de restric~ao e em seguida, aplicaremos a metodologia das aproximac~oes

    quadraticas descritas em B. Todas as rotinas foram executadas em MATLAB 2 e

    se encontram no anexo C.

    1Os experimentos foram feitos em um computador do padr~ao IBM-PC com processadorIntel Pentium Dual Core (T4300 @ 2.10 GHz) dispondo de 3GB de memoria RAM, utili-zando o sistema operacional LINUX UBUNTU (KARMIC KOALA 9.10 - kernel 2.6.31-19)

    2MATLAB vers~ao 7.7.0.471 (R2008b)

    60

  • 5.1 Resoluc~ao de equac~oes

    5.1.1 Equac~oes denidas por func~oes de uma variavel

    Nesta sec~ao iremos contrapor o Metodo de Perturbac~ao da Homotopia de se-

    gunda e terceira ordens (MPH2 e MPH3) (utilizando as iterac~oes (2.25) e (2.26)),

    o Metodo de Decomposic~ao de Adomian (ADM) (utilizando a iterac~ao (2.47)) e

    o Metodo de Newton (MN) (iterac~ao (2.4)) para determinarmos a soluc~ao x? da

    equac~ao f(x) = 0, onde f(x) s~ao func~oes reais de uma variavel real de classe Ck.

    As func~oes teste de uma variavel, bem como o ponto inicial dado, s~ao listadas

    na tabela 5.1.1 e foram retiradas de [35] e [19]. Como criterio de parada foi

    requerido que a dista^ncia entre duas aproximac~oes consecutivas fosse menor do

    que 1050 ou o numero de iterac~oes superior a 500. Caso algum metodo superar

    500 iterac~oes, este sera considerado divergente. Foi contado em cada simulac~ao o

    numero de iterac~oes e o tempo computacional gasto, em segundos.3

    Resultados

    As tabelas abaixo ilustram os resultados obtidos para a resoluc~ao das equac~oes

    fi(x) = 0, listadas na tabela 5.1.1.

    3O tempo computacional foi medido utilizando a func~ao TIC TOC do MATLAB.

    61

  • Para as func~oes selecionadas, o metodo da Decomposic~ao de Adomian apre-

    sentou um bom desenho, mostrando-se superior ao metodo da Perturbac~ao da

    Homotopia e o Metodo de Newton, com destaque para as func~oes f2 e f5 (tabelas

    f1(x) = x3 + 4x2 10; x0 = 0:3:

    f2(x) = sin2(x) x2 + 1; x0 = 1:

    f3(x) = x2 ex 3x+ 2; x0 = 1:

    f4(x) = cos(x) x; x0 = 1:7:

    f5(x) = xex2 sin2(x) + 3 cos(x) + 5; x0 = 2:

    f6(x) = ex2+7x30 1; x0 = 10:

    f7(x) = esin(x) x 1; x0 = 4:

    f8(x) = ln(x); x0 = 2:

    Tabela 5.1: Func~oes teste de uma variavel e aproximac~oes iniciais x0

    Metodo x? Iterac~oes TempoMN 1.36523001341410 55 0.0001987

    MPH2 1.36523001341410 10 0.0000913MPH3 1.36523001341410 19 0.0002495ADM 1.36523001341410 50 0.0002978

    Tabela 5.2: Func~ao f1; x0 = 0:35; jxn xn1j < 1050

    Metodo x? Iterac~oes TempoMN Divergente { {

    MPH2 Divergente { {MPH3 Divergente { {ADM 1.404491648215341 17 0.0000935

    Tabela 5.3: Func~ao f2; x0 = 1; jxn xn1j < 1050

    62

  • Metodo x? Iterac~oes TempoMN 0.257530285439861 6 0.0000540

    MPH2 0.257530285439861 4 0.0000629MPH3 0.257530285439861 5 0.0001074ADM 0.257530285439861 5 0.0000677

    Tabela 5.4: Func~ao f3; x0 = 1; jxn xn1j < 1050

    Metodo x? Iterac~oes TempoMN 0.739085133215161 6 0.0000401

    MPH2 0.739085133215161 6 0.0000529MPH3 0.739085133215161 4 0.0000712ADM 0.739085133215161 4 0.0000474

    Tabela 5.5: Func~ao f4; x0 = 1:7; jxn xn1j < 1050

    Metodo x? Iterac~oes TempoMN Divergente { {

    MPH2 Divergente { {MPH3 Divergente { {ADM -1.207647827130919 10 0.0000703

    Tabela 5.6: Func~ao f5; x0 = 0:2; jxn xn1j < 1050

    Metodo x? Iterac~oes TempoMN 3 146 0.0003112

    MPH2 3 98 0.0003992MPH3 3 80 0.0005376ADM 3 107 0.0004204

    Tabela 5.7: Func~ao f6; x0 = 10; jxn xn1j < 1050

    63

  • Metodo x? Iterac~oes TempoMN 0.000000001901298 36 0.0000961

    MPH2 Divergente { {MPH3 Divergente { {ADM 0.0000000135027603 20 0.0001081

    Tabela 5.8: Func~ao f7; x0 = 4; jxn xn1j < 1050

    Metodo x? Iterac~oes TempoMN 1 7 0.0001754

    MPH2 1 5 0.0001331MPH3 1 4 0.0001421ADM 1 6 0.0003014

    Tabela 5.9: Func~ao f8; x0 = 2; jxn xn1j < 1050

    5.3 e 5.6 respectivamente) onde estes dois ultimos falharam e na func~ao f7 (tabela

    5.8), onde falha o Metodo da Perturbac~ao da Homotopia. Apesar do metodo da

    Decomposic~ao de Adomian e o metodo da Perturbac~ao da Homotopia realizarem

    mais operac~oes por iterac~ao quando comparado ao Metodo de Newton, os metodos

    analisados n~ao apresentaram grandes variac~oes quanto ao tempo computacional

    gasto.

    64

  • 5.1.2 Aplicac~oes em Rn

    Para aplicac~oes F : Rn ! Rn, iremos contrapor o Metodo de Newton (MN)e o Metodo da decomposic~ao de Adomian (ADM). As aplicac~oes em Rn, listadas

    na tabela 5.1.2, foram colhidas em [12]. O numero de equac~oes deve ser igual

    ao numero de variaveis em cada caso pois os metodos necessitam o calculo da

    inversa da matriz jacobiana, que deve ser portanto uma matriz quadrada. Como

    criterio de parada foram consideradas duas situac~oes: jxn xn+1j1 < 1015 ejxn xn+1j1 < 1020, alem do numero maximo de iterac~oes ser inferior a 500.Mais uma vez foi contado em cada simulac~ao o numero de iterac~oes e o tempo

    computacional gasto, em segundos.

    F1 :

    8>>>>>>>>>:

    3x1 cos(x2x3) 12x21 81(x2 + 0:1)2 + sin(x3) + 1:06

    ex1x2 + 20x3 +10 3

    3

    ; x0 = (0:1; 0:1;0:1)

    F2 :

    8>>>>>>>:x31 + x

    21x2 x1x3 + 6

    ex1 + ex2 x3

    x22 2x1x3 4

    ; x0 = (1;2; 1)

    F3 :

    8>>>>>>>>>:

    6x1 2 cos(x2x3) 1

    9x2 +qx21 + sin(x3) + 1:06 + 0:9

    60x3 + 3ex1x2 + 10 3 = 0

    ; x0 = (0; 0; 0)

    Tabela 5.10: Aplicac~oes utilizadas nos experimentos e aproximac~oes iniciaisx0

    65

  • Resultados

    As tabelas abaixo ilustram os resultados obtidos para a resoluc~ao das equac~oes

    Fi(x) = 0, listadas na tabela 5.1.2.

    Metodo x? Iterac~oes Tempo

    MN

    0@ 0:59:03628302683433e 180:523598775598299

    1A 6 0.0013998

    ADM

    0@ 0:53; 08341883797282e 180; 523598775598299

    1A 5 0.0013947Tabela 5.11: Aplicac~ao F1; x0 = (0:1; 0:1;0:1)0; jxn xn+1j1 < 1015

    Metodo x? Iterac~oes TempoMN Diverge { {

    ADM

    0@ 0; 53; 08341883797282e 180; 523598775598299

    1A 5 0.0013109Tabela 5.12: Aplicac~ao F1; x0 = (0:1; 0:1;0:1)0; jxn xn+1j1 < 1020

    Metodo x? Iterac~oes Tempo

    MN

    0@ 1:4560427959553361:6642304660815350:422493404446532

    1A 6 0.0013326

    ADM

    0@ 1:4560427959553361:6642304660815350:422493404446532

    1A 5 0.0011295Tabela 5.13: Aplicac~ao F2; x0 = (1;2; 1)0; jxn xn+1j1 < 1015

    66

  • Metodo x? Iterac~oes Tempo

    MN

    0@ 1:4560427959553361:6642304660815350:422493404446532

    1A 8 0.0019251

    ADM

    0@ 1:4560427959553361:6642304660815350:422493404446532

    1A 5 0.0014394Tabela 5.14: Aplicac~ao F2; x0 = (1;2; 1)0; jxn xn+1j1 < 1020

    Metodo x? Iterac~oes Tempo

    MN

    0@ 0:4981446845894910:1996058955437800:528825977573387

    1A 5 0.0013278

    ADM

    0@ 0:4981446845894910:1996058955437800:528825977573387

    1A 4 0.0011077Tabela 5.15: Aplicac~ao F3; x0 = (0; 0; 0)

    0; jxn xn+1j1 < 1015

    Metodo x? Iterac~oes TempoMN Diverge { {

    ADM

    0@ 0; 4981446845894910; 1996058955437800; 528825977573387

    1A 4 0,0009608Tabela 5.16: Aplicac~ao F3; x0 = (0; 0; 0)

    0; jxn xn+1j1 < 1020

    67

  • Para as aplicac~oes mostradas, as tecnicas analisadas n~ao apresentaram va-

    riac~oes signicativas quando a precis~ao requerida foi 1015 (ver tabelas 5.11, 5.13

    e 5.15). O Metodo da Decomposic~ao de Adomian mais uma vez se mostrou su-

    perior quando o criterio de parada utilizado foi jxn xn1j1 < 1020 (tabelas5.12, 5.14 e 5.16). Nestes casos o metodo de Newton n~ao conseguiu atingir a pre-

    cis~ao requerida com menos de 500 iterac~oes nas aplicac~oes F2 e F3. Apesar do

    metodo da decomposic~ao de Adomian realizar mais operac~oes, este converge em

    um numero menor de iterac~oes, de modo que o tempo computacional gasto n~ao

    apresenta variac~oes signicativas entre os metodos.

    68

  • 5.2 Operador de Busca Local

    Iremos nesta sec~ao realizar alguns experimentos numericos com problemas de

    minimizac~ao de func~oes de classe Ck com restric~oes de igualdade de classe Ck,

    utilizando o operador de busca local ilustrado na tabela 4.1. Foram realizados

    experimentos utilizando diretamente a express~ao que dene a func~ao objetivo e

    utilizando aproximac~oes quadraticas. A restric~ao dos problemas foram tratadas

    como penalidades da func~ao de interesse f(x). Desta maneira, a func~ao objetivo

    (FO) de cada problema sera dada por

    FO(x) = f(x) + 10jh(x)j (5.1)

    Nas simulac~oes, foi utilizado um algoritmo genetico padr~ao desenvolvido em

    MATLAB, utilizando recombinac~ao real polarozada, com os para^metros descritos

    na tabela 5.17.

    Cada um dos problemas tratados tem suas variaveis denidas em algum inter-

    valo I. Caso a coordenada de algum ponto que fora deste intervalo, esta e movida

    para o interior deste (regi~ao factvel), por meio da reex~ao simples, simetrica ao

    extremo do intervalo violado.

    Para cada problema, foram executadas 100 insta^ncias do AG com estes para^-

    metros. A cada cinco gerac~oes foi aplicado o procedimento de busca local. Em

    cada gerac~ao, foi coletado o melhor valor obtido para a func~ao objetivo e em

    seguida, tomado a media simples destes valores por gerac~ao, obtendo uma curva

    de converge^ncia media para cada problema. Os problemas foram retirados de [7]

    e [36]. A seguir apresentaremos os problemas tratados e os resultados obtidos em

    cada um deles. Em cada graco obtido, o eixo x representa o numero de gerac~oes

    69

  • Tipo de selec~ao: Roleta; Tipo de crossover: Cruzamento real polarizado; Fator de extrapolac~ao na func~ao de recombinac~ao (): 0.2; Probabilidade de Crossover: 0.6; Taxa de Mutac~ao: 0.01; Criterio de parada: numero maximo de gerac~oes Populac~ao inicial: 100 indivduos; Numero maximo de gerac~oes: 100;

    Tabela 5.17: Para^metros utilizados no AG

    enquanto o eixo y representa o valor medio da func~ao objetivo.

    70

  • [P1]: Problema multimodal bidimensional

    x? = arg mimx xTATAx 10[1 1] cos(2Ax)

    sujeito a

    8>: (x1 2)2 + (x2 2)2 = 1

    4 < xi < 4; i = 1; 2

    com

    A =

    264 1 00 4

    375

    10 20 30 40 50 60 70 80 90 1001.4

    1.2

    1

    0.8

    0.6

    0.4

    0.2

    0

    0.2

    0.4

    Geraes

    FO

    Pro

    blem

    a P1

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.1: Resultado problema P1

    Para uma melhor visualizac~ao dos resultados, os valores da func~ao objetivo

    foram contadas a partir da decima gerac~ao. A gura 5.1 ilustra que o AG apresenta

    um melhor rendimento com a aplicac~ao do operador de busca local a partir da

    vigesima gerac~ao.

    71

  • [P2]: Func~ao Rastringin Tridimensional

    x? = arg mimx xTx 10[1 1 1] cos(2x)

    sujeito a

    8>: (x1 0:65)2 + (x2 0:65)2 + (x3 0:65)2 = 15 < xi < 5; i = 1; 2; 3

    10 20 30 40 50 60 70 80 90 10028

    27

    26

    25

    24

    23

    22

    21

    20

    19

    18

    Geraes

    FO

    Pro

    blem

    a P2

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.2: Resultado problema P2

    Para uma melhor visualizac~ao dos resultados, os valores da func~ao objetivo

    foram contadas a partir da decima gerac~ao. A gura 5.2 ilustra que o AG apresenta

    um melhor rendimento com a aplicac~ao do operador de busca local a partir da

    vigesima gerac~ao.

    72

  • [P3]: Problema Quadratico

    x? = arg mimx x12 + x2

    2 + x32

    sujeito a

    8>: (x1 2)2 + (x2 1)2 + 4(x3 1)2 = 14 < xi < 4; i = 1; 2; 3

    10 20 30 40 50 60 70 80 90 1000.9

    1

    1.1

    1.2

    1.3

    1.4

    1.5

    1.6

    Geraes

    FO

    Pro

    blem

    a P3

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.3: Resultado problema P3

    Para uma melhor visualizac~ao dos resultados, os valores da func~ao objetivo

    foram contadas a partir da decima gerac~ao. A gura 5.3 ilustra que o AG apresenta

    um melhor rendimento com a aplicac~ao do operador de busca local a partir da

    vigesima gerac~ao.

    73

  • [P4]: Problema n~ao Quadratico

    x? = arg mimx (x1 2)4 + (x1 2x2)2

    sujeito a

    8>: x12 x2 = 0

    4 < xi < 4; i = 1; 2

    0 20 40 60 80 1006

    5

    4

    3

    2

    1

    0

    Geraes

    FO

    Pro

    blem

    a P4

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.4: Resultado problema P4

    Para este problema observamos um melhor rendimento do AG com a aplicac~ao

    do operador de busca local logo nas primeiras gerac~oes, como ilustrado na gura

    5.4. Ate a vigesima gerac~ao tambem se observa, em algumas gerac~oes, uma rapida

    converge^ncia caracterizada por saltos no valor medio da func~ao objetivo. A partir

    da vigesima gerac~ao este feno^meno ja n~ao ocorre, sendo que o valor medio da

    func~ao objetivo reduz a uma taxa semelhante ao AG sem busca local.

    74

  • [P5]: Problema quadratico em R5

    x? = arg mimx 5:3578547x32 + 0:8356891x1x5 +

    37:293239x1 40792:141;

    sujeito a

    8>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:

    85:334407 + 0:0056858x2x5

    +0:0006262x1x4 0:0022053x3x5 = 92;78 < x1 < 102;

    33 < x2 < 45;

    27 < x3 < 45;

    27 < x4 < 45;

    27 < x5 < 45

    0 20 40 60 80 1003.19

    3.18

    3.17

    3.16

    3.15

    3.14

    3.13

    3.12

    3.11

    3.1

    3.09x 104

    Geraes

    FO

    Pro

    blem

    a P5

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.5: Resultado problema P5

    Mais uma vez observamos na gura 5.5 um melhor rendimento do AG com

    75

  • a aplicac~ao do operador de busca local logo nas primeiras gerac~oes e um gradual

    distanciamento do valor medio da func~ao objetivo, indicando a atuac~ao positiva

    deste operador ao longo de todas as gerac~oes.

    [P6]: Problema polinomial de grau 6 em R7

    x? = arg mimx (x1 10)2 + 5(x2 12)2 + x43 + 3(x4 11)2 +

    10x56 + 7x6

    2 + x74 4x6x7 10x6 8x7;

    sujeito a

    8>: 4x12 + x2

    2 3x1x2 + 2x32 + 5x6 11x7 = 0;10 < xi < 10; i = 1; ; 7

    10 20 30 40 50 60 70 80 90 100350

    400

    450

    500

    550

    600

    650

    700

    750

    800

    Geraes

    FO

    Pro

    blem

    a P6

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.6: Resultado problema P6

    Para uma melhor visualizac~ao dos resultados apresentados na gura 5.6, os

    valores da func~ao objetivo foram contadas a partir da decima gerac~ao. Ate a

    vigesima gerac~ao o AG com busca local n~ao apresenta um rendimento superior

    quando comparado ao AG sem a busca local, mas este quadro se inverte nas

    76

  • gerac~oes seguintes. A partir da trigesima gerac~ao ambas metodologias evoluem de

    forma parecida.

    [P7]: Problema exponencial em R5

    x? = arg mimx exp(x1x2x3x4x5)

    sujeito a

    8>>>>>>>:x1

    2 + x22 + x3

    2 + x42 + x5

    2 = 10;

    2:3 < xi < 2:3 i = 1; 23:2 < xi < 3:2 i = 2; 3; 4; 5

    10 20 30 40 50 60 70 80 90 1002

    1.8

    1.6

    1.4

    1.2

    1

    0.8

    0.6

    0.4

    0.2

    Geraes

    FO

    Pro

    blem

    a P7

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.7: Resultado problema P7

    Para uma melhor visualizac~ao dos resultados apresentados na gura 5.7, os

    valores da func~ao objetivo foram contadas a partir da decima gerac~ao. Ate a

    trigesima gerac~ao o AG com busca local apresenta um rendimento superior quando

    comparado ao AG sem a busca local, porem evoluindo de forma parecida. Nas

    77

  • gerac~oes seguintes, o AG sem busca local apresenta uma perda de rendimento,

    enquanto que a o algoritmo hibridizado continua a apresentar uma evoluc~ao no

    valor da func~ao objetivo, mostrando que sua atuac~ao ainda se faz presente de

    forma signicativa.

    [P8]: Problema cubicox? = arg mimx 3

    p3 x1x2x3

    sujeito a

    8>: x12 + x2

    2 + x32 = 1;

    0 < xi < 1 i = 1; 2; 3

    10 20 30 40 50 60 70 80 90 1000

    0.01

    0.02

    0.03

    0.04

    0.05

    0.06

    0.07

    0.08

    Geraes

    FO

    Pro

    blem

    a P8

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.8: Resultado problema P8

    Para uma melhor visualizac~ao dos resultados apresentados na gura 5.8, os

    valores da func~ao objetivo foram contadas a partir da decima gerac~ao. A gura

    5.8 ilustra que o AG apresenta um melhor rendimento com a aplicac~ao do operador

    de busca local.

    78

  • [P9]: Problema cubico em R7

    x? = arg mimx x1x2x3

    sujeito a

    8>>>>>>>:x2x7 1250x5 x2x4 + 1250x4 = 0;10 < xi < 10000 i = 1; 4; 5; 6; 7

    1000 < xj < 10000 i = 2; 3

    0 20 40 60 80 1009

    10

    11

    12

    13

    14

    15

    Geraes

    log(F

    O)

    Prob

    lema P

    9

    AG sem busca local (valor mdio)AG com busca Local (valor mdio)

    Figura 5.9: Resultado problema P9

    Observando a gura 5.9, ate a decima gerac~ao as duas metodologias apresentam

    um rendimento semelhante. Entre as gerac~oes dez e trinta, o AG hibridizado

    consegue uma melhora nos resultados, reduzindo o valor da func~ao objetivo a uma

    taxa superior quando comparada ao AG padr~ao. Nas gerac~oes seguintes as duas

    metodologias n~ao apresentam melhoria alguma.

    Em todas as simulac~oes realizadas, o operador de busca local apresentou um

    bom rendimento, obtendo uma melhora na qualidade da resposta encontrada pelo

    79