Uma Ferramenta Baseada em Algoritmos Genéticos para a Geração de Tabela de Horário Escolar

Tamanho: px
Começar a partir da página:

Download "Uma Ferramenta Baseada em Algoritmos Genéticos para a Geração de Tabela de Horário Escolar"

Transcrição

1 Uma Ferramenta Baseada em Algoritmos Genéticos para a Geração de Tabela de Horário Escolar Cherze C. Freitas 1, Priscilla R. B. Guimarães 1, Manoel C. M. Neto 1, Frederico J. R. Barboza 1 1 Faculdade Ruy Barbosa (FRB) Salvador BA - Brasil {cherze, priscillabagano, manoelnetom, fred.barboza}@gmail.com Abstract. By the complexity and time expensed in the elaboration of school schedules, the professional that do it needs a computational program that helps then in your work. This happens because the variety of the restrictions of a scholar timetabling makes itself a NP-Complex problem, that can't be solved through conventionals methods of programming. This article describes the theory behind the problem of the allocation of school schedule and its solution, which uses a meta-heuristic programming technique that is based in the natural selection of the species, the Genetic Algorithms (GAs). The Kairós, a computing tool, was developed to satisfy the necessities of Faculdade Ruy Barbosa (FRB) finding a schedule that the user wants. Keywords: Genetic Algorithms, timetabling, optimization. Resumo. A complexidade e o tempo gasto na elaboração de horários escolares levam à necessidade de programas computacionais que auxiliem em seu processo de desenvolvimento. O amplo conjunto de restrições do timetabling escolar faz dele um problema NP-Complexo, impossibilitando sua solução através de métodos convencionais de programação. Este artigo aborda a teoria sobre o problema da alocação de horário escolar e sua solução, utilizando uma técnica de programação metaheurística baseada na seleção natural das espécies, os Algoritmos Genéticos (AGs). Uma ferramenta chamada Kairós foi desenvolvida para satisfazer as necessidades da Faculdade Ruy Barbosa (FRB) e se propõe a encontrar um horário satisfatório ao usuário. Palavras-chave: Algoritmos Genéticos, timetabling, otimização. 1 Introdução A elaboração do horário escolar em instituições de ensino é realizada geralmente de forma manual, exigindo um considerável tempo para sua conclusão. Isso ocorre, principalmente, porque é necessário respeitar um conjunto grande de restrições para que o horário obtido satisfaça as necessidades dos envolvidos: os professores e a instituição. O processo de alocação de horário escolar é denominado timetabling escolar. Um problema de otimização combinatória da classe dos NP-Difíceis, no qual é mais fácil verificar se o resultado apresentado está correto do que obter analiticamente tal solução em tempo polinomial [Barboza 2003]. Vários métodos foram propostos na

2 tentativa de se obter uma solução. Alguns deles são: Busca Tabu [Costa 2003], Recozimento Simulado [Silva 2005] e GRASP (Greedy Randomized Adaptive Search Procedure) [Costa 2003]. Por possuírem um único conjunto de regras, as ferramentas de montagem de horário escolar tornam-se inviáveis para serem utilizadas em um amplo grupo de instituições. Assim elas são desenvolvidas para se adequar às necessidades específicas da instituição que a utiliza. A ferramenta apresentada nesse artigo foi elaborada para satisfazer os interesses da Faculdade Ruy Barbosa (FRB). Assim, foi realizado um levantamento bibliográfico sobre Algoritmos Genéticos e Timetabling com o objetivo de adquirir o conhecimento necessário para agregar valores e respaldo científico ao trabalho. Através de entrevistas feitas com os coordenadores da FRB, foram identificadas suas necessidades e analisadas suas práticas de trabalho no processo de construção do horário acadêmico. A partir das informações extraídas, foi desenvolvido o documento de especificação de requisitos. Em uma última etapa, foram aplicados testes na ferramenta. Feitos utilizando dados reais, foi possível analisar o comportamento da Kairós sob condições para as quais foi projetada. Ajustes foram feitos a partir do surgimento de eventuais respostas negativas. Na seção 2, estão relatados e analisados os conceitos básicos relativos ao timetabling escolar e aos algoritmos genéticos. Em seguida, na seção 3, há uma breve explicação sobre a ferramenta. 2 Timetabling e Algoritmos Genéticos Neste tópico, estão apresentadas as informações e os conceitos inerentes ao trabalho e as análises necessárias para seu desenvolvimento. De início, na seção 2.1, está definido o conceito do problema de timetabling e suas características e na 2.2, algoritmos genéticos e seu funcionamento. 2.1 Timetabling O problema de geração de quadros de horário, timetabling, é um problema de otimização que possui várias aplicações práticas, por exemplo, escalonamento de enfermeiros [Cheang et al 2003], horários de aula em instituições de ensino [Burke et al 1997; Caldeira e Rosa 1997] e planejamento de transporte público [Lourenço, Paixão e Portugal 2000]. Com um amplo conjunto de restrições, que varia de acordo com o contexto [Costa e Bruna 2002], um dos aspectos evidenciados em análises feitas nesse tipo de problema é o tempo gasto (não polinomial) na busca por um resultado que satisfaça as regras pré-estabelecidas. Outro fato importante é a qualidade do resultado obtido, já que seu extenso conjunto de regras torna a sua obtenção mais complexa. Em termos computacionais, não é conveniente o uso de programação determinística para solucionar timetabling. Muitos estudos são realizados na tentativa de propor métodos para auxiliar a descoberta de uma solução ótima, pois, a sua

