APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO Profa. Mariana Cavalca Baseado em: Material didático do Prof. Dr. Carlos Henrique V. Moraes da UNIFEI Curso de verão da Profa. Gisele L. Pappa Material didático do Prof. Luís R. M. Lopes
IA? IC? Computação Evolutiva? Algoritmos Bio-Inspirados? Inteligência Artificial: Segundo o Dicionário Aurélio: Ramo da ciência da computação dedicado a desenvolver equivalentes computacionais de processos peculiares à cognição humana, como, p. ex., a produção de inferências lógicas, o aprendizado, a compreensão de linguagem natural e reconhecimento de padrões.
IA? IC? Computação Evolutiva? Algoritmos Bio-Inspirados? Alguns materiais colocam que inteligência artificial é um subconjunto de inteligência computacional. Inteligência Computacional: Estuda técnicas naturais do homem ou da natureza de resolver problemas complexos.
IA? Computação Evolutiva? Algoritmos Bio-Inspirados? Computação Evolutiva: É um conjunto de técnicas inspiradas na teoria da evolução de Darwin, onde afirma-se que a vida na Terra é o resultado de um processo de seleção, feito pelo meio ambiente, em que somente os mais aptos e adaptados possuirão chances de sobreviver e, consequentemente, reproduzir-se.
IA? Computação Evolutiva? Algoritmos Bio-Inspirados? Algoritmos Bio-Inspirados: Natureza utilizada como fonte de inspiração ou metáfora para desenvolvimento de novas técnicas computacionais utilizadas para resolver problemas complexos. Nesta linha de raciocínio: algoritmos de computação evolutiva são um tipo de algoritmos bio-inspirados.
IA? Computação Evolutiva? Algoritmos Bio-Inspirados? Quem quiser se aprofundar em tais teorias: busque referências e disciplinas na área de ciência da computação. Aqui em TCO, tais algoritmos são ferramentas!
Tem-se um população formada por um número pré-definido de indivíduos (escolha do projetista); Cada indivíduo possui um código genético; Esse código é chamado cromossomo; Tradicionalmente, um cromossomo é um vetor de bits (mas pode também ser um conjunto de valores reais, por exemplo).
Fitness: é a função de custo Cada cromossomo é a entrada de tal função que deve retornar um valor inteiro; Indivíduos com valores menores são mais adaptados e sobrevivem; Lei da Seleção Natural!
Tal Seleção Natural pode ser feita por diversos métodos, por exemplo: Roleta Coloca-se os indivíduos em uma roleta, dando a cada um uma fatia proporcional à sua aptidão relativa; Depois roda-se a agulha da roleta. O indivíduo em cuja fatia a agulha parar permanece para a próxima geração; Repete-se o sorteio quantas vezes forem necessárias para selecionar a quantidade desejada de indivíduos.
Tal Seleção Natural pode ser feita por diversos métodos, por exemplo: Torneio Utiliza sucessivas disputas para realizar a seleção; Para selecionar k indivíduos, realiza k disputas, cada disputa envolvendo n indivíduos escolhidos ao acaso; O indivíduo de maior aptidão na disputa é selecionado.
Os indivíduos selecionados podem reproduzir (crossover) ou sofre mutações; Tipicamente os melhores indivíduos se reproduzem; A mutação tem um caráter secundário, ocorrendo em uma probabilidade bem pequena.
Depois de n-gerações (é possível definir um critério de parada), o melhor indivíduo (com menor valor da função de custo) irá sobreviver e será a resposta do problema de otimização.
Parâmetros de Ajuste: Definição do tipo e tamanho do cromossomo da cada indivíduo; Tamanho da população; Definição da Fitness (Função de Custo); Taxa de cruzamento; Taxa de mutação; Intervalo de geração; Critério de parada. O Matlab possui um toolbox específico para solução de problemas por algoritmos genéticos.
Vantagens e Desvantagens: São especialmente interessantes em problemas difíceis de otimizar de forma convencional; Se uma técnica tradicional puder ser empregada, normalmente acha melhor solução mais rápido; Difícil prova de estabilidade.
APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO Profa. Mariana Cavalca Bom estudo!