O problema de escalonamento ou escalonamento consiste na alocação de recursos, sujeito a um conjunto de restrições. Sabe-se que existem algumas ferramentas para solucionar o problema de planejamento de horários acadêmicos.
PROBLEMA DE PESQUISA
Solução Proposta
Delimitação de Escopo
Justificativa
OBJETIVOS
Objetivo Geral
Objetivos Específicos
METODOLOGIA
Metodologia da Pesquisa
Procedimentos Metodológicos
ESTRUTURA DO TRABALHO
Este capítulo terá 3 subseções: elaboração do cronograma ou cronograma, GAs e métodos para resolução do problema. Após o trabalho será apresentada a elaboração do formulário ou cronograma, que servirá de base ao problema de pesquisa.
ELABORAÇÃO DA GRADE DE HORÁRIO OU TIMETABLING
Viabilidade x Otimalidade
Moura et al (2004) resumem afirmando que restrições rígidas são aquelas que não podem ser negligenciadas. 1 – Problema de viabilidade: é quando se deseja encontrar apenas uma rede viável, ou seja, uma que satisfaça todas as restrições rígidas.
ALGORITMOS GENÉTICOS
- Histórico
- Definições
- Analogia Biológica
- Aspectos Principais
- População Inicial
- Avaliação de Aptidão
- Seleção
- Operadores Genéticos
- Critérios de Parada
9 – Aptidão bruta: resultado da função de aptidão para cada indivíduo da população; e 10 – Aptidão máxima: melhor indivíduo da população. A avaliação de aptidão ou função de avaliação é a etapa do algoritmo responsável por avaliar uma população, pontuando cada indivíduo de acordo com sua aptidão.
MÉTODOS PARA RESOLUÇÃO DO PROBLEMA
O cruzamento ordenado difere do simples porque o ponto de corte é aleatório, e antes da operação de corte os quadros são ordenados de acordo com a função custo dos professores. Lobo modelou seu cromossomo como uma matriz tridimensional tal que M([Classe]. x [Professor] x [Período]) é um valor binário. Na operação Crossover, o autor utiliza a teoria dos ciclos, completa as informações dos pais, forma a programação dos filhos de forma completa.
O método de atualização RefSet tem a função de atualizar o RefSet com base nas novas soluções criadas. Após a geração inicial, em cada iteração do método, uma determinada classe é selecionada aleatoriamente e é realizada a melhor alocação e movimentação da troca de acordo com as vizinhanças. Os autores modelaram o cromossomo para conter todas as classes que estarão disponíveis no período atual.
As informações sobre professores e horários são geradas aleatoriamente para cada indivíduo, proporcionando uma visão de uma variedade maior da população. O cruzamento é realizado pelo método single point crossover (cruzamento com um único ponto de corte), onde o ponto de corte é selecionado aleatoriamente.
ACADÊMICOS
O sistema foi testado com dados reais do curso de Engenharia Elétrica e, segundo o autor, apresentou resultados satisfatórios ao final da implementação. Ciscon (2006): Um sistema proposto pela Ciscon, denominado AGGH 1.0, foi desenvolvido em Java, tem MySQL como sistema de gerenciamento de banco de dados e tem os tempos resultantes exibidos em HTML. Como trabalho futuro, o autor mencionou que seria interessante obter melhorias no AG proposto e também na aplicação.
Ciscon cita como exemplo de melhoria o desenvolvimento de uma heurística para geração da população inicial, a fim de reduzir o número de indivíduos inviáveis. Outra sugestão para trabalhos futuros identificada pelo autor é o desenvolvimento de uma interface inteligente, onde o usuário consiga realizar alterações no horário fornecido pelo AG e pelo próprio sistema já a viabilidade o identifica. Preis (2007): O Protótipo Gerador desenvolvido por Preis em seu trabalho de conclusão de curso foi desenvolvido em Java e o gerenciador de banco de dados utilizado foi o MySQL.
Neste protótipo o usuário pode configurar os dados do AG, dentre essas configurações é possível escolher o número máximo de gerações, o nível de cruzamento, o tipo de cruzamento, entre outros. O autor relata que o sistema funcionou de forma eficiente, pois o tempo de execução e a qualidade da solução apresentada variaram de acordo com o tamanho da população, a taxa de mutação e o número de gerações.
COMERCIAIS
Alguns dos benefícios do sistema apresentados pela empresa responsável incluem: Autenticação e controle de segurança via níveis de acesso; Unificação da informação e gestão das instituições multiunidades; Processos acadêmicos (matrícula, cancelamento, desistência, desligamento, mudança de turma, mudança de unidade, transferência); Liceu: O Liceu (http://www.techne.com.br) é um sistema multiplataforma disponível para web, smartphone, tablet e TV digital. O sistema cadastra e mantém os cursos oferecidos pela instituição, o que possibilita incluir critérios para aprovação nas disciplinas.
Também disponibiliza um auxiliar que auxilia na elaboração da grade curricular dos cursos oferecidos e no planejamento das aulas, professores e instalações físicas. Urânia: Urânia (http://www.horario.com.br) é um sistema desenvolvido pela empresa GEHA e cuja primeira versão existiu em 1988. Dentre as funcionalidades do Urânia destacam-se: determinar os horários em que cada professor poderá ministrar suas aulas; indicar como as aulas das disciplinas devem ser divididas durante a semana (vinculadas, separadas, apenas uma aula por dia, etc.); preparar a programação de vários consultórios ao mesmo tempo, controlando a movimentação dos professores; e trabalhar em conjunto com duas ou mais turmas (associação de classe).
ANÁLISE COMPARATIVA
Todos os sistemas acadêmicos apresentados neste capítulo permitem a configuração do AG, ou seja, tamanho inicial da população, número de gerações, cruzamento e taxa de mutação, permitindo assim ao usuário calibrar o AG para obter o melhor resultado. . O sistema Urânia é o único sistema que apresenta possíveis soluções para a inviabilidade identificada e sugere professores que podem viabilizar a solução com pequenas alterações na sua disponibilidade. Após obter soluções viáveis, o sistema Urânia visa eliminar as janelas existentes nos horários dos professores.
O problema da janela não surgirá neste estudo porque as classes são germinadas em ordem. A Tabela 1, apresentada a seguir, traz uma breve comparação entre os instrumentos estudados e a solução proposta no trabalho. O próximo capítulo apresenta dados da modelagem do sistema implementado para solução do problema do curso de Ciência da Computação do campus São José da Universidade do Vale do Itajaí.
Este capítulo consiste nos requisitos funcionais e não funcionais e nas regras de negócios do sistema, bem como um caso de uso, diagrama de sequência, modelo relacional de banco de dados e a estrutura do GA que foi implementada.
REQUISITOS
Requisitos Funcionais
Requisitos Não Funcionais
Regra de Negócio
MODELAGEM
- Caso de Uso
- Diagrama de Sequência
- Banco de Dados
- Algoritmo Genético
- Interface do Sistema
Nesta ilustração é possível visualizar as atividades que o usuário do sistema realizará para gerar a grade, bem como as atividades que isso envolverá para o sistema. Esta seção tem como objetivo descrever o funcionamento do GA do sistema implementado para solucionar o problema de geração do horário do Curso de Ciência da Computação do Campus São José da Universidade do Vale do Itajaí. O cromossomo do sistema possui oito semestres, por ser esta a duração do curso de Ciência da Computação, e dois horários disponíveis, devido à distribuição das turmas do curso.
Esta classe também inclui o atributo penalidade, onde é armazenado o número de penalidades cromossômicas, e o atributo resultFuncaoEvaluation, que contém a força do cromossomo calculada através da função de avaliação do GA. Para gerar a população inicial, foi desenvolvida uma heurística capaz de atender a todas as restrições do problema. Onde G é o grau de aptidão do cromossomo e Np é o número de penalidades, ou seja, restrições suaves encontradas.
O tamanho da população inicial é escolhido pelo usuário do sistema, que também escolherá a taxa de mutação e o número de replicações alvo. A Figura 18 mostra a diminuição da média das penalidades e o aumento da média da função de avaliação cromossômica. Para facilitar a utilização do sistema pelo usuário final, foi criado um padrão para telas de consulta e cadastro.
A próxima parte do trabalho apresenta o desenho do experimento, ou seja, como o sistema implementado foi testado e avaliado.
DESIGN DO EXPERIMENTO
Para ambos os casos apresentados acima, foi realizado um grande número de testes, variando o tamanho da população, o número de iterações, o tipo de seleção, a taxa de mutação, a remoção ou não de indivíduos e tentativas aleatórias para as quatro disciplinas. créditos. Outro teste realizado durante a pesquisa foi a comparação dos resultados apresentados pelo sistema com a programação atual do curso. O sistema foi validado pelos resultados apresentados durante os testes, com dados reais e fictícios, ambos considerados satisfatórios.
RESULTADOS
Os dados iniciais para o processamento do AG que deram origem a esta tabela foram os seguintes: o tamanho da população era de 1000 indivíduos, o número de iterações era de 50 (mas devido ao fato dos dados terem sido repetidos a partir da sétima iteração, apenas as 10 primeiras são mostrado nas iterações da tabela) a taxa de mutação foi de 5% e, em última análise, o número de tentativas aleatórias de atribuir cursos de quatro créditos foi 15. Para todos os testes, o tamanho da população foi de 100 indivíduos, o número máximo de iterações foi 20 e a mutação a taxa foi de 5%. Mudança entre tentativas, número de tentativas aleatórias para cursos de quatro créditos.
Tendo como referência o número de tentativas aleatórias para os quatro sujeitos do crédito, 20 tentativas, os processos alcançaram sua solução final entre 4 e 5 minutos. A maior penalidade registrada na primeira iteração foi 13 e o menor valor registrado para a maior penalidade foi 9. Agora, como referência ao número de tentativas aleatórias para assuntos de quatro créditos, 25 tentativas, o processo tem sua solução final alcançada entre 4 e 7 minutos.
E como referência ao número de tentativas aleatórias para os quatro sujeitos do crédito, 30 tentativas, os processos chegaram à sua solução final entre 5 e 8 minutos. A maior penalidade registrada na primeira iteração foi 13 e o menor valor apresentado para a maior penalidade foi 8.
TRABALHOS FUTUROS
Um estudo comparativo entre algoritmos genéticos e evolução diferencial para a otimização de um modelo simplificado de cadeia de suprimentos. Geração automática de horários utilizando algoritmos genéticos: o caso da Faculdade de Engenharia Elétrica da UFU. Uma proposta de solução para problemas de agendamento educacional utilizando busca esparsa e reconexão de rotas.
Dissertação (Mestrado em Computação Aplicada) – Universidade do Vale do Rio dos Sinos, São Leopoldo, março de 2010. Aplicação da metaheurística Busca Tabu ao problema de atribuição de turmas a salas de uma instituição universitária. Sistema de alocação de tempo para cursos universitários: um estudo de caso no departamento de informática da Universidade Federal de Sergipe.
A tabela a seguir mostra a disponibilidade de cada professor do curso de Ciência da Computação do campus São José da Universidade do Vale do Itajaí. A tabela a seguir apresenta a lista de disciplinas, a fase a que essa disciplina pertence e a quantidade de créditos diretos de cada uma delas.