3 complexidade computacional estimula o contínuo estudo sobre o tema [Burke et al 1997]. O problema de timetabling escolar consiste em organizar as aulas em um intervalo de tempo, geralmente uma semana, de modo que elas satisfaçam as restrições pré-definidas [Filho 2001]. Inicialmente, é preciso estabelecer o conjunto de regras. As restrições podem ser divididas em dois grupos, as com alta importância, que quando não satisfeitas geram horários inúteis, e as com baixa, cujas violações devem ser minimizadas, mas, caso ocorram, não os invalidam [Moreira, 2003]. A solução ótima, para este caso, tem como característica cumprir, da melhor forma possível, com todas as regras definidas nesses dois grupos. O conjunto de restrições varia com as características da instituição e dos envolvidos no processo de desenvolvimento, geralmente os coordenadores. A montagem do horário é feita, na maioria dos casos, de forma manual e leva um considerável tempo na sua elaboração. No próximo tópico serão descritos os parâmetros e operadores do Algoritmo Genético (AG). 2.2 Algoritmos Genéticos (AGs) Na segunda metade do século XIX, após várias observações e experimentos, Charles Darwin apresentou sua teoria da seleção natural em A Origem das Espécies, e no mesmo período, o austríaco Gregory Mendel desenvolveu os princípios básicos da genética moderna. Os dois trabalhos combinados geraram a atual teoria da evolução que diz que uma população de indivíduos que se reproduzem sexualmente é resultado da mutação e recombinação dos genes sobreviventes das gerações anteriores [Timóteo 2002]. Nesse mesmo período, começou-se a simular sistemas genéticos computacionalmente. Jonh Holland foi o pioneiro nessas pesquisas e seu livro é até hoje considerado a principal referência sobre algoritmos genéticos. A partir daí, os AGs começaram a ser usados em diversos domínios [Timóteo 2002] Funcionamento dos AGs Inspirados na teoria evolutiva das espécies e baseados nos mecanismos da seleção natural, os AGs são algoritmos de busca e otimização que consideram cada indivíduo como sendo candidato a integrante do resultado ótimo [Filho, 2000]. Os algoritmos genéticos, diferentes dos métodos tradicionais determinísticos de otimização, utilizam meios probabilísticos para a convergência do resultado, trabalham com parâmetros codificados e avaliam cada indivíduo isoladamente, possuindo um paralelismo implícito. A cada geração, descartam-se os piores indivíduos e os melhores permanecem transmitindo suas qualidades. O algoritmo utiliza o conhecimento adquirido anteriormente para formar uma nova população mais próxima do resultado esperado (MITCHELL, 1998).

4 Uma desvantagem dos AGs é a mudança do sistema de codificação e dos parâmetros genéticos em cada tipo de problema, sendo necessário um estudo particular de cada caso Representação da Solução A representação da solução é de fundamental importância para um adequado funcionamento dos algoritmos genéticos. Jonh Holland propôs uma representação binária para sua solução que, embora tenha se mostrado eficiente em vários problemas, não consegue codificar com exatidão os dados em aplicações mais complexas [Holland 1975]. Com isso, novas alternativas surgiram, como a codificação por vetor de números inteiros que representam as cidades e as rotas no problema do caixeiro viajante e a codificação como uma árvore apresentada por Koza (1992). A representação deve-se adequar à natureza do problema em questão. Assim, a estrutura que representa o indivíduo pode variar de uma simples cadeia de caractere a estruturas complexas [Barboza 2003] Geração da População Inicial A população inicial pode ser gerada de forma aleatória ou com alguma heurística. A forma aleatória é a mais utilizada, pois é a mais simples e garante uma maior diversidade das estruturas [Timóteo 2002]. Porém existem casos em que pode ser admitida alguma heurística, por exemplo, quando se sabe a natureza da resposta esperada [Costa e Bruna 2002]. Outro fator que deve ser considerado é o tamanho da população. Quando não se define uma quantidade razoável de informações tornando a população muito pequena e restringindo o nível de variabilidade genética (estagnar o processo evolutivo e baixar o desempenho). Quando a população é muito grande, mais recursos computacionais são necessários e o algoritmo pode apresentar um desempenho de execução abaixo do esperado. Portanto, é necessário um equilíbrio na escolha do número inicial de indivíduos da população Operadores Genéticos Com o conjunto inicial de indivíduos estabelecido, são utilizados os operadores genéticos até se obter a melhor solução. A princípio é atribuído a cada indivíduo um valor que define a qualidade da possível solução, o fitness. Um valor numérico especificado pela função de avaliação. Em problemas de otimização matemática, o fitness é o próprio valor retornado pelas funções ao se aplicar como parâmetro o indivíduo decodificado. Já quando se possui muitas regras, o grau de aptidão é obtido por funções baseadas em penalidades. Com todos os indivíduos da população avaliados, o AG seleciona um grupo deles para participar do cruzamento (crossover). A seleção pode ser feita por vários métodos, abaixo estão apresentados alguns métodos: Seleção determinística: os indivíduos são selecionados a partir de uma função que estabelece o grau da expectativa de descendentes;

5 Seleção por roleta giratória: os indivíduos recebem fatias da roleta a partir do valor do seu grau de aptidão. Um giro na roleta seleciona uma delas. Os indivíduos mais aptos tendem a ser freqüentemente selecionados, o que pode ocasionar uma convergência da população; Seleção por torneio: são sorteados aleatoriamente dois indivíduos e faz-se uma comparação entre eles, o com um maior fitness é selecionado; Seleção aleatória: cada indivíduo tem a mesma probabilidade de ser selecionado. Assim, pode ocorrer a seleção de indivíduos não aptos, provocando estagnação. Steady State Selection: uma pequena quantidade de indivíduo da geração atual é substituída pelos descendentes gerados a partir de cruzamentos e mutações [Mitchell 1998]. No processo de seleção pode ser utilizada uma técnica de elitismo, na qual um grupo de indivíduos da população atual é preservado na seguinte. Os indivíduos escolhidos, geralmente, são os de maiores fitness. A reprodução fica a cargo do crossover que mistura aos pares os genes remanescentes do processo de escolha e gera uma nova solução. Essa tende a ser mais apropriada para o problema que a anterior, pois foi gerada pelo cruzamento dos melhores indivíduos. São escolhidos genes de dois cromossomos e juntados para formarem um terceiro. Os pais são divididos em pontos sorteados para gerarem o filho. Cada parte filho foi herdada de cada um dos pais, mas o percentual de características vindo de um e do outro é aleatório. A escolha desses pontos pode ser feita utilizando-se vários métodos: 1PX (Single Point Crossover): é selecionado um ponto aleatoriamente nos cromossomos e, a partir dele, é efetuada a troca do material genético (Figura 1); Figura 1. Crossover 1PX Fonte: MOREIRA, 2003, p.17 2PX (Two Point Crossover): segue o mesmo processo do 1PX, mas, em vez de um ponto, são selecionados dois pontos aleatórios nos cromossomos (Figura 2);

