gerador de grade de horários com algoritmos...
TRANSCRIPT
![Page 1: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/1.jpg)
Gerador de grade de horários com
Algoritmos Genéticos
Prof. Roberto Heinzle, Doutor - Orientador
Rodrigo Correia
![Page 2: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/2.jpg)
Roteiro da apresentação
Introdução
Objetivos
Fundamentação teórica
Tecnologias utilizadas
Especificação do sistema
Resultados obtidos
Conclusão
Utilizando o sistema
![Page 3: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/3.jpg)
Introdução
O que é Algoritmos Genéticos? Uma técnica de busca baseada no processo de evolução natural.
(Charles Darwin - 12/02/1809 - 19/04/1882)
Dificuldades na elaboração da grade de horários.
Apoio de sistemas para auxilio a elaboração.
Técnica para resolução (Algoritmos Genéticos).
![Page 4: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/4.jpg)
Introdução
Termos do AG:
Cromossomo, Gene, Alelo, Locus, Genótipos e Fenótipos.
Processos do AG:
População inicial
Avaliação (Fitness)
Seleção
Cruzamento (Crossover)
Mutação
![Page 5: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/5.jpg)
Objetivos do Trabalho
Desenvolver um sistema gerador de grade horária dos
professores de uma instituição de ensino superior.
Objetivos Específicos
Disponibilizar uma interface que permita informar a
disponibilidade e preferência de horário do professor.
Gerar uma grade de horário que respeite as disponibilidades e
preferências dos professores.
Disponibilizar no sistema a grade de horário gerada para
consulta dos professores.
![Page 6: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/6.jpg)
Fundamentação Teórica: Grade Horária
Definição do Indivíduo para Grade Horária: Possui um Cromossomo com apenas um DNA, cujo seu DNA possui vários
Genes.
Os humanos normais possuem 23 pares de cromossomos.
![Page 7: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/7.jpg)
Fundamentação Teórica : Grade Horária
Definição dos Gens do Indivíduo:
Cada horário da grade é um gene.
![Page 8: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/8.jpg)
Fundamentação Teórica: Grade Horária
Definição do Indivíduo para Grade Horária:
O Conjunto dos genes representa o cromossomo do indivíduo
![Page 9: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/9.jpg)
Fundamentação Teórica : Grade Horária
Definição da População:
O Conjunto dos indivíduos é uma população
![Page 10: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/10.jpg)
Fundamentação Teórica : Grade Horária
Cruzamento In
div
iduo 1
In
div
iduo 2
NO
VO
![Page 11: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/11.jpg)
Fundamentação Teórica : Grade Horária
Mutação
![Page 12: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/12.jpg)
Fundamentação Teórica : Grade Horária Seleção – Percentual de eliminação 50%
Fitness: 90 Fitness: 73 Fitness: 40
Fitness: 68 Fitness: 29 Fitness: 50
Melhor Indivíduo Eliminado
Eliminado
![Page 13: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/13.jpg)
Tecnologias usadas
Linguagem: JAVA – JSF (Java Server Faces)
IDE: Eclipse galileo – (Eclipse Java EE IDE for Web Developers)
Suíte de componentes: Primefaces 2.2.1
Banco de dados: MySQL 5.0
Framework de persistência: Hibernate
Estrutura visual da aplicação: Facelets
Especificação do sistema:
DBDesigner 4
ObjectAid UML Diagram
Enterprise Architect
![Page 14: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/14.jpg)
Especificação do Sistema
Modelagem do Banco de Dados (M.E.R) – Principais Tabelas
Grade Horária
![Page 15: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/15.jpg)
Especificação do Sistema
Modelagem do Banco de Dados (M.E.R) – Principais Tabelas
Grade Curricular
![Page 16: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/16.jpg)
Especificação do Sistema
Modelagem do Banco de Dados (M.E.R) – Principais Tabelas
Disciplinas do professor
![Page 17: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/17.jpg)
Especificação do Sistema
Modelagem do Banco de Dados (M.E.R) – Principais Tabelas
Disponibilidade do professor
![Page 18: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/18.jpg)
Especificação do Sistema
Diagrama de Caso de uso
![Page 19: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/19.jpg)
Especificação do Sistema
Diagrama de Classes (Visão macro)
Metodo principal - AG.executaAG()
![Page 20: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/20.jpg)
Especificação do Sistema
Configurações do Algoritmo Genético
![Page 21: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/21.jpg)
Especificação do Sistema
Diagrama de Atividades – Fluxo de execução do AG
![Page 22: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/22.jpg)
Resultados obtidos
Tempo de execução
6 min - 6 turmas - 150 indivíduos iniciais - 5 gerações - mutação = 20%
2 min - 6 turmas - 15 indivíduos iniciais - 10 gerações - mutação = 20%
7 min - 6 turmas - 50 indivíduos iniciais - 10 gerações - mutação = 20%
3 min - 6 turmas - 300 indivíduos iniciais - 3 gerações - mutação = 20%
5 min - 6 turmas - 50 indivíduos iniciais - 10 gerações - mutação = 20%
Aparentemente a representação com 50 indivíduos e 10 gerações foi a que se
mostrou mais adequada.
![Page 23: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/23.jpg)
Resultados obtidos
Grade com todos os horários disponíveis dos professores
Maior diversidade – menos adequada.
![Page 24: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/24.jpg)
Resultados obtidos
Grade com horários indisponíveis, disponíveis e preferenciais dos professores. Menor diversidade – mais adequada.
![Page 25: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/25.jpg)
Conclusão
Grade horária gerada corretamente.
Tecnologias adequadas.
Modelagem do problema adequada.
Resultados satisfatórios.
Fator de conjunto.
Fator de disponibilidade.
Muito processamento para solução.
Dificuldade para definir o critério de parada.
Soluções aleatórioas.
![Page 26: Gerador de grade de horários com Algoritmos Genéticosdsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2013-1-28-AP... · Roteiro da apresentação ... Definição da População:](https://reader031.vdocuments.pub/reader031/viewer/2022031220/5be37a5c09d3f2d7048b4dba/html5/thumbnails/26.jpg)
Utilizando o Sistema
Vamos à Prática