6 Figura 2. Crosover 2PX Fonte: MOREIRA, 2003, p.17 MPX (Multiple Point Crossover): são sorteados vários pontos de corte para, a partir deles, efetuar a troca (Figura 3); Figura 3. Crossover MPX Fonte: MOREIRA, 2003, p.17 Uniforme (Uniform Crossover): partes do material genético são trocadas aleatoriamente entre os indivíduos, respeitando a posição do gene na estrutura. No decorrer de várias gerações, independentemente do tamanho inicial, o processo evolutivo pode estagnar e o algoritmo convergir a um mínimo local (uma solução que satisfaz somente um determinado ponto do problema). Para evitar a estagnação os algoritmos genéticos utilizam a mutação. A mutação existe para garantir uma variedade maior de indivíduos e explorar melhor o espaço de soluções possíveis. Quando o processo sofre estagnação, o procedimento muda alguns genes aleatoriamente (sem atrapalhar o progresso já conquistado) para permitir que novas características inexistentes nas gerações anteriores apareçam. Como essa alteração é aleatória, não é possível garantir que a mesma seja boa. Em caso positivo, permanecerá nas próximas gerações, caso contrário, será eliminada pela seleção. Na próxima seção, será apresentada a Kairós, ferramenta desenvolvida nesse trabalho para auxiliar a elaboração de horários escolares, satisfazendo as necessidades da Faculdade Ruy Barbosa. 3 A Ferramenta Kairós Nesse tópico será descrita a Kairós, uma ferramenta baseada em algoritmos genéticos para a geração de tabela de horário escolar. Com o objetivo de oferecer aos coordenadores da Faculdade Ruy Barbosa a oportunidade de construir a grade semestral com facilidade e rapidez, comparado com as técnicas usadas atualmente. Na FRB, os coordenadores elaboram os horários manualmente e começam a defini-los meses antes do início do semestre letivo. Toda essa antecipação é necessária para que os problemas que, porventura, venham a surgir, devido à dificuldade do

7 processo, possam ser resolvidos antes que causem transtornos. Foram apresentadas as seguintes regras estabelecidas por eles no início do processo: A impossibilidade de duas disciplinas de um mesmo professor estarem alocadas no mesmo momento; As indisponibilidades do professor de lecionar na faculdade em determinados períodos; Maior atenção às indisponibilidades de horário de professores que são fortemente ligados a determinadas disciplinas (não deve ser substituído); Com a existência de professores que lecionam em cursos diferentes na mesma faculdade, pode ocorrer choque em seus horários entre as disciplinas dos cursos em que ensinam. Na FRB, isso ocorre entre os cursos de Administração, Sistemas de Informação e Ciência da Computação. Além das restrições inerentes ao problema e das que existem por razão institucional, outras são particulares a cada coordenador, por exemplo: Possibilitar que matérias distintas, que são continuidade uma da outra, serem alocadas no mesmo intervalo de tempo. Matérias com essa característica geralmente estão disponibilizadas em períodos e turmas diferentes; As informações referentes às restrições são identificadas através de uma comunicação entre coordenadores e professores. Para conhecer quais as indisponibilidades de horários do corpo docente, é solicitado a cada integrante que as informem através de um formulário. Após definir as regras, identificar as informações relativas a elas e estabelecer os graus de importância, inicia-se a organização dos horários. Os problemas mais freqüentes citados pelos coordenadores da FRB são: Ocorre uma coincidência de indisponibilidades por parte do corpo docente em um determinado horário; A priorização de professores em determinadas matérias aumenta as chances de colisões; O choque de horários de um mesmo professor entre cursos diferentes. Os conflitos encontrados no decorrer da elaboração geram situações indesejáveis. O fato de muitos professores não estarem disponíveis para lecionar em alguns poucos períodos pode causar mudanças na composição do corpo docente e inviabilizar o fechamento da grade. Quando há conflitos entre os horários dos professores que ensinam em outros cursos, os coordenadores se reúnem e tentam encontrar uma forma de conciliação. Não ocorrendo, algum professor deve ser substituído ou outro deve ser contratado. Por toda sua complexidade de elaboração, uma ferramenta que gerencie e realize a montagem de horários seria de grande utilidade para os elaboradores de grade de horários, no caso as coordenações da FRB. 3.1 Organização da Ferramenta

8 A ferramenta está organizada nos seguintes módulos (Figura 4): O módulo de inserção e apresentação de dados; O módulo de geração do horário; O módulo de acesso aos dados armazenados em banco de dados. Figura 4. Arquitetura da Ferramenta Kairós Módulo de Inserção e Apresentação dos Dados O módulo de entrada e saída de dados é a interface do sistema com o usuário. Ele compreende todos os formulários de cadastro de dados (professor, disciplina, turma) e a interface de apresentação da tabela de horário escolar preenchida. Os dados são inseridos pelo usuário através de diferentes formulários dispostos no menu principal. O formulário apresentado pela Figura 5 corresponde ao cadastro dos parâmetros da tabela, que são os dias e os períodos para os quais o horário vai ser montado. O formato do horário é indispensável para o funcionamento da ferramenta, pois ele será a base para o cromossomo utilizado pelo algoritmo genético. Figura 5. Cadastro do Horário

9 As disciplinas a que comporão a grade, assim como os professores e suas indisponibilidades, devem ser fornecidos. A Figura 6 apresenta o formulário de cadastro das disciplinas e dos professores. Figura 6. Cadastro de Disciplinas e Professores Como se pode ver na Figura 7, cada professor está ligado a uma ou mais disciplinas, no entanto, uma disciplina só está ligada a somente um professor. Disciplinas com o mesmo nome e ementa, mas de turnos e/ou cursos diferente, são consideradas distintas e podem ou não ter o mesmo professor. Disciplina 1..N 1 Professor Figura 7. Relacionamento entre Professores e Disciplinas Os professores possuem individualmente uma tabela de disponibilidades onde informam as possibilidades de lecionarem em determinados horários. As disponibilidades de cada professor só podem ser adicionadas após os mesmos estarem devidamente cadastrados. A Figura 8 apresenta uma tabela preenchida com as disponibilidades de um professor.

10 Figura 8 - Cadastro das disponibilidades de um professor Módulo de Geração de Horários Este tópico apresenta de forma geral as atividades que o módulo de geração de horários é responsável. Nele está contida toda a lógica de funcionamento do algoritmo genético (AG) e da utilizada pela montagem manual do horário. O AG trabalha a partir de soluções que são geradas no início da execução de forma aleatória para que se tenha uma maior variedade. Estas soluções, também chamadas de cromossomos, são vetores de números inteiros. O tamanho do vetor de genes é definido pelo formato do horário e a quantidade de professores. É feita uma multiplicação do número de dias, do número de períodos e da quantidade de professores cadastrados. tamanho = ndias * nperiodos * qtdprofessores Cada número inteiro do vetor é um código atribuído a uma disciplina no momento de cadastro. A codificação por inteiros foi escolhida por atender bem ao problema (consegue representar fielmente os dados) e ser computacionalmente mais leve de se manipular do que o tipo String ou outros objetos [MICHELL 1998]. Com a população inicial gerada, o algoritmo genético, através de métodos baseados na teoria da evolução da espécie, promove o cruzamento dos indivíduos mais aptos (maiores valores de fitness) criando uma nova geração. As operações genéticas utilizadas pelo AGs são a classificação (fitness), a seleção, o crossover (cruzamento) e mutação. A cada geração a tendência é que melhores indivíduos venham surgindo, mas isso pode vir a não acontecer, devido a outros fatores. Para evitar uma estagnação nas populações, ou seja, que a maioria dos indivíduos permaneçam no mínimo local por muito tempo, efetua-se a mutação em indivíduos selecionados aleatoriamente, o que consiste em trocar alguns de seus genes por outros valores.

11 A mutação, se utilizada constantemente, pode também prejudicar a qualidade da população, pois a depender da quantidade e da qualidade de indivíduos modificados a população pode tornar-se inviável, ou seja, possuir indivíduos com baixos valores de fitness. Com isso, uma nova população surge contendo os novos indivíduos gerados e os indivíduos selecionados a partir da técnica de elitismo, nesse caso, 10% da população anterior. A execução termina quando é atingido o número máximo de gerações. Na Kairós, o número de gerações foi estabelecido empiricamente a partir de testes e de acordo com a qualidade dos resultados obtidos. Entre os indivíduos da última população, o indivíduo de maior fitness será a solução apresentada ao usuário. Assim sempre será escolhida a melhor solução gerada pelo AG, ou seja, mesmo que não seja a ótima, será a melhor encontrada até aquela geração. A Figura 9 representa como é a exibição de um horário para um determinado semestre gerado pela Kairós. Figura 9. Tabela Horário escolar gerada pela Kairós Módulo de Acesso a Dados O módulo aqui descrito representa as classes de conexão e acesso ao banco de dados que permitem a persistência das informações relativas aos professores, matérias e horários. Este é o único que conhece os detalhes da estrutura dos dados. Como gerenciador, é utilizado o banco de dados orientado a objetos DB4O 6.0 para Java, devido a sua facilidade em armazenar e recuperar as informações nesta linguagem e independência com relação à arquitetura e sistema operacional. Os dados são armazenados para que o usuário possa efetuar uma futura visualização de horários gerados ou para uma nova execução do algoritmo em outra oportunidade. 4 Testes e Resultados Os coordenadores da FRB disponibilizaram uma tabela com os professores e as disciplinas dos seus respectivos cursos. A utilização desses dados serviu para que os

12 testes representassem com maior fidelidade as situações presentes no mundo real, podendo assim comparar qualitativamente seus resultados com os horários construídos para os semestres anteriores. Os parâmetros (quantidade de indivíduos da população, número de gerações, taxa de crossover) foram determinados, para os testes, de acordo com o tamanho da base de dados e dos recursos computacionais disponíveis. Para uma quantidade de 48 disciplinas (curso de Ciências da Computação na FRB), 17 professores e uma tabela com 24 células (7 dias e 5 períodos de 50 minutos cada). Foi definida uma população inicial composta por 5000 cromossomos (definido empiricamente) e um mínimo de 500 gerações para gerar um resultado aceitável que necessite de pouca intervenção do usuário. Feitos em um Intel Pentium D 2.66GHz e 1GB de memória RAM, o tempo de cada teste foi em torno de 30 minutos para 3000 de população e 500 gerações (com resultados não muito bons). Em uma hora com esses valores sendo 5000 e 1000 respectivamente, tendo como resultado, em média, dois horários em branco e um com conflito entre duas disciplinas por grade semestral. Veja na Tabela 1 os dados dos demais testes efetuados na Kairós. Tamanho da População Número de Gerações Tabela 1. Resultados obtidos nos testes Horários em Branco (média) Horários em Conflito (média) Tempo de Processamento (minutos) Conclusão Existem vários estudos na tentativa de solucionar o problema de timetabling escolar. Apesar de existirem diversas ferramentas, há a dificuldade dos usuários em encontrar uma que satisfaça as suas necessidades por completo. Dessa forma, essas são construídas ou modificadas para atender a cada instituição. A Faculdade Ruy Barbosa não utiliza ferramentas computacionais na montagem de seus horários, pois, mesmo dentro da própria instituição, há variações entre as características de cada curso. A Kairós foi desenvolvida para satisfazer as necessidades dos cursos da FRB e tem como prioridade ser de fácil utilização e adaptação. Como trabalhos futuros, seria indicado disponibilizar este serviço através da internet de forma que todo o processamento dos AGs seja feita em um servidor remoto. Também, pode-se implementar uma forma de mudar dinamicamente os parâmetros genéticos de acordo com análises das características da população em tempo de execução.

13 6 Referências Barboza, F. J. R. (2003) Resumos de artigos sobre algoritmos genéticos. 32f. Mestrado em Mecatrônica - Escola de Engenharia, UFBA, Salvador. Burke, E. K. et al. (1997) Automated timetabling: the state of the art. In The Computer Journal, p Nottingham, v. 40, n.9, Julho. Caldeira, J.P. e Rosa, C. (1997) Dynamic school timetabling using genetic search. In: INTERNATIONAL CONFERENCE ON THE PRATICE AND THEORY OF AUTOMATED TIMETABLING, 2, 1997, Toronto, Canada. Proceedings (Toronto: LaSEEB Publications), p Cheang, B. et al. (2003) Nurse rostering problems: a bibliographic survey. European Journal of Operational Research, North Holland, v.151, n.3, p , Janeiro. Costa, E. O. e Bruna, M. (2003) D. Resolução de timetabling utilizando evolução cooperativa. Salvador: Universidade Federal do Paraná. Costa, F. F. da.(2003) Programação de horários em escolas via GRASP e busca tabu. 39f. Monografia (Graduação em Engenharia de Produção) Universidade Federal de Ouro Preto, Ouro Preto, São Paulo. Holland, J. H. (1975) Adaptation in Natural and Artificial System. University of Michigan Press. Koza, J. R. (1992) Genetic Programming : on the programming of computers by means of natural selection., Londres: MIT Press, 6ª edição. Lourenço, H. R., Paixão, J. P. e Portugal, R. (2000) The Crew-Scheduling Module in the GIST System. Lisboa, Portugal: Universidade de Lisboa. Mitchell, M. (1998) An introduction to genetic algorithms. 1ª edição. Londres: MIT Press. Moreira, I. G. M. (2003) Algoritmos genéticos aplicados ao problema da geração de horários. 35 f. Monografia (Informática) Escola de Informática, Universidade Católica de Pelotas, Pelotas. Ribeiro Filho, G. (2000) Melhoramentos no algoritmo genético construtivo e novas aplicações em problemas de agrupamento. 129 f. Tese (Doutorado em Computação Aplicada) Instituto Nacional de Pesquisas Espaciais, São José dos Campos. Silva, A. S. N. e. (2005) Estudo e implementação, mediante recozimento simulado, do problema de alocação de salas. 120f. Monografia (Bacharelado em Ciência da Computação) Departamento de Ciência da Computação da Universidade Federal de Lavras, Lavras, Rio Grande do Sul. Timóteo, G. T. S. (2002) Desenvolvimento de um algoritmo genético para a resolução de timetabling. 76 f. Monografia (Ciência da Computação) Departamento de Ciência da Computação, Universidade Federal de Lavras, Lavras.

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Introdução São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Leia mais

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva Computação Evolutiva Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Aula 6 Algoritmos Genéticos M.e Guylerme Velasco Roteiro Introdução Otimização Algoritmos Genéticos Representação Seleção Operadores Geneticos Aplicação Caixeiro Viajante Introdução

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Roteiro Introdução Algoritmos Genéticos Otimização Representação Seleção Operadores Genéticos Aplicação Caixeiro Viajante Introdução Algoritmos Genéticos (AGs), são métodos de otimização

Leia mais

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP 1 Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 2 Introdução http://www.formula-um.com/ Como

Leia mais

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 1 2 Introdução Evolução natural http://www.formula-um.com/

Leia mais

Max Pereira. Inteligência Artificial

Max Pereira. Inteligência Artificial Max Pereira Inteligência Artificial Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora da teoria da evolução das espécies iniciada pelo Naturalista inglês Charles

Leia mais

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng.

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. Metahuerísticas: Algoritmos Genéticos Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 8) Meta-heurísticas Classificação de métodos heurísticos: os métodos

Leia mais

Introdução aos Algoritmos Genéticos

Introdução aos Algoritmos Genéticos Introdução aos Algoritmos Genéticos Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Algoritmos Genéticos: Introdução Introduzidos

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR ALGORITMOS GENÉTICOS Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Introdução Algoritmos Genéticos são algoritmos heurísticos de busca, que utilizam regras

Leia mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Prof. Dilermando Piva Jr. ((Compilação de diversas fontes na Internet)) Principal motivação para o estudo da computação evolutiva Otimização de processos complexo e que possuem um grande número de variáveis

Leia mais

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial Algoritmos Genéticos Texto base: Stuart Russel e Peter Norving - Inteligência Artificial junho/2007 Algoritmo Genético Uma variante da busca em feixe estocástica Estado sucessor gerado pela combinação

Leia mais

Modelos Evolucionários e Tratamento de Incertezas

Modelos Evolucionários e Tratamento de Incertezas Ciência da Computação Modelos Evolucionários e Tratamento de Incertezas Aula 01 Computação Evolucionária Max Pereira Motivação Se há uma multiplicidade impressionante de algoritmos para solução de problemas,

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Características Gerais, operadores, algoritmo.

Leia mais

ELABORAÇÃO DE UMA HEURÍSTICA PARA O PROBLEMA DE QUADRO DE HORÁRIOS DOS PROFESSORES DA UNIVERSIDADE ESTADUAL DO PARANÁ CAMPUS CAMPO MOURÃO

ELABORAÇÃO DE UMA HEURÍSTICA PARA O PROBLEMA DE QUADRO DE HORÁRIOS DOS PROFESSORES DA UNIVERSIDADE ESTADUAL DO PARANÁ CAMPUS CAMPO MOURÃO ELABORAÇÃO DE UMA HEURÍSTICA PARA O PROBLEMA DE QUADRO DE HORÁRIOS DOS PROFESSORES DA UNIVERSIDADE ESTADUAL DO PARANÁ CAMPUS CAMPO MOURÃO Marcos Oliveira dos Santos (IC, FUNDAÇÃO ARAUCÁRIA), (UNESPAR/FECILCAM),

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Prof. Kléber de Oliveira Andrade pdjkleber@gmail.com Algoritmos Genéticos Conteúdo Introdução O Algoritmo Genético Binário Noções de Otimização O Algoritmo Genético com Parâmetros

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Algoritmos Genéticos Algoritmos Genéticos (AGs) constituem um mecanismo de busca adaptativa que se baseia no princípio Darwiniano de seleção natural e reprodução genética [101]. AGs são tipicamente empregados

Leia mais

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos Introdução a Sistemas Inteligentes Introdução aos Algoritmos Evolutivos Créditos Este material consiste de adaptações e extensões dos originais gentilmente cedidos: pelo Prof. Dr. Eduardo Raul Hruschka

Leia mais

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Algoritmos Genéticos 1 Semestre de 2015 Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática 1 2 Introdução Darwin Naturalistas: cada espécie havia sido criada separadamente

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

PROPOSAL OF AN EVOLUTIONARY COMPUTATION BASED SYSTEM FOR HANDLING THE SPACE ALLOCATION PROBLEM: THE CASE OF UNIVERSIDADE FEDERAL DE UBERLÂNDIA

PROPOSAL OF AN EVOLUTIONARY COMPUTATION BASED SYSTEM FOR HANDLING THE SPACE ALLOCATION PROBLEM: THE CASE OF UNIVERSIDADE FEDERAL DE UBERLÂNDIA PROPOSTA DE UM SISTEMA BASEADO EM COMPUTAÇÃO EVOLUTIVA PARA O TRATAMENTO DO PROBLEMA DE ALOCAÇÃO DE ESPAÇO FÍSICO: O CASO DA UNIVERSIDADE FEDERAL DE UBERLÂNDIA Guilherme Palhares Theodoro, Igor Santos

Leia mais

Sistema para Geração de Escalas de Plantões Médicos

Sistema para Geração de Escalas de Plantões Médicos Sistema para Geração de Escalas de Plantões Médicos Anderson Beppler 1, Daiana Petry Leite 2 1 UNIPLAC - Universidade do Planalto Catarinense Curso de Sistemas de Informação Av. Castelo Branco, 170. Bairro

Leia mais

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Patrocínio, MG, outubro de 2016 ENCONTRO DE PESQUISA & EXTENSÃO, 3., 2016, Patrocínio. Anais... Patrocínio: IFTM, 2016. ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Igor Acassio Melo

Leia mais

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples Introdução Inspiração biológica Histórico da computação evolutiva Algoritmo evolutivo simples Programação evolutiva Estratégias evolutivas Algoritmos genéticos Abordagem unificada de algoritmos evolutivos

Leia mais

3 Otimização Evolucionária de Problemas com Restrição

3 Otimização Evolucionária de Problemas com Restrição 3 Otimização Evolucionária de Problemas com Restrição 3.1. Introdução Este capítulo resume os principais conceitos sobre os algoritmos evolucionários empregados nesta dissertação. Primeiramente, se fornece

Leia mais

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Francisco Henrique de Freitas Viana Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento de Informática

Leia mais

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos SCC-230 Inteligência Artificial Thiago A. S. Pardo Solange O. Rezende 1 Computação Evolutiva (CE) Trata de sistemas para a resolução de problemas

Leia mais

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL Miquéias Augusto Ferreira Nantes 1, Douglas Peixoto de Carvalho 1 (Alunos do Curso de Matemática da Universidade Anhanguera - Uniderp)

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Algoritmos Genéticos Aluno: Fabricio Aparecido Breve Prof.: Dr. André Ponce de Leon F. de Carvalho São Carlos São Paulo Maio

Leia mais

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva Estratégias Evolutivas EEs Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br www.cear.ufpb.br/juan Estratégias Evolutivas Desenvolvidas por Rechenberg e Schwefel, e estendida por Herdy, Kursawe

Leia mais

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia Elétrica INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL Aula 06 Prof. Vitor Hugo Ferreira Representação por cromossomos Codificação

Leia mais

Sistemas Inteligentes if684. Germano Vasconcelos Página da Disciplina:

Sistemas Inteligentes if684. Germano Vasconcelos Página da Disciplina: Sistemas Inteligentes if684 Germano Vasconcelos gcv@cin.ufpe.br Página da Disciplina: www.cin.ufpe.br/~îf684/ec 1 1 Algoritmos Genéticos 2 Algoritmos Genéticos n Técnicas de busca e otimização n Metáfora

Leia mais

Algoritmos Evolutivos para Otimização

Algoritmos Evolutivos para Otimização Algoritmos Evolutivos para Otimização A área de aplicação que tem recebido mais atenção é a otimização. Uma das razões é que existem uma variedade de problemas de otimização e a maioria deles sem solução

Leia mais

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato: Inteligência Artificial Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Métodos de Busca Busca Cega ou Exaustiva: Não sabe qual o melhor nó da fronteira a ser expandido. Apenas distingue o estado objetivo

Leia mais

Pesquisa Operacional Aplicada à Mineração

Pesquisa Operacional Aplicada à Mineração Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II-b Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan Exemplo de Aplicação de Algoritmos Genéticos Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br cear.ufpb.br/juan Estrutura do Algoritmo Genético Algoritmo genético Inicio t = 0 inicializar P(t)

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS Metaheurísticas de Buscas ALGORITMOS GENÉTICOS (AG) Popularizados por John Holland podem ser considerados os primeiros modelos algorítmicos

Leia mais

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP Gilson Rogério Batista, Gideon Villar Leandro Universidade Regional do Noroeste do Estado do Rio

Leia mais

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização Algoritmos Genéticos Otimização São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin. Desenvolvido por John

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 06 Algoritmos Genéticos Edirlei Soares de Lima Algoritmos Genéticos Método de busca local. Boa abordagem para lidar com espaços de busca muito

Leia mais

CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA.

CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA. CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA. Emerson Carlos Pedrino * e-mail: ecpedrin@sel.eesc.sc.usp.br Valentin Obac Roda ** e-mail: valentin@sel.eesc.sc.usp.br

Leia mais

Figura 3.1: Fluxograma do algoritmo da Programação Genética.

Figura 3.1: Fluxograma do algoritmo da Programação Genética. 3 Programação Genética O termo Programação Genética passou a ser utilizado em 1990 nos trabalhos publicados por Koza [30] e De Garis [31]. A definição de Koza para este termo passou a predominar após a

Leia mais

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO 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

Leia mais

3 Computação Evolucionária

3 Computação Evolucionária 34 3 Computação Evolucionária Computação Evolucionária compreende diversos algoritmos inspirados no princípio Darwiniano da evolução das espécies e na genética. São algoritmos probabilísticos, que fornecem

Leia mais

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações AG Simples/Canônico (AGS) AG introduzido por Holland Funciona bem para problemas de otimização simples e/ou de pequenas dimensões A maior parte da teoria dos AGs está baseada no AGS Utilidade didática

Leia mais

3. ALGORITMOS GENÉTICOS

3. ALGORITMOS GENÉTICOS 1 3. ALGORITMOS GENÉTICOS PARTE 1 3.1 Analogia Física: a evolução das espécies 3.2 A Tradução Matemática: o algoritmo básico 3.3 Codificação dos Indivíduos 3.4 Avaliação da Aptidão de um Indivíduo 3.5

Leia mais

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados Otimização Jaime Arturo Ramírez Conteúdo 1. Introdução 2. Analogia de mecanismos de seleção natural com sistemas artificiais 3. Algoritmo genético modelo 4. Um GA simples 5. Representação, genes e cromossomos

Leia mais

3 Métodos de Otimização

3 Métodos de Otimização 3 Métodos de Otimização Problemas de otimização são relacionados a minimização ou maximização de função de uma ou mais variáveis num determinado domínio, possivelmente com a existência de um conjunto de

Leia mais

ESTUDO DO EFEITO DOS PARÂMETROS GENÉTICOS DE UM ALGORITMO GENÉTICO NA SOLUÇÃO OTIMIZADA E NO TEMPO DE CONVERGÊNCIA EM UMA FUNÇÃO DE DUAS VARIÁVEIS

ESTUDO DO EFEITO DOS PARÂMETROS GENÉTICOS DE UM ALGORITMO GENÉTICO NA SOLUÇÃO OTIMIZADA E NO TEMPO DE CONVERGÊNCIA EM UMA FUNÇÃO DE DUAS VARIÁVEIS ESTUDO DO EFEITO DOS PARÂMETROS GENÉTICOS DE UM ALGORITMO GENÉTICO NA SOLUÇÃO OTIMIZADA E NO TEMPO DE CONVERGÊNCIA EM UMA FUNÇÃO DE DUAS VARIÁVEIS Marcelo Henrique dos Santos Universidade de Uberaba, Engenharia

Leia mais

UTILIZANDO TÉCNICAS DE ALGORITMO GENÉTICO PARA RESOLUÇÃO DO PROBLEMA DE GERAÇÃO DE GRADE HORÁRIA PARA ENFERMARIAS

UTILIZANDO TÉCNICAS DE ALGORITMO GENÉTICO PARA RESOLUÇÃO DO PROBLEMA DE GERAÇÃO DE GRADE HORÁRIA PARA ENFERMARIAS Conferência IADIS Ibero-Americana Computação Aplicada 2013 UTILIZANDO TÉCNICAS DE ALGORITMO GENÉTICO PARA RESOLUÇÃO DO PROBLEMA DE GERAÇÃO DE GRADE HORÁRIA PARA ENFERMARIAS Ricardo Soares Bôaventura 1,

Leia mais

Métodos de pesquisa e Optimização

Métodos de pesquisa e Optimização Métodos de pesquisa e Optimização Victor Lobo Importância para os SAD Definir o caminho a tomar depois de se ter trabalhado os dados 1ª Fase: Analisar os dados disponíveis Visualização OLAP, relatórios

Leia mais

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos. Gustavo Pessin 2007

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos. Gustavo Pessin 2007 GT-JeDi - Curso de Desenv. de Jogos IA para Jogos Gustavo Pessin 2007 Cronograma Base conceitual Exemplo: Achando o máximo de uma função... Como criar uma pequena aplicação: Exercício-Exemplo [Animal selvagem...]

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

Método de Hardy-Cross Capitulo 13- Algoritmo genético engenheiro Plínio Tomaz 24 dezembro de Algoritmo genético 13-1

Método de Hardy-Cross Capitulo 13- Algoritmo genético engenheiro Plínio Tomaz 24 dezembro de Algoritmo genético 13-1 1 Algoritmo genético 13-1 2 Capítulo 13-Algoritmo genético 13.1 Introdução As tecnologias recentes para dimensionamento de redes de água são: Algoritmo genético Programação Dinâmica Decision Support System

Leia mais

4 Metáforas de Optimização

4 Metáforas de Optimização 4 Metáforas de Optimização O gigantesco avanço tecnológico que vem sofrendo os sistemas de computação, mais precisamente as unidades de processamento, criou a base para o uso efetivo da Inteligência Computacional,

Leia mais

6 Estudos de Casos Porta Lógica OU de 4 Entradas

6 Estudos de Casos Porta Lógica OU de 4 Entradas 6 Estudos de Casos Com o objetivo de avaliar a síntese automática de circuitos de QCA usando técnicas de Hardware Evolucionário (EHW), alguns circuitos foram sintetizados e serão apresentados a seguir.

Leia mais

4 Métodos Existentes. 4.1 Algoritmo Genético

4 Métodos Existentes. 4.1 Algoritmo Genético 61 4 Métodos Existentes A hibridização de diferentes métodos é em geral utilizada para resolver problemas de escalonamento, por fornecer empiricamente maior eficiência na busca de soluções. Ela pode ser

Leia mais

Introdução a Algoritmos Genéticos

Introdução a Algoritmos Genéticos Introdução a Algoritmos Genéticos Tiago da Conceição Mota Laboratório de Inteligência Computacional Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro Outubro de 2007 O Que São? Busca

Leia mais

Aplicação de algoritmos genéticos. Problema da Mochila (knapsack problem)

Aplicação de algoritmos genéticos. Problema da Mochila (knapsack problem) Aplicação de algoritmos genéticos Problema da Mochila (knapsack problem) Algoritmos genéticos Passos inspirados no processo biológico de evolução Ideia de sobrevivência dos mais adaptados Soluções cada

Leia mais

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS Uma visão geral dos GAs Um algoritmo genético é uma classe de algoritmo de busca. O algoritmo procura uma solução dentro de um espaço para um problema de otimização.

Leia mais

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados Agenda PCS / PCS 09 Inteligência Artificial Prof. Dr. Jaime Simão Sichman Profa. Dra. Anna Helena Reali Costa Busca Local e Problemas de Otimização. Introdução. Busca Local I. Subida da Encosta (Hill-Climbing)

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Marcone Jamilson Freitas Souza

Marcone Jamilson Freitas Souza Otimização: Algumas aplicações Marcone Jamilson Freitas Souza Departamento de Computação Programa de Pós-Graduação em Ciência da Computação Universidade Federal de Ouro Preto http://www.decom.ufop.br/prof/marcone

Leia mais

Extracção de Conhecimento

Extracção de Conhecimento Programa Doutoral em Engenharia Informática Mestrado Integrado em Engenharia Informática LIACC/FEUP Universidade do Porto www.fe.up.pt/ ec rcamacho@fe.up.pt Outubro 2007 Algoritmos Genéticos alguns destes

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 04 Algoritmos Genéticos Introdução Algoritmos genéticos são bons para abordar espaços de buscas muito grandes e navegálos

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Introdução Um Algoritmo Genético (AG), conceitualmente, segue passos inspirados no processo biológico de evolução natural segundo a teoria de Darwin Algoritmos Genéticos seguem a idéia

Leia mais

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos https://eventos.utfpr.edu.br//sicite/sicite17/index Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos RESUMO Stéfanie Caroline Pereira Dekker stefanie.c.dekker@gmail.com Universidade Tecnológica

Leia mais

Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante

Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante 1 Resumo Neste trabalho será realizada a codificação do algoritmo genético para a solução do problema do

Leia mais

Algoritmo Genético. Teoria da Evolução Princípio seguido pelos AGs

Algoritmo Genético. Teoria da Evolução Princípio seguido pelos AGs Algoritmo Genético Técnica de busca e otimização. Metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin. Desenvolvido por John Holland (1975) e seus

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Algoritmos Genéticos David Menotti www.inf.ufpr.br/menotti/ci171-182 Hoje Algoritmos Genéticos 2 Objetivos Introduzir os principais

Leia mais

Algoritmos Genéticos e Evolucionários

Algoritmos Genéticos e Evolucionários Algoritmos Genéticos e Evolucionários Djalma M. Falcão COPPE/UFRJ PEE e NACAD falcao@nacad.ufrj.br http://www.nacad.ufrj.br/~falcao/ http://www.nacad.ufrj.br/~falcao/ag/ag.htm Resumo do Curso Introdução

Leia mais

Algoritmos Genéticos. Luis Martí LIRA/DEE/PUC-Rio. Algoritmos Genéticos

Algoritmos Genéticos. Luis Martí LIRA/DEE/PUC-Rio. Algoritmos Genéticos Luis Martí LIRA/DEE/PUC-Rio Baseado nas transparências dos professores: Teresa B. Ludermir (UFPE) Ricardo Linden (CEPEL) Marco Aurélio Pacheco (PUC-Rio) Conteúdo! Introdução! O Algoritmo Genético Binário!

Leia mais

Otimização de quadros horários escolares por meio de uma ferramenta baseada em algoritmos inteligentes

Otimização de quadros horários escolares por meio de uma ferramenta baseada em algoritmos inteligentes Otimização de quadros horários escolares por meio de uma ferramenta baseada em algoritmos inteligentes José H. N. R. Filho 1, Leandro C. Origuela 1 Orientador: Walison B.Alves 1 Curso de Sistemas de Informação

Leia mais

Uma Ferramenta Para Geração de Grades Horárias 1. Utilizando Algoritmos Genéticos

Uma Ferramenta Para Geração de Grades Horárias 1. Utilizando Algoritmos Genéticos Uma Ferramenta Para Geração de Grades Horárias 1 Utilizando Algoritmos Genéticos José Luender de Lima Santos, Yuri de Almeida Malheiros Barbosa Centro de Ciências Aplicadas e Educação Universidade Federal

Leia mais

O USO DE ALGORITMOS GENÉTICOS NA RESOLUÇÃO DE PROBLEMAS DE PROGRAMAÇÃO LINEAR RESUMO INTRODUÇÃO

O USO DE ALGORITMOS GENÉTICOS NA RESOLUÇÃO DE PROBLEMAS DE PROGRAMAÇÃO LINEAR RESUMO INTRODUÇÃO O USO DE ALGORITMOS GENÉTICOS NA RESOLUÇÃO DE PROBLEMAS DE PROGRAMAÇÃO LINEAR Douglas Peioto de Carvalho,Miquéias Augusto Ferreira Nantes (Alunos do Curso de Matemática da Universidade Anhanguera - Uniderp)

Leia mais

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR INTRODUÇÃO À COMPUTAÇÃO EVOLUTIVA Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Computação Evolutiva Ramo da ciência da computação que propõe um paradigma

Leia mais

Elaboração de Grades Horárias Utilizando Algoritmos Genéticos

Elaboração de Grades Horárias Utilizando Algoritmos Genéticos Elaboração de Grades Horárias Utilizando Algoritmos Genéticos Lucas Bucior, Fabio Asturian Zanin, Marcos A. Lucas Departamento de Engenharias e Ciência da Computação Universidade Regional Integrada do

Leia mais

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS Universidade Federal do Tocantins SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS Diogo Rigo de Brito Guimarães Alexandre Tadeu Rossini da Silva Objetivo Implementar soluções heurísticas para o Jogo de Damas

Leia mais

Planejamento Hidrotérmico Utilizando Algoritmos Genéticos

Planejamento Hidrotérmico Utilizando Algoritmos Genéticos 1 Planejamento Hidrotérmico Utilizando Algoritmos Genéticos Thayse Cristina Trajano da Silva Pontifícia Universidade Católica Puc-Rio Engenharia Elétrica Rio de Janeiro RJ Brasil Resumo O planejamento

Leia mais

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ Otimização com Algoritmos Genéticos no MATLAB Prof. Rafael Saraiva Campos CEFET-RJ Conteúdo do Mini-Curso PARTE 1 Teoria PARTE 2 Prática Conteúdo do Mini-Curso PARTE 1 Teoria 1.1. Conceitos Básicos de

Leia mais

IF-705 Automação Inteligente Algoritmos Evolucionários

IF-705 Automação Inteligente Algoritmos Evolucionários IF-705 Automação Inteligente Algoritmos Evolucionários Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br

Leia mais

ALGORITMOS GENÉTICOS EM EQUAÇÕES NÃO LINEARES PARA ESTIMATIVA DA TAXA MÁXIMA DE CRESCIMENTO DO FRUTO DA LICHIA

ALGORITMOS GENÉTICOS EM EQUAÇÕES NÃO LINEARES PARA ESTIMATIVA DA TAXA MÁXIMA DE CRESCIMENTO DO FRUTO DA LICHIA ALGORITMOS GENÉTICOS EM EQUAÇÕES NÃO LINEARES PARA ESTIMATIVA DA TAXA MÁXIMA DE CRESCIMENTO DO FRUTO DA LICHIA Lucas Eduardo de Oliveira APARECIDO 1 ; Nilva Alice GASPAR 2 ; Tiago Gonçalves BOTELHO³ RESUMO

Leia mais

Um Estudo Empírico de Métodos Hiper-Heurísticos

Um Estudo Empírico de Métodos Hiper-Heurísticos Um Estudo Empírico de Métodos Hiper-Heurísticos Igor Ribeiro Sucupira (Aluno de Mestrado) Flávio Soares Corrêa da Silva (Orientador) Departamento de Ciência da Computação Instituto de Matemática e Estatística

Leia mais

2 Algoritmos Genéticos Heurística Premissa: Localidade Fraca Conclusões Estrutura de um Algoritmo Genético 26

2 Algoritmos Genéticos Heurística Premissa: Localidade Fraca Conclusões Estrutura de um Algoritmo Genético 26 v Sumário Prefácio x 1 Introdução 1 1. Otimização 1 2. Heurística 8 3. Computação Evolutiva 13 4. Premissa: Localidade Fraca 16 5. Conclusões 20 I Métodos Bio-Inspirados 2 Algoritmos Genéticos 25 1. A

Leia mais

Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas

Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas Resumo Gardiego Luiz da Silva 1 Henrique Faria de Oliveira 2 Faculdade

Leia mais

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos 46 4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos Para definir a representação de um modelo para problemas de planejamento

Leia mais

5 VNS com Filtro e Reconexão por Caminhos

5 VNS com Filtro e Reconexão por Caminhos 5 VNS com Filtro e Reconexão por Caminhos A metaheurística VNS (Variable Neighborhood Search) foi proposta por Mladenović e Hansen [40] e possui como idéia básica a mudança de vizinhanças realizada da

Leia mais

Algoritmos Genéticos Fundamentos e Aplicações. Prof. Juan Moisés Mauricio Villanueva

Algoritmos Genéticos Fundamentos e Aplicações. Prof. Juan Moisés Mauricio Villanueva Algoritmos Genéticos Fundamentos e Aplicações Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br Conteúdo Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de Algoritmos

Leia mais

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Autor: Adilmar Coelho Dantas 1, Orientador: Márcia Aparecida Fernandes 1 1 Programa de Pós-Graduação em

Leia mais