Click here to load reader
Upload
truongnhu
View
213
Download
0
Embed Size (px)
Citation preview
Universidade Federal de Uberlndia
Faculdade de Engenharia Eltrica
Ps-Graduao em Engenharia Eltrica
Construo e implantao de um sistema
automtico de alocao de espao fsico
baseado em computao evolutiva para a
Universidade Federal de Uberlndia
Guilherme Palhares Theodoro
Uberlndia
2016
Universidade Federal de Uberlndia
Faculdade de Engenharia Eltrica
Ps-Graduao em Engenharia Eltrica
Construo e implantao de um sistema
automtico de alocao de espao fsico
baseado em computao evolutiva para a
Universidade Federal de Uberlndia
Guilherme Palhares Theodoro
Dissertao apresentada Universidade Federal
de Uberlndia, perante a banca de examinadores
abaixo, como parte dos requisitos para obteno
do ttulo de Mestre em Cincias. Avaliada em 18
de Novembro de 2016.
Adlio Jos de Moraes, Dr. UFU
Igor Santos Peretta, PhD. UFU
Keiji Yamanaka, PhD. Orientador UFU
Ricardo Soares Baventura, Dr. IFTM
Dados Internacionais de Catalogao na Publicao (CIP)
Sistema de Bibliotecas da UFU, MG, Brasil.
T388c
2016
Theodoro, Guilherme Palhares.
Construo e implantao de um sistema automtico de alocao de
espao fsico baseado em computao evolutiva para a Universidade
Federal de Uberlndia / Guilherme Palhares Theodoro. - 2016.
83 f. : il.
Orientador: Keiji Yamanaka.
Dissertao (mestrado) - Universidade Federal de Uberlndia,
Programa de Ps-Graduao em Engenharia Eltrica.
Inclui bibliografia.
1. Engenharia eltrica - Teses. 2. Algortmos genticos - Teses. 3.
Administrao de instalaes - Teses. 4. Universidade Federal de
Uberlndia - Teses. I. Yamanaka, Keiji. II. Universidade Federal de
Uberlndia. Programa de Ps-Graduao em Engenharia Eltrica. III.
Ttulo.
CDU: 621.3
Construo e implantao de um sistema
automtico de alocao de espao fsico
baseado em computao evolutiva para a
Universidade Federal de Uberlndia
Guilherme Palhares Theodoro
Dissertao apresentada Universidade Federal de Uberlndia como parte dos
requisitos para obteno do ttulo de Mestre em Cincias.
Prof. Keiji Yamanaka, PhD. Prof. Darizon Alves de Andrade, PhD.
Orientador Coordenador do Curso de Ps-Graduao
3
Agradecimentos
Ao meu orientador, professor Keiji Yamanaka, pelos ensinamentos, indicao do tema
deste trabalho e superviso durante todas as etapas do mestrado.
Ao professor Igor Santos Peretta, por sua enorme contribuio no desenvolvimento dos
artigos relacionados este trabalho.
minha famlia, pelo apoio e compreenso.
Aos meus colegas de trabalho, pela explicao das regras de negcio do problema, alm
de outras contribuies.
Resumo
Realizado duas vezes por ano letivo, o processo de alocao de salas na Universidade
Federal de Uberlndia (UFU) uma atividade com alto grau de complexidade. A
atividade consiste na distribuio de um nmero elevado de turmas nas salas disponveis
para alocao. O administrador de espao fsico da instituio deve atender uma srie
de restries definidas pela direo e, na medida do possvel, as necessidades de cada
curso. Isso faz com que todo o processo leve meses. O presente trabalho descreve o
problema de alocao de salas (PAS) e as particularidades existentes no processo da
UFU e de outras universidades, comparando o PAS em diferentes instituies verificou-
se que os mesmos lidam com objetivos diferentes e, portanto, no podem ser resolvidos
utilizando a mesma abordagem. Um mtodo de busca adequado para problemas de
otimizao complexos como o PAS, so os algoritmos genticos (AG). Analisando as
maneiras existentes para realizar o tratamento de restries nos AG juntamente com
os objetivos considerados na alocao de salas da UFU, decidiu-se por utilizar uma
representao especial do indivduo alm de operadores genticos especficos para o
problema. Um sistema para automatizar o PAS na UFU foi construdo e implantado,
os resultados obtidos utilizando dados reais da universidade indicaram a viabilidade do
mtodo, alm da reduo do tempo necessrio para a realizao do processo.
Palavras-chave: Algoritmos Genticos, Problema de Alocao de Salas
5
Abstract
Accomplished twice per school year, the rooms allocation process at the Federal Univer-
sity of Uberlndia (UFU) is an activity with a high degree of complexity. The activity
consists of the distribution of a large number of courses into available classrooms for
allocation. The administrator of institution physical space must attend a number of
constraints defined by the direction and, as far as possible, the needs of each course.
The constraints make the entire process longer, taking months to be done. The present
work describes the space allocation problem (SAP) and the existing particularities in
the process of UFU and other universities, it was verified by comparing SAP in dif-
ferent institutions that they handle different objectives and, therefore, they cant be
solved using the same approach. A suitable search method for complex optimization
problems as SAP, are genetic algorithms (GA). Analyzing the existing ways for han-
dling constraints in GA along with the considered objectives for space allocation in
UFU, it was decided to use a special representation of the individual and also specific
genetic operators for the problem. A system for automating the SAP in UFU was built
and deployed, the obtained results using universitys real data indicated the feasibility
of the method, besides reducing the time required for carry out the process.
Keywords: Genetic Algorithms, Space Alocation Problem.
6
Lista de Figuras
1 Modelo matemtico da funo objetivo UFPB . . . . . . . . . . 24
2 Modelo matemtico da funo objetivo UFSM parte 1 . . . . . 27
3 Modelo matemtico da funo objetivo UFSM parte 2 . . . . . 28
4 Modelo matemtico da funo objetivo USP . . . . . . . . . . . 31
5 Fluxograma dos passos gerais de um AG . . . . . . . . . . . . . . 39
6 Mtodo de seleo por torneio; em Torneios, o indivduo des-
tacado o ganhador . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7 Mtodo de seleo por ranking . . . . . . . . . . . . . . . . . . . . 47
8 Exemplo de pontos de corte . . . . . . . . . . . . . . . . . . . . . . 48
9 Cruzamento de 1 ponto . . . . . . . . . . . . . . . . . . . . . . . . . 49
10 Cruzamento de 2 pontos . . . . . . . . . . . . . . . . . . . . . . . . 49
11 Cruzamento heurstico uniforme . . . . . . . . . . . . . . . . . . . 50
12 Cruzamento heurstico no uniforme . . . . . . . . . . . . . . . . 50
13 Mutao em um indivduo com representao binria . . . . . . 51
14 Curva tpica de um AG com elitismo em um problema de mi-
nimizao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
15 Representao do indivduo . . . . . . . . . . . . . . . . . . . . . . 56
16 Parte de um indivduo com dados reais . . . . . . . . . . . . . . . 57
17 Cruzamento heurstico no uniforme para o indivduo proposto 58
18 Mutao para o indivduo proposto . . . . . . . . . . . . . . . . . 59
19 Aplicao 11.02.03.11 - Relao de prdios e cursos . . . . . . . 61
20 Aplicao 11.02.03.12 - Relao de turmas e sees aba Ca-
dastro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7
21 Aplicao 11.02.03.12 - Relao de turmas e sees aba Gera-
o Automtica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
22 Aplicao 11.02.03.12 - Relao de turmas e sees aba Rela-
trio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
23 Relatrio 11.02.03.12 - Relao turmas sees . . . . . . . . . . . 64
24 Relatrio 11.02.03.12 - Sees crticas . . . . . . . . . . . . . . . . 65
25 Relatrio 11.02.03.12 - Quantidade de turmas por horrio . . . 66
26 Aplicao 11.02.03.13 - Processamento alocao temporria . . 67
27 Aplicao 11.02.03.14 - Alocao temporria . . . . . . . . . . . 68
28 Aplicao 11.02.03.14 - Choques de alocao destacados na cor
vermelha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
29 Aplicao 11.02.03.14 - Excluso e realocao de turmas . . . . 70
30 Aplicao 11.02.03.14 - Alocao definitiva . . . . . . . . . . . . 71
31 Resultado da execuo 2 . . . . . . . . . . . . . . . . . . . . . . . . 73
8
Lista de Tabelas
1 Tamanho das instncias nas diferentes universidades . . . . . . 32
2 Restries de qualidade nas diferentes universidades . . . . . . 34
3 Mtodo e propsitos das funes objetivo nas diferentes uni-
versidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4 Tratamento de restries para o problema da UFU . . . . . . . 55
5 Parmetros de execuo do AG . . . . . . . . . . . . . . . . . . . . 60
6 Resultados de execuo bloco 5O-A . . . . . . . . . . . . . . . . . 73
7 Resultados de execuo para o 2o semestre de 2016 . . . . . . . 75
9
Lista de Abreviaturas e Siglas
AG Algoritmos Genticos
AGc Algoritmo Gentico Compacto
CA Central de Aulas
CT Centro de Tecnologia
ICMC Instituto de Cincias Matemticas e de Computao
PAS Problema de Alocao de Salas
SG Sistema de Gesto
UFPB Universidade Federal da Paraba
UFSM Universidade Federal de Santa Maria
UFU Universidade Federal de Uberlndia
USP Universidade de So Paulo
10
Sumrio
1 Introduo 13
1.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2 Objetivos Especficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.4 Estrutura da Dissertao . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2 O Problema de Alocao de Salas 19
2.1 O Processo de Alocao de Salas da UFU . . . . . . . . . . . . . . . . . 20
2.2 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1 Problema de Alocao de Aulas: O Caso da Central de Aulas da
UFPB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.2 Soluo do Problema de Alocao de Salas Utilizando um Modelo
Matemtico Multi-ndice . . . . . . . . . . . . . . . . . . . . . . 25
2.2.3 Aplicao da Metaheurstica AGc para o Problema de Alocao
de Aulas Salas . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3 Consideraes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3 Algoritmos Genticos 37
3.1 Representao do Indivduo . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Inicializao da populao . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.3 Funo de Avaliao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4 Seleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.1 Seleo por Roleta . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.2 Seleo por Torneio . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4.3 Seleo por Ranking . . . . . . . . . . . . . . . . . . . . . . . . 45
3.5 Cruzamento (Recombinao) . . . . . . . . . . . . . . . . . . . . . . . . 47
3.5.1 Cruzamento de 1 Ponto . . . . . . . . . . . . . . . . . . . . . . 48
3.5.2 Cruzamento de 2 Pontos . . . . . . . . . . . . . . . . . . . . . . 49
3.5.3 Cruzamento Heurstico Uniforme . . . . . . . . . . . . . . . . . 49
3.5.4 Cruzamento Heurstico No Uniforme . . . . . . . . . . . . . . . 50
3.6 Mutao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.7 Escolha de Pais e Filhos Para Prxima Gerao . . . . . . . . . . . . . 51
3.8 Critrios de parada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4 Materiais e Mtodos 54
4.1 Funcionamento do Algoritmo Gentico . . . . . . . . . . . . . . . . . . 54
4.2 Tecnologias Empregadas . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3 Aplicaes Desenvolvidas como Resultado deste Trabalho . . . . . . . . 60
5 Resultados e Discusses 72
6 Relato do Administrador de Espaos da UFU 77
7 Concluses 79
12
Captulo 1
Introduo
A alocao de espao fsico um problema de otimizao que surge na maioria das ins-
tituies acadmicas. O problema consiste em distribuir pessoas (professores e alunos)
e recursos (equipamentos, aulas, etc.) em espaos fsicos atendendo uma srie de res-
tries e preferncias. O desafio gerar solues timas em tempo aceitvel do ponto
de vista prtico. A alocao no eficiente de espaos e recursos pode resultar em cus-
tos operacionais, transtornos logsticos, insatisfao, entre outros problemas. Devido
complexidade de resoluo do problema, a resoluo de forma manual pode ser inefici-
ente em funo do no atendimento de todas as restries e preferncias. Alm disso,
uma alocao de salas de baixa qualidade pode causar insatisfaes na comunidade
acadmica [1].
O Problema de Alocao de Salas, segundo Schaefer em [2] a distribuio de aulas
para as devidas salas com horrios previamente estabelecidos, respeitando uma srie de
restries, tais como infraestrutura adequada das salas e acessibilidade para os alunos
e docentes. As restries e as necessidades de recursos dificultam a distribuio de
salas, logo, a soluo manual desse problema acarreta em um processo demorado que
requer vrios dias e pode gerar transtornos para o incio das aulas por falta ou erro de
alocao, alm do fluxo acentuado de alunos em deslocamento.
Para Bardadyn em [3] e Carter e Tovey em [4], o PAS faz parte de um conjunto de
problemas de programao de horrios em cursos universitrios (course timetabling).
A conferncia PATAT (International Conference on the Practice and Theory of Auto-
mated Timetabling) que realizou sua 11a edio no ano de 2016, trata especificamente
de problemas de automatizao envolvendo cursos universitrios e refora a relevncia
13
do tema proposto nesse trabalho para a comunidade acadmica.
Na Universidade Federal de Uberlndia, o processo de alocao de espao fsico
ocorre duas vezes por ano. At o primeiro semestre letivo do ano de 2016, o processo
era feito manualmente por um administrador de espaos com a ajuda de at dois
estagirios consumindo um total de 640 horas de trabalho.
A automatizao desse processo de alocao permitiria que o administrador de
espaos da instituio economizasse tempo e esforos. Alm disso, em um cenrio onde
vrias solues pudessem ser obtidas com pouco tempo computacional, o administrador
ganharia tempo para decidir sobre a alocao mais adequada, considerando as restries
e preferncias da instituio.
Schaefer em [2] e de Werra em [5] entendem que essa classe de problemas no pode
ser completamente automatizada. Existem duas justificativas para isto: por um lado,
h razes, que no podem ser facilmente expressas em um sistema automatizado que
tornariam uma alocao melhor que a outra. Por outro, uma vez que o espao de
solues vasto, a interveno humana pode conduzir a busca em direo a regies
promissoras, nas quais o sistema, por si s, dificilmente teria condies de chegar.
Burke e Varley em [6] proporam a utilizao de trs tcnicas metaheursticas para
a automatizao do PAS: subida da encosta (hill-climbing), recozimento simulado (si-
mulated annealing) e algoritmos genticos. Foi demonstrado que a utilizao dessas
tcnicas uma forma promissora de tratar o problema de alocao de espaos em uni-
versidades e que, quanto maior o nmero de restries, menor a probabilidade de se
obter uma soluo aceitvel.
Uma tendncia recente tem sido o desenvolvimento de heursticas hbridas que com-
binam certas caractersticas de uma heurstica com outra, com o objetivo de melhorar
o desempenho pela superao das fraquezas de uma heurstica ou de ambas [7].
14
Apesar dos grandes avanos no projeto de algoritmos de otimizao sofisticados,
ainda existe uma grande preocupao com relao sua utilidade na prtica. De fato,
o desenvolvimento dos computadores permitiu com que os pesquisadores projetassem
metaheurstiscas eficientes para resolver problemas difceis de otimizao combinatria.
Entretanto, muitos desses algoritmos focam na resoluo de problemas acadmicos
encontrados na literatura que muitas vezes no capturam a complexidade de problemas
reais [8].
O trabalho de McCollum em [8] indica claramente que esse autor ficou surpreso em
descobrir que at ento existiam pouqussimos artigos sobre o tema relatando que os
mtodos pesquisados foram implementados e utilizados pela instituio.
A comparao do presente trabalho com outros como Burke e Varley em [6], Cirino
et al. em [9], Henan e Shao-Wen em [10], Landa Silva em [11], Queiroga et al. em
[12] e Sales et al. em [13] uma tarefa com resultados inconclusivos, uma vez que
as restries tratadas e as instncias de problema em cada um desses trabalhos so
diferentes. Para Paechter em [14], mesmo quando existem critrios claros para julgar
diferentes algoritmos de automao para uma mesma instncia de problema, ainda
podem existir dificuldades de se interpretar os resultados significativamente. Paechter
tambm enfatiza sobre a necessidade de se trabalhar com a pessoa que utiliza o sistema
automatizado para melhorar o entendimento de se uma soluo pode ser considerada
boa ou no.
1.1 Objetivo Geral
O objetivo geral deste trabalho construir e implantar um sistema baseado em com-
putao evolutiva para automatizar o processo de alocao de salas da Universidade
Federal de Uberlndia. O sistema construdo deve atender todas as restries que so
15
atendidas pelo processo de alocao de espao fsico feito manualmente.
1.2 Objetivos Especficos
Os objetivos especficos deste trabalho so:
Realizar pesquisa bibliogrfica sobre o problema de alocao de espao fsico e
sobre algoritmos genticos;
Descrever as etapas que envolvem o processo de alocao manual realizado na
UFU e levantar os requisitos necessrios para construo do sistema;
Projetar um sistema que para automatizao do processo de alocao de salas da
UFU que utilize algoritmos genticos;
Construir o sistema e apresentar suas interfaces;
Verificar a viabilidade de aplicao do mtodo com o sistema construdo utili-
zando dados reais;
Implantar o sistema e apresentar os resultados provenientes de sua utilizao para
a alocao de salas no 2o semestre de 2016;
1.3 Metodologia
O motivo principal que determina a realizao da pesquisa nesse trabalho de ordem
prtica, pois decorre da necessidade de tornar mais eficiente o processo de alocao de
salas da UFU.
A pesquisa realizada no presente trabalho enquadra-se no campo das pesquisas
Terico-Aplicada Descritiva. O principal objetivo da pesquisa descritiva a descrio
16
das caractersticas de determinada populao ou fenmeno ou, ento, o estabeleci-
mento de relaes entre variveis, cuja principal caracterstica reside na utilizao de
tcnicas padronizadas para a coleta de dados, tais como o questionrio e a observao
sistemtica.
A adoo deste conceito parece adequada para a realizao desta pesquisa, dado
que o objetivo desenvolver um sistema para automatizar o processo de alocao de
salas da UFU, que proporcionaria a execuo desse processo de maneira mais rpida e
eficiente.
Em um primeiro momento, este trabalho consiste de uma pesquisa bibliogrfica
sobre o assunto em questo, com a finalidade de buscar informaes sobre a utilizao
atual, bem como ter uma viso geral dos trabalhos j realizados. Em seguida ser
realizado um estudo de campo, pois o processo de alocao de salas da UFU ser inves-
tigado a fundo proporcionando que o pesquisador compreenda todas as necessidades
do processo atual.
Sero utilizados dados reais referente oferta de disciplinas da UFU no primeiro e
segundo semestre de 2016.
1.4 Estrutura da Dissertao
O trabalho est dividido em 7 captulos da seguinte forma:
Captulo 1 - Introduo: apresentao das consideraes iniciais, objetivos,
justificativa e metodologia;
Captulo 2 - O Problema de Alocao de Salas: contextualizao do pro-
blema de alocao de salas, exposio do caso da UFU e de outras universidades;
Captulo 3 - Algoritmos Genticos: reviso dos conceitos de Algoritmos
17
Genticos e suas caractersticas fundamentais;
Captulo 4 - Materiais e mtodos: interpretao computacional para o pro-
blema da UFU utilizando algoritmos genticos e a apresentao das aplicaes
criadas;
Captulo 5 - Resultados e Discusses: apresentao da anlise dos resultados
para o conjunto de dados utilizado;
Captulo 6 - Relato do Administrador de Espaos da UFU: exibio
da contribuio do sistema proposto para o processo de alocao de salas da
universidade;
Captulo 7- Concluses: apresentao da concluso sobre a pesquisa realizada.
18
Captulo 2
O Problema de Alocao de Salas
O problema de alocao de salas em uma instituio acadmica definido como a atri-
buio de um conjunto finito de aulas, distribudas em diferentes intervalos de tempo,
em um conjunto tambm finito de salas, respeitando uma srie de restries operacio-
nais e de preferncias [4]. O problema considera que existem horrios preestabelecidos
do incio e trmino das aulas e um conjunto de salas onde estas ocorrero. Nesse sen-
tido, o problema incide em determinar uma alocao das turmas em salas de aula de
forma que requisitos considerados essenciais sejam acatados, tornando vivel uma ou
mais solues[15].
Para Carter e Tovey em [4], o PAS um problema de otimizao combinatria.
Problemas de otimizao combinatria so caracterizados por um nmero finito de
solues admissveis e so comuns na vida cotidiana e na engenharia. Uma rea im-
portante de aplicaes est relacionada utilizao eficiente de recursos escassos para
aumentar a produtividade. Alguns problemas de otimizao combinatria encontrados
na engenharia so: empacotamento, mochila, agendamento de mquinas, roteamento
de veculos, caixeiro viajante, entre outros [16].
Em grande parte dos casos estudados, o problema tem sido classificado como NP-
difcil, o que na prtica pode inviabilizar sua resoluo por processo manual ou por
algoritmos determinsticos para grande volume de dados, pois o espao de solues
cresce exponencialmente inviabilizando assim uma soluo tima em tempo razovel.
Nesses casos, uma alternativa vivel a resoluo por tcnicas heursticas ou algorit-
mos aproximativos que, apesar de no garantirem solues timas, podem gerar boas
solues com um custo computacional razovel e adequado s necessidades da aplicao
19
[3].
2.1 O Processo de Alocao de Salas da UFU
A Universidade Federal de Uberlndia possui campi nas cidades de Uberlndia, Ituiu-
taba, Patos de Minas e Monte Carmelo todos no estado de Minas Gerais. Apenas
na cidade sede, so 245 salas de aula distribudas em 3 campi e 14 blocos (prdios)
diferentes.
O processo de alocao de salas da UFU acontece uma vez por semestre letivo,
sendo que em cada um mais de 4000 turmas devem ser distribudas no espao fsico
disponvel. Feito manualmente, o processo leva aproximadamente 640 horas para ser
executado.
O processo de alocao iniciado assim que a oferta de disciplinas para o prximo
semestre finalizada. Na oferta de disciplinas, cada coordenao de curso indica as
disciplinas que sero disponibilizadas para matrcula no prximo semestre. Cada turma
ofertada exige o preenchimento das seguintes informaes:
Curso ofertante;
Cdigo e nome da disciplina;
Perodo ideal (perodo no qual a disciplina se encontra no currculo do curso);
Cdigo da turma;
Quantidade de vagas oferecidas;
Dias da semana;
Horrio de realizao;
20
Data de incio e fim do perodo;
Necessidade de alocao de sala em espao fsico comum da universidade (SIM
ou NO);
Necessidade de utilizao de pranchetas (SIM ou NO).
Apenas as salas em comum da universidade so disponibilizadas para alocao.
Algumas unidades acadmicas possuem suas prprias salas e laboratrios que podem
ser utilizados para as disciplinas ofertadas. Nesses casos, deve ser indicado que no
existe necessidade de alocao de sala para a turma.
A maior parte das coordenaes de curso monta sua grade horria tentando privile-
giar os alunos que cursam apenas as disciplinas de determinado perodo. Dessa forma,
os horrios das disciplinas de um mesmo perodo so encaixados para que esses alunos
tenham aulas sempre em um mesmo turno (matutino, vespertino ou noturno) e no
haja horrios vagos. Mas nem todas as coordenaes conseguem planejar os horrios
dessa forma.
Vale ressaltar ainda que, por inmeros fatores (reprovaes, adiantamento de dis-
ciplinas, entre outros), casos de alunos que no cursam apenas as disciplinas de seu
perodo ideal so frequentes.
O principal objetivo considerado no processo de alocao de salas fazer a alocao
de espao fsico por perodo de cada curso, ou seja, acomodar todas as disciplinas de
um determinado perodo de um curso em uma mesma sala, desde que os horrios se
encaixem. Um objetivo secundrio tentar alocar todas as turmas de um curso em um
nico bloco. Esses objetivos tentam minimizar o deslocamento entre salas de alunos e
professores.
Levando em considerao as necessidades de cada curso, as caractersticas das salas
disponveis em cada bloco e a proximidade entre os blocos, o administrador de espaos
21
da instituio criou uma relao de cursos e blocos. Essa relao indica para qual bloco
as turmas de um determinado curso e perodo devem ser direcionadas.
A partir da lista de disciplinas ofertadas e da relao de cursos e blocos, o adminis-
trador de espaos cria um plano de alocao de modo que as disciplinas de um mesmo
perodo e curso sejam alocadas em uma mesma sala sempre que possvel.
Os objetivos considerados no processo manual de alocao de salas so transforma-
dos nos seguintes requisitos para construo do sistema:
Utilizar a relao de cursos e blocos para a alocao de espao fsico;
necessrio alocar todas as turmas ofertadas que indicarem a necessidade de
alocao de sala em espao fsico comum;
Alocar turmas do mesmo curso e perodo em uma nica sala quando os horrios
estiverem encaixados;
Em uma mesma sala, horrio e perodo no pode haver mais de uma turma;
Uma sala no pode receber uma turma cuja quantidade de alunos seja superior
sua capacidade;
Turmas sem necessidade de prancheta devem ser alocadas apenas em salas com
carteiras; turmas com necessidade de prancheta devem ser alocadas apenas em
salas com pranchetas.
2.2 Trabalhos Relacionados
Esta seo do captulo apresenta trs trabalhos relacionados ao tema dessa dissertao
que foram publicados na 47a edio do Simpsio Brasileiro de Pesquisa Operacional
22
(XLVII SBPO) no ano de 2015. O simpsio um evento anual promovido pela Socie-
dade Brasileira de Pesquisa Operacional.
Foram selecionados apenas trabalhos de universidades brasileiras por possurem
maior semelhana com a cultura educacional da Universidade Federal de Uberlndia.
Os trabalhos descritos a seguir fornecem evidncias da importncia, complexidade
e diversidade do problema de alocao de salas.
2.2.1 Problema de Alocao de Aulas: O Caso da Central de Aulas da
UFPB
Os autores Queiroga, Jnior e Cabral em [12] propem a utilizao de um modelo
baseado em Programao Linear Inteira para resolver o PAS na Central de Aulas (CA)
da Universidade Federal da Paraba (UFPB). A tarefa era realizada manualmente e
as solues obtidas eram repletas de inconsistncias, tais como choques de horrio e
desconsiderao das capacidades das salas.
Na UFPB, em boa parte dos casos, a alocao das aulas feita em duas etapas:
em um primeiro momento, os gestores de cada centro tentam alocar suas demandas
de aulas utilizando as instalaes (salas de aula/laboratrios) que lhes so disponveis.
Caso a quantidade de aulas com necessidade de alocao exceda o nmero de salas
disponveis em cada centro, a demanda excedente encaminhada para ser alocada na
central de aulas. Assim, no geral, as salas da CA recebem as aulas excedentes que no
puderam ser alocadas nas instalaes dos seus respectivos centros de origem [12].
O estudo de caso foi realizado utilizando dados do segundo semestre letivo de 2014,
sendo que 1131 aulas de 645 turmas deveriam ser alocadas em 60 salas de 7 blocos
diferentes [12].
As principais restries no problema foram [12]:
23
Todas as aulas devem ser alocadas em uma sala em um determinado horrio;
Duas aulas no podem ser alocadas em uma mesma sala no mesmo horrio/dia
da semana;
A quantidade de alunos de uma turma no pode exceder a capacidade da sala;
O indicador de qualidade considerado para anlise da soluo foi o nmero de
aulas de uma mesma turma alocadas em salas diferentes.
A funo objetivo do trabalho visa minimizar o nmero de aulas de uma mesma
turma alocadas em salas diferentes [12]. O modelo matemtico proposto apresentado
na Figura 1.
Figura 1: Modelo matemtico da funo objetivo UFPB [12]
24
Os autores concluem que o modelo matemtico proposto se mostrou eficiente na
resoluo do PAS. O resultado da alocao manual foi comparado com o resultado
da alocao automtica e a soluo produzida automaticamente apresentou poucas
inconsistncias pois: proibiu a existncia de choques de horrio, reduziu o estouro das
capacidades existentes, fez uma melhor utilizao da capacidade das salas alm de
alocar em uma mesma sala aulas de uma mesma turma [12].
2.2.2 Soluo do Problema de Alocao de Salas Utilizando um Modelo
Matemtico Multi-ndice
Os autores Sales, Mller e Simonetto em [13] propem desenvolver um modelo mate-
mtico adequado para o PAS do Centro de Tecnologia (CT) da Universidade Federal
de Santa Maria (UFSM) .
O CT-UFSM hospeda 12 cursos de graduao. O campus possui cinco blocos,
contendo um total de 50 salas de aula: 3 laboratrios, 2 salas com mesas de desenho
alta, 1 sala com mesas de desenho baixa e as demais com mesas escolares. As salas
possuem capacidade entre 25 e 50 alunos e possuem quadros do tipo branco e verde
[13].
As restries do problema so divididas em restries essenciais e restries de
qualidade [13].
As restries essenciais so:
Toda disciplina deve ser alocada em cada perodo que ocupa;
A sala pode ter no mximo 1 disciplina em cada horrio;
A capacidade da sala deve ser maior/igual que a oferta de vagas da disciplina;
As disciplinas que requerem mesas de desenho alta devem ficar nesse tipo de sala;
25
As disciplinas que requerem mesas de desenho baixa devem ficar nesse tipo de
sala.
As restries de qualidade so:
As salas designadas devem estar prximas da unidade acadmica de origem;
Manter o professor na mesma sala de aula na maior parte do tempo;
Professores que desejam salas com quadro branco no devem ficar em salas com
quadro verde;
Professores que desejam salas com quadro verde no devem ficar em salas com
quadro branco.
A funo objetivo do trabalho busca minimizar a quantidade de assentos vazios,
alm de diminuir a distncia percorrida pelos professores [13]. O modelo matemtico
proposto apresentado nas Figuras 2 e 3.
26
Figura 3: Modelo matemtico da funo objetivo UFSM parte 2 [13]
28
Os resultados computacionais, obtidos a partir do solver IBM ILOG CPLEX Op-
timization Studio 12.4 indicaram uma melhor distribuio dos espaos de modo que
em muitas das solues houve sobra de salas em comparao com a soluo manual
vigente [13].
2.2.3 Aplicao da Metaheurstica AGc para o Problema de Alocao de
Aulas Salas
Os autores Cirino, Santos e Delbem em [9] propem a resoluo do PAS do Instituto
de Cincias Matemticas e de Computao (ICMC) da Universidade de So Paulo
(USP) por meio das heursticas: Algoritmo Gentico Compacto (AGc) e Algoritmo de
Estimulao de Distribuio.
O ICMC-USP possui 23 salas de aula distribudas em 4 blocos, onde so ministradas
cerca de 260 aulas para 140 turmas. No estudo, cada turma est associada a um ou
mais perfis de alunos que so conjuntos de discentes que dividem o mesmo curso e ano
de ingresso e, portanto, esto cursando um conjunto preestabelecido de turmas [9].
As restries do problema esto divididas em restries essenciais e restries de
qualidade [9].
As restries essenciais so:
Todas as aulas devem ser alocadas em alguma sala;
As aulas no podem ser sobrepostas na sala, ou seja, duas aulas com sobreposio
de horrio no podem ser simultaneamente alocadas na mesma sala;
As aulas s podero ser alocadas em salas que atendam suas demandas de requi-
sitos e capacidade para acomodar todos os participantes.
As restries de qualidade so:
29
Alocar aulas em salas que possuem capacidade o mais prximo possvel do nmero
de inscritos da aula;
Alocar todas as aulas de uma mesma turma em uma mesma sala;
Reduzir o deslocamento dos perfis de aluno, ou seja, alocar todas as aulas dos
perfis em salas prximas umas das outras;
Evitar o uso de salas preferencialmente vazias;
Alocar as aulas dos perfis respeitando as preferncias por salas dos mesmos.
A funo objetivo do trabalho busca minimizar: o percentual de assentos vazios nas
salas de aula, o nmero de troca de salas de uma mesma turma, a preterncia dos perfis,
o uso de salas preferencialmente vazias e o deslocamento das turmas considerando as
distncias entre as salas [9]. O modelo matemtico proposto apresentado na Figura
4.
30
Figura 4: Modelo matemtico da funo objetivo USP [9]
31
Os resultados foram obtidos com a utilizao de 3 instncias fictcias e uma instncia
real. A anlise final foca na comparao entre as diferentes heursticas [9].
2.3 Consideraes Finais
Como j mencionado no Captulo 1, a comparao deste trabalho com outros uma
tarefa com resultados inconclusivos, uma vez que as restries tratadas e as instncias
de dados utilizadas so diferentes das restries e instncias da UFU. O restante desse
captulo tem a finalidade de mostrar que os trabalhos lidam com instncias de tamanhos
diferentes, alm de enaltecer as caractersticas nicas desse trabalho que o diferencia
dos outros.
A Tabela 1 apresenta o tamanho das instncias de cada um dos trabalhos relatados.
Tabela 1: Tamanho das instncias nas diferentes universidades
UFU CA-UFPB CT-UFSM ICMC-USP
Turmas(UFU)/Aulas(Outros) 4000 1131 No indicado 260
Salas 245 60 50 23
Blocos 14 7 5 4
Um fator a ser destacado que, diferentemente deste, em nenhum dos trabalhos
relacionados mencionado que o sistema de automatizao proposto foi realmente
adotado pelas respectivas universidades.
Com relao s restries, algumas delas so comuns em todos os trabalhos que
abordam o tema e so responsveis pelas caractersticas essenciais do PAS. As restries
comuns so listadas abaixo:
Todas as turmas devem ser alocadas em alguma sala;
Em uma mesma sala, horrio e perodo no pode haver mais de uma turma;
32
Uma sala no pode receber uma turma cuja quantidade de alunos seja superior
sua capacidade.
Algumas das restries de qualidade mencionadas nos trabalhos relacionados podem
ser equiparadas com a relao de cursos e blocos da UFU, uma vez que esta foi criada
levando em conta as caractersticas das salas disponveis em cada bloco e a proximidade
entre eles. A Tabela 2 indica essas restries:
33
Tabela 2: Restries de qualidade nas diferentes universidades
UFU CA-UFPB CT-UFSM ICMC-USP
Adequao relao
de cursos e blocosNenhuma
As salas designa-
das devem estar
prximas do depar-
tamento de origem
Alocar aulas em sa-
las que possuem ca-
pacidade o mais pr-
ximo possvel do n-
mero de inscritos da
aula
Professores que dese-
jam salas com qua-
dro branco no de-
vem ficar em salas
com quadro verde
Reduzir o desloca-
mento dos perfis de
aluno, ou seja, alocar
todas as aulas dos
perfis em salas prxi-
mas umas das outras
Professores que dese-
jam salas com qua-
dro verde no devem
ficar em salas com
quadro branco
Alocar as aulas dos
perfis respeitando as
preferncias por salas
dos mesmos
34
Apesar dos trabalhos relacionados utilizarem heursticas diferentes, todos eles pos-
suem uma funo objetivo. Essas funes apresentadas nas Figuras 1, 2, 3 e 4 ex-
pressam cada uma das restries tratadas nos trabalhos e isso faz com que elas sejam
demasiadamente complexas. Um outro ponto diferencial desse trabalho que a funo
objetivo proposta lida exclusivamente com a quantidade de choques de horrio. A
Tabela 3 faz um resumo dos mtodos de busca e propsitos das funes objetivo nos
diferentes trabalhos.
Tabela 3: Mtodo e propsitos das funes objetivo nas diferentes universidades
Instituio Mtodo Funo objetivo
UFU Algoritmos genticosMinimizar a quantidade de choques
de alocao
CA-UFPBProgramao linear
inteira
Minimizar o nmero de aulas de
uma mesma turma alocadas em
salas diferentes
CT-UFSMModelo matemtico
multi-ndice
Minimizar a quantidade de assentos
vazios, alm de diminuir a distncia
percorrida pelos docentes
ICMC-USP
Algoritmo gentico compacto e
algoritmo de estimulao de
distribuio
Minimizar o percentual de assentos
vazios nas salas de aula, o nmero
de troca de salas de uma mesma
turma, a preterncia dos perfis,
o uso de salas preferencialmente
vazias e o deslocamento das turmas
considerando as distncias entre as
salas
35
As outras restries so tratadas pela representao do indivduo, as operaes gen-
ticas especficas e a utilizao de expresses condicionais. No Captulo 4 encontram-se
explicaes detalhadas sobre o tratamento de restries desse trabalho.
36
Captulo 3
Algoritmos Genticos
Algoritmos genticos so algoritmos de busca baseados nos mecanismos de seleo
natural e gentica. Eles combinam a sobrevivncia do mais apto com uma forma
estruturada de troca de informao gentica entre dois indivduos para formar uma
estrutura heurstica de busca [17].
Os AGs foram desenvolvidos por John Holland e seus colegas da Universidade de
Michigan. Os objetivos de suas pesquisas foram dois: (1) abstrair e explicar rigorosa-
mente o processo adaptativo de sistemas naturais e (2) projetar sistemas artificiais que
mantm os mecanismos importantes dos sistemas naturais. Esta abordagem trouxe
descobertas importantes na cincia de sistemas artificiais e naturais [18].
O tema central da pesquisa em algoritmos genticos tem sido a robustez, o equilbrio
necessrio entre eficincia e eficcia para a sobrevivncia em diferentes ambientes. As
implicaes da robustez para sistemas artificiais so diversas. Se sistemas artificiais
podem ser feitos mais robustos, muitas reformulaes dispendiosas podem ser reduzidas
ou eliminadas. Se altos nveis de adaptao podem ser alcanados, os sistemas j
existentes podem realizar suas funes de melhor forma [18].
AGs pertencem classe de algoritmos probabilsticos, pois eles combinam elemen-
tos de busca direta e estocstica. Por causa disso, o AG mais robusto que outros
mtodos de busca direta. Enquanto o AG mantm a populao de solues potenciais,
todos os outros mtodos processam um nico ponto no espao de busca. Por todos
esses atributos, os AGs so destinados para problemas complexos de otimizao como
escalonamento, problemas de transporte, problemas do caixeiro viajante, otimizao
de consultas de banco de dados, entre outros [19].
37
AGs pertencem a famlia de modelos computacionais inspirados na evoluo que
incorporam uma soluo potencial para um problema especfico, em uma estrutura
semelhante a de um cromossomo e aplicam operadores de seleo e cruzamento de forma
a preservar informaes crticas relativas soluo do problema. Deve ser observado
que cada cromossomo, chamado de indivduo no AG, corresponde a um ponto no espao
de solues do problema de otimizao [17].
De acordo com Michalewicz em [19], um algoritmo gentico para um determinado
problema deve conter os seguintes componentes:
Uma representao gentica para as potenciais solues do problema;
Uma maneira de criar uma populao inicial de possveis solues;
Uma funo de avaliao que se comporta como o ambiente, classificando solues
em termos de suas aptides (fitness);
Operadores genticos (recombinao e mutao) que alteram a composio dos
filhos (solues descendentes);
Valores para vrios parmetros que os algoritmos genticos utilizam (tamanho
da populao, probabilidade de aplicao de operadores genticos, entre outros).
A principal ideia dos algoritmos genticos criar uma populao de indivduos e,
durante certo nmero de iteraes (geraes), evoluir esta populao atravs de auto-
adaptao e recombinao [11]. Os passos gerais de um AG so:
1. Criar uma populao inicial aleatoriamente ou atravs de heurstica apropriada;
2. Avaliar os indivduos da populao atual a partir de uma funo de avaliao;
3. Selecionar indivduos para serem pais, segundo sua aptido;
38
3.1 Representao do Indivduo
Em algoritmos genticos, um indivduo uma soluo, uma soluo parcial ou um
conjunto de solues. A representao do indivduo em algoritmos genticos chamada
de cromossomo. A escolha de um cromossomo apropriado um assunto importante,
porque tal representao deve ser adequada para o funcionamento eficaz dos operadores
genticos e tambm pode ajudar a lidar com as restries do problema. Representaes
comuns para cromossomos utilizam strings binrias. Em muitos casos, estruturas mais
complexas so projetadas para representar indivduos para problemas do mundo real
[18].
Para muitos problemas na engenharia quase impossvel representar solues pela
representao binria. Por causa disso, vrios mtodos de codificao foram criados em
uma variedade de problemas para fornecer uma implementao efetiva dos algoritmos
genticos. De acordo com o tipo de smbolo que os alelos de um gene podem assumir,
os mtodos de codificao podem ser classificados como [16]:
Codificao binria;
Codificao por nmeros reais;
Codificao por nmeros inteiros ou permutao literal;
Codificao pela estrutura de dados geral.
A codificao por nmeros reais a mais adequada para problemas de otimizao de
funes. Foi confirmado por inmeros desenvolvedores que a codificao por nmeros
reais tem melhor desempenho que a codificao binria para a otimizao de funes
[16].
40
A codificao por nmeros inteiros ou permutao literal melhor utilizada para
problemas de otimizao combinatria, uma vez que a essncia dos problemas de oti-
mizao combinatria a busca pela melhor combinao de itens submetidos deter-
minadas restries [16].
Para problemas reais mais complexos sugerido uma estrutura de dados apropriada
como o alelo do gene, garantindo a captura da natureza do problema [16].
3.2 Inicializao da populao
Os AGs so algoritmos de busca estocsticos baseados em populao. Cada AG man-
tm uma populao de solues candidatas. O primeiro passo na aplicao do AG em
um problema de otimizao gerar uma populao inicial. O mtodo mais comum na
gerao de uma populao inicial atribuir um valor aleatrio do domnio permitido
para cada gene no cromossomo. O objetivo da atribuio de nmeros aleatrios ga-
rantir que a populao inicial seja uma representao uniforme de todo o espao de
busca. Se regies do espao de busca no forem cobertas pela inicializao da popula-
o, ento existem chances de que essas regies sejam negligenciadas pelo processo de
busca [20].
O tamanho da populao inicial influencia na complexidade computacional e nas
habilidades de explorao. Um grande nmero de indivduos aumenta a diversidade,
melhorando as habilidades de explorao da populao. Entretanto, quanto mais in-
divduos, maior a complexidade computacional por gerao. Ao passo que o tempo
de execuo por gerao aumenta, pode ser o caso em que uma menor quantidade de
geraes sejam necessrias para localizar uma soluo aceitvel. Por outro lado, uma
populao pequena representar uma pequena parte do espao de busca. Nesse caso, o
tempo de execuo por gerao pequeno, mas o AG pode precisar de mais geraes
41
para convergir [20].
3.3 Funo de Avaliao
No modelo de evoluo Darwiniano, os indivduos com as melhores caractersticas pos-
suem melhores chances de sobreviver e de se reproduzir. Com o intuito de determinar a
habilidade de um indivduo sobreviver, uma funo matemtica utilizada para avaliar
a soluo representada por um cromossomo. A funo de avaliao (fitness function),
f mapeia a representao do cromossomo em um valor escalar [20].
A funo de avaliao a maneira utilizada pelos AGs para determinar a qualidade
de um indivduo como soluo do problema em questo. A funo de avaliao deve,
portanto, ser escolhida com cuidado. Ela deve incluir todo o conhecimento que se
possui sobre o problema a ser resolvido, tanto com relao s suas restries quanto
aos seus objetivos de qualidade [17].
Para Engel em [20], a funo de avaliao representa a funo objetivo que, por
sua vez, descreve um problema de otimizao. Os diferentes tipos de problemas de
otimizao influenciam na formulao da funo de avaliao. Dessa forma:
Problemas sem restries: a funo de avaliao simplesmente a funo
objetivo.
Problemas com restries: para resolver este tipo de problema, alguns AGs
mudam sua funo de avaliao para conter dois objetivos, o objetivo original e
a penalidade referente restrio.
Problemas multi-objetivo: podem ser resolvidos usando uma abordagem de
agregao ponderada, onde a funo de avaliao uma soma ponderada de
todos os sub-objetivos, ou pela utilizao de algoritmos de otimizao baseados
42
nas fronteiras de Pareto.
3.4 Seleo
O princpio por trs dos algoritmos genticos essencialmente a seleo natural de
Darwin. A seleo fornece a fora condutora (conhecida como presso evolucionria ou
presso seletiva) em um algoritmo gentico. Com muita presso, a busca gentica ir
terminar prematuramente (convergncia prematura); com pouca presso, o progresso
evolucionrio ser mais lento do que o necessrio (difcil convergncia). A seleo
direciona a busca gentica para regies promissoras no espao de busca [16].
Para formar uma nova populao, os indivduos so selecionados com probabilidade
proporcional ao seu fitness. Isso garante que o nmero esperado de vezes que um
indivduo escolhido aproximadamente proporcional ao seu desempenho relativo na
populao, proporcionando aos melhores indivduos mais chances de se reproduzir [21].
Muitos mtodos de seleo j foram propostos, sendo alguns dos mtodos mais
comuns:
Seleo por Roleta;
Seleo por Torneio;
Seleo por Ranking.
3.4.1 Seleo por Roleta
A roleta um tipo de seleo proporcional que influencia o processo de seleo em
direo aos indivduos mais aptos. Aps a avaliao fi de cada indivduo em uma
determinada gerao e assumindo que n o tamanho da populao, o fitness total da
43
populao obtido atravs da Equao (1):
S =n
i=1
fi (1)
Em seguida, uma probabilidade designada para cada indivduo da populao, con-
forme a Equao (2):
pi =fi
S(2)
Finalmente, uma probabilidade acumulada obtida para cada indivduo pela adio de
sua probabilidade com a probabilidade acumulada dos membros anteriores, conforme
a Equao (3):
ci =i
k=1
pk, i = 1, 2, ..., n (3)
Um nmero aleatrio r distribudo uniformemente no intervalo [0, 1] sorteado por n
vezes e, em cada vez, um indivduo i selecionado tal que ci1 < r < ci. Quando r < c1
o primeiro indivduo selecionado. Esse processo pode ser visualizado como o giro de
uma roleta dividida em n pedaos, em que cada pedao possui tamanho proporcional
ao fitness do indivduo.
3.4.2 Seleo por Torneio
O mtodo de torneio consiste em selecionar uma srie de indivduos da populao e
fazer com que eles entrem em competio pelo direito de ser pai, usando como arma a
sua avaliao [17].
Nesse mtodo existe um parmetro denominado, tamanho do torneio (k), que define
quantos indivduos so selecionados aleatoriamente dentro da populao para competir
entre si. Uma vez definidos os competidores, aquele dentre eles, que possuir a melhor
avaliao selecionado para aplicao do operador gentico [17].
O valor mnimo de k igual a 2, pois do contrrio no haver competio. Se
for escolhido o valor igual ao tamanho da populao (n) o vencedor ser sempre o
44
vergncia gentica que tenha ocorrido na populao no decorrer do algoritmo gentico
[17].
Aps a ordenao de indivduos, deve-se fazer o seu mapeamento para uma funo
de avaliao. Uma opo de mapeamento possvel o mtodo linear, em que cada
indivduo recebe uma avaliao igual a [17]:
E(i, t) = Min+ (MaxMin).rank(i, t) 1
N 1(4)
onde:
E(i,t) o valor do mapeamento para o indivduo i na gerao t ;
Min o valor da avaliao que ser atribudo ao indivduo pior colocado no
ranking ;
Max o valor da avaliao que ser atribudo ao indivduo melhor colocado no
ranking ;
N o nmero de indivduos na populao;
rank(i,t) o ranking do indivduo i na populao mantida pelo AG na gerao t ;
Uma vez definidos os novos valores de avaliao destes indivduos, um mtodo
tradicional, tal como o da roleta viciada, pode ser utilizado para escolha dos pais que
sero submetidos aos operadores genticos. A Figura 7 ilustra a seleo por ranking
com Min=0,9 e Max=1,1.
46
Figura 7: Mtodo de seleo por ranking [17]
O problema deste e de todos os mtodos que reduzem a presso seletiva que o AG
pode levar um tempo maior para convergir para uma soluo com uma alta funo de
avaliao. Entretanto, a manuteno da diversidade na populao garante que o AG
varra um pedao maior do espao de solues, ficando menos suscetvel captura de
mximos locais [17].
3.5 Cruzamento (Recombinao)
O cruzamento o operador de recombinao mais importante, ele utiliza dois indiv-
duos, chamados de pais, e produz dois novos indivduos, chamados de filhos, atravs
da troca de partes dos cromossomos dos pais. Atravs do cruzamento, a busca di-
recionada para regies promissoras do espao de busca [21], ou seja, o operador
determinante da convergncia do algoritmo.
Landa Silva em [11] testou quatro formas de cruzamento para o PAS:
Cruzamento de 1 ponto;
Cruzamento de 2 pontos;
Cruzamento heurstico uniforme;
Cruzamento heurstico no uniforme;
47
Figura 9: Cruzamento de 1 ponto [17]
3.5.2 Cruzamento de 2 Pontos
O funcionamento dessa operao similar ao cruzamento de 1 ponto, com um pequeno
acrscimo: ao invs de sortear um ponto de corte, dois pontos de corte so sorteados.
O primeiro filho ser formado pela parte do primeiro pai fora dos pontos de corte e
pela parte do segundo pai entre os pontos de corte e o segundo filho ser formado pelas
partes restantes [17]. A Figura 10 exemplifica essa forma de cruzamento.
Figura 10: Cruzamento de 2 pontos [17]
3.5.3 Cruzamento Heurstico Uniforme
No cruzamento heurstico uniforme, cada par de genes correspondentes nos dois pais
so comparados em termos do seu fitness local. O gene com maior fitness copiado
para um dos filhos enquanto o outro gene copiado para o segundo filho [11]. A Figura
11 exemplifica essa forma de cruzamento.
49
3.6 Mutao
Em um AG simples a mutao uma alterao aleatria ocasional (com pequena
probabilidade) do valor de um gene. A mutao necessria porque, apesar de a
seleo e o cruzamento buscarem e recombinarem efetivamente, ocasionalmente, eles
podem tornar-se super-zelosos e perderem algum material gentico potencialmente til.
O operador de mutao protege contra essa perda irrecupervel [18].
A mutao ocorre para que os filhos possam ter caractersticas que no foram herda-
das diretamente dos seus pais, garantindo assim uma maior diversidade da populao
gerada. Considerando um indivduo com representao binria, a operao de mutao
pode ser exemplificada pela Figura 13.
Figura 13: Mutao em um indivduo com representao binria
A mutao em indivduos com representao binria a simples troca de um bit 0
por um bit 1, ou a troca de um bit 1 por um bit 0.
3.7 Escolha de Pais e Filhos Para Prxima Gerao
Uma vez que os operadores de cruzamento e mutao tenham sido aplicados, neces-
srio decidir quais indivduos daquela gerao sero substitudos pela nova prole para
formar a nova populao. Uma estratgia no elitista substitui todos os indivduos da
populao atual, enquanto uma estratgia elitista mantm os melhores indivduos para
51
que seu material gentico possa ser transferido para as prximas geraes [22].
O elitismo uma pequena alterao no mdulo de populao que praticamente no
altera o tempo de processamento de um AG. O elitismo garante que o desempenho do
AG sempre cresa com o decorrer das geraes [17].
A ideia bsica do elitismo que os n melhores indivduos de cada gerao no devem
morrer, eles devem passar para a prxima gerao para garantir que seus genomas sejam
preservados [17].
A manuteno do melhor indivduo da gerao t na populao da gerao t+1
garante que o melhor indivduo da gerao t+1 pelo menos igual que o melhor
indivduo da gerao t [17].
A curva de desempenho tpica de um problema de minimizao em um AG com
elitismo indicada pela Figura 14.
Figura 14: Curva tpica de um AG com elitismo em um problema de minimizao
3.8 Critrios de parada
Os operadores genticos so aplicados iterativamente em um AG at que uma condio
de parada seja alcanada. A condio de parada mais simples limitar o nmero
de geraes que um AG pode executar. O limite no deve ser muito pequeno, caso
contrrio, o AG no ter tempo suficiente para explorar o espao de busca [20].
Alm de limitar a quantidade de geraes, um critrio de convergncia utilizado
52
para detectar se a populao convergiu. A convergncia vagamente definida como um
evento em que a populao se torna estagnada. Os seguintes critrios de convergncia
podem ser utilizados [20]:
Terminar quando nenhuma melhora observada em um certo nmero consecutivo
de geraes;
Terminar quando no existe mudana no fitness mdio da populao;
Terminar quando uma soluo aceitvel for encontrada;
53
Captulo 4
Materiais e Mtodos
4.1 Funcionamento do Algoritmo Gentico
O PAS um problema de otimizao combinatria que caracterizado pelas suas
restries. Para Engel em [20], as restries colocam limitaes no espao de busca,
especificando regies no espao que contm solues no admissveis. O objetivo dos
algoritmos de otimizao nesses casos encontrar solues que estejam em regies
admissveis.
Em problemas com restries, a utilizao de operadores genticos nos indivduos
faz com que seja muito provvel a criao de solues no admissveis. Tcnicas de
tratamento de restries para algoritmos genticos podem ser agrupadas em trs cate-
gorias [19]:
1. Permitir a violao de restries, mas penaliz-las;
2. Aplicar heursticas especiais de reparao para corrigir as solues no admiss-
veis;
3. Utilizar representaes especiais de indivduos para garantir ou aumentar a pro-
babilidade de gerao de apenas solues admissveis ou utilizar operadores es-
pecficos para o problema que preservem a viabilidade das solues.
Considerando os requisitos computacionais da UFU indicados no Captulo 2, verifica-
se que o requisito Utilizar a relao de cursos e blocos para a alocao de espao fsico
no uma restrio para o AG. De acordo com as tcnicas para tratamento de restri-
es listadas, foi determinado que o indivduo tenha uma representao especial e que
54
as operaes de inicializao, cruzamento e mutao sejam especficas para o problema.
A Tabela 4 indica como feito o tratamento das restries para o problema da UFU.
Tabela 4: Tratamento de restries para o problema da UFU
Restrio Tratamento
Alocar todas as turmas ofertadas que
indicarem a necessidade de alocao
de sala
Representao do indivduo
Alocar turmas do mesmo curso e perodo
em uma nica sala quando os horrios
estiverem encaixados
Representao do indivduo e
operaes genticas especficas
Em uma mesma sala, horrio e perodo
no pode haver mais de uma turmaFuno de avaliao
Uma sala no pode receber uma turma
cuja quantidade de alunos seja superior
a sua capacidade
Inicializao da populao
e mutao - lgica condicional
Turmas sem necessidade de prancheta
devem ser alocadas apenas em salas
com carteiras;
turmas com necessidade prancheta
devem ser alocadas apenas em salas
com pranchetas
Inicializao da populao
e mutao - lgica condicional
O indivduo do problema representado por um cromossomo de tamanho igual
quantidade de turmas que devem ser direcionadas a um determinado bloco da univer-
sidade, e cada turma representada por um gene do cromossomo. Os valores que os
55
Figura 16: Parte de um indivduo com dados reais
A inicializao da populao para o problema em questo feita de forma aleatria
considerando a representao do indivduo definida. Para cada cromossomo e para
cada seo do cromossomo, uma sala sorteada, e se esta no violar as restries de
vagas e utilizao de prancheta, ento essa sala atribuda a todos os genes da seo,
caso contrrio, o sorteio continua at encontrar uma sala adequada.
Da forma como a inicializao da populao realizada, inevitvel que choques
de alocao (turmas alocadas na mesma sala, dia, horrio e perodo de realizao) no
aconteam quando a razo entre o nmero de turmas e a quantidade de salas grande.
Portanto, os indivduos sero avaliados pela quantidade de choques de alocao que os
mesmos possuem.
O objetivo do algoritmo gentico minimizar a quantidade de choques de alocao
at encontrar um indivduo que no possua choques, ou seja, que possui avaliao igual
zero. Um indivduo com avaliao igual zero representa uma das possveis solues
desejadas. Considerando q a quantidade de choques de alocao, a funo de avaliao
(fitness) do indivduo definida como:
fitness =
q (5)
57
O mtodo de seleo escolhido foi o torneio. Nenhuma modificao necessria no
mtodo devido representao do indivduo proposta.
A forma de cruzamento escolhida para este trabalho foi o heurstico no uniforme.
Considerando o indivduo proposto, ao invs de identificar os genes com menores ava-
liaes, so identificadas as sees com menores mdias de avaliao. O valor mdio
de avaliao utilizado, pois as sees podem conter diferentes quantidades de genes,
caso fosse utilizado a soma das avaliaes, as sees com menor quantidade de genes
levariam vantagem sobre as sees com maior quantidade de genes.
Na Figura 17 demonstrado o cruzamento heurstico no uniforme para um cro-
mossomo com 20 genes distribudos em 8 sees, onde as diferentes cores indicam cada
uma das sees. Foram destacadas as duas sees com menores valores mdios em cada
filho. Os nmeros em cada gene representam sua avaliao ao invs do valor de uma
sala para facilitar a compreenso da operao.
Figura 17: Cruzamento heurstico no uniforme para o indivduo proposto
Uma vez que a inicializao da populao garante indivduos que no violam as
58
Tabela 5: Parmetros de execuo do AG
Parmetros Valor
Qtd. indivduos da populao 200
Qtd. indivduos no torneio 10
Taxa de cruzamento 0,7
Taxa de mutao 0,05
4.2 Tecnologias Empregadas
Na UFU, o Sistema de Gesto (SG) responsvel por apoiar diversas reas dentro da
instituio. Os usurios podem acessar o SG pelo stio www.sg.ufu.br com sua devida
autenticao. O SG possui aplicaes relacionadas ao controle de frota, solicitao
de material e compras, acesso ao restaurante universitrio, controle acadmico entre
outras.
A oferta de disciplinas realizada pelo SG, portanto o desenvolvimento de aplicaes
para alocao de espao fsico nesse sistema possibilita que os dados sejam utilizados
de forma integrada.
Na parte de viso so utilizadas as tecnologias: HTML, CSS e JavaScript. Para a
parte de controle utilizado Java verso 7. O banco de dados utilizado o IBM DB2
verso 9.7. A IDE de desenvolvimento utilizada o Eclipse Mars. Foi utilizado um
computador com processador Intel Core i7-3770 3.40 GHz e 8 GB de memria.
4.3 Aplicaes Desenvolvidas como Resultado deste Trabalho
A aplicao 11.02.03.11 responsvel por manter a relao de prdios e cursos. Nela,
o usurio informa um prdio e, em seguida, adiciona ou exclui os perodos de um
curso que tero suas turmas alocadas no prdio informado. Inicialmente foi feita uma
60
importao dos dados dessa relao que estavam disponveis em uma planilha. Para o
processamento do 2o semestre de 2016 no foram necessrias modificaes. A Figura
19 apresenta a interface dessa aplicao.
Figura 19: Aplicao 11.02.03.11 - Relao de prdios e cursos
A aplicao 11.02.03.12 responsvel por manter a relao de turmas e sees.
Nela, o usurio possui diferentes opes para gerenciamento das sees, alm de possuir
relatrios de apoio.
Na aba Cadastro, o usurio pode adicionar, alterar e excluir sees e turmas.
Quando uma seo est selecionada, a relao das turmas vinculadas ela renderizada
na tela em forma de lista. Dessa forma o usurio pode visualizar todas as informaes
das turmas dentro de uma seo. A Figura 20 apresenta a aba Cadastro.
61
Figura 20: Aplicao 11.02.03.12 - Relao de turmas e sees aba Cadastro
Na aba Gerao Automtica, o usurio possui duas opes para a criao de sees
automaticamente. Caso opte pela opo Relao Prdios Curso, sees so criadas
utilizando os dados da Relao de Prdios e Cursos e da Oferta de Disciplinas para o
ano e semestre informado. A opo Cpia realiza a cpia das sees utilizando o ano
e perodo de referncia indicados, alm dos dados da Oferta de Disciplinas. A opo
Cpia ainda no foi utilizada, uma vez que ainda no existem dados para serem
utilizados como referncia. Aps a gerao automtica das sees, o usurio ainda
pode modific-las conforme desejar pela aba Cadastro. A Figura 21 apresenta a aba
Gerao Automtica.
62
Figura 21: Aplicao 11.02.03.12 - Relao de turmas e sees aba Gerao Automtica
Na aba Relatrio, o usurio possui a opo de 3 relatrios. A Figura 22 apresenta
a aba Relatrio.
Figura 22: Aplicao 11.02.03.12 - Relao de turmas e sees aba Relatrio
O relatrio Relao Turmas e Sees apresenta as informaes das sees criadas
para um determinado bloco, ano e perodo. Ele fornece uma viso mais generalizada
em relao aba Cadastro. A Figura 23 apresenta uma pgina deste relatrio.
63
Figura 23: Relatrio 11.02.03.12 - Relao turmas sees
O relatrio Sees Crticas apresenta as sees que possuem turmas muito diver-
gentes em relao quantidade de vagas. Sua importncia reside no fato de que apenas
uma sala que comporte a maior turma de uma seo pode ser alocada para todas as
turmas dessa seo. Diante disso, o usurio pode remanejar as turmas para sees que
possuem turmas com quantidade de vagas mais prximas. A Figura 24 apresenta este
relatrio.
64
Figura 24: Relatrio 11.02.03.12 - Sees crticas
O relatrio Qtd. de Turmas por Horrio apresenta um mapa da quantidade de
turmas existentes para um determinado bloco, ano e perodo em cada horrio de aula
de uma semana. Com este relatrio, o usurio pode visualizar os horrios que possuem
maior concentrao de turmas. Caso um horrio possua quantidade de turmas maior
que a quantidade de salas do bloco, certo que o processamento terminar com choques
de alocao. A Figura 25 apresenta este relatrio.
65
Figura 25: Relatrio 11.02.03.12 - Quantidade de turmas por horrio
Aps a montagem das sees, o processamento da alocao de salas feito na
aplicao 11.02.03.13. Basta que o usurio informe o bloco, ano e perodo e clique no
boto Processar. Uma vez iniciado o processamento, o usurio pode acompanhar o
progresso pela busca da soluo por uma janela que atualizada a cada segundo. A
Figura 26 apresenta essa aplicao no incio do processamento e prximo a encontrar
uma soluo admissvel.
66
Figura 27: Aplicao 11.02.03.14 - Alocao temporria
Caso o processamento seja finalizado com choques de alocao, os mesmos so
destacados na cor vermelha nos horrios em que eles ocorreram. A Figura 28 apresenta
essa funcionalidade.
68
Figura 29: Aplicao 11.02.03.14 - Excluso e realocao de turmas
O passo final do processo consiste em alocar definitivamente as salas para as turmas
a partir da alocao temporria. A janela Alocao Definitiva ao ser aberta verifica
pela existncia de choques de alocao no prdio e informa ao usurio em quais salas
eles ocorrem. Caso o prdio no possua choques de alocao, a aplicao habilita o
boto Confirmar. A Figura 30 apresenta essa funcionalidade.
70
Figura 30: Aplicao 11.02.03.14 - Alocao definitiva
71
Captulo 5
Resultados e Discusses
A primeira etapa deste captulo testar o algoritmo gentico proposto e verificar a
viabilidade utilizando o resultado da alocao no bloco 5O-A do primeiro semestre
de 2016. O processo de alocao de espao fsico no primeiro semestre de 2016 foi
feito manualmente, portanto, as restries foram atendidas e na soluo adotada no
existem choques de alocao. Sendo assim, espera-se que o AG faa a redistribuio
de salas e que encontre um indivduo sem choques de alocao.
No bloco 5O-A foram alocadas 420 turmas distribudas em 26 salas de aula. As 420
turmas foram divididas em 88 sees. O bloco possui apenas salas com carteira com
quatro tipos diferentes de capacidade (40, 42, 45 e 50).
A Tabela 6 apresenta os resultados obtidos em 10 execues do AG. A coluna
Inicial indica qual a avaliao do melhor indivduo aps a inicializao da populao.
A coluna Final indica qual a avaliao do melhor indivduo na ltima gerao. A
coluna Geraes indica a quantidade de geraes executadas quando o processamento
foi interrompido.
72
Pela Figura 31 observa-se que, nas geraes iniciais, a avaliao do melhor indivduo
sempre apresenta decaimento e quanto mais o AG se aproxima da soluo, maior a
dificuldade de se encontrar um indivduo com melhor avaliao.
Os resultados das 10 execues mostram que o AG encontrou uma soluo sem
choques de alocao em 60% casos, enquanto nos outros 40% a soluo encontrada
apresentou 2 choques, o que representa uma queda de aproximadamente 99% da quan-
tidade de choques inicial. Mesmo quando a soluo admissvel no encontrada, a
baixa quantidade de choques de alocao faz com que ela seja passvel de ser analisada
e corrigida pelo administrador de espao fsico da instituio. Os tempos de execuo,
mesmo no pior caso (8 minutos e 4 segundos), so satisfatrios levando-se em conta
que seria necessrio pelo menos um dia para fazer a alocao manualmente.
Uma vez que os resultados obtidos mostram a viabilidade de aplicao deste mtodo
no problema, a segunda etapa deste captulo apresenta os resultados obtidos na apli-
cao deste mtodo para os dados resultantes da oferta de disciplinas do 2o semestre
de 2016.
A Tabela 7 apresenta os resultados das 20 execues realizadas para os 14 blocos da
cidade de Uberlndia. O mtodo no foi aplicado nos campi das cidades de Ituiutaba,
Patos de Minas e Monte Carmelo. A letra C indica a quantidade de salas com carteira,
enquanto a letra P indica a quantidade de salas com prancheta.
74
Tabela 7: Resultados de execuo para o 2o semestre de 2016
Bloco
Qtd. de
Salas
Tipos
diferentes
de sala
Qtd. de
turmas
Qtd. de
sees
Qtd. de choquesGeraes Tempo[s]
Inicial Final
C P
1B 11 0 1 548 26 327,2 51,63 22 0 560,7 51,39 862,2 81,08
1BCG 12 0 2 58 13 0 0 0 0 0 0 4 0
1C 4 0 1 64 4 0 0 0 0 0 0 4 0
2C 5 0 1 99 13 74 6,59 56 0 550 77,18 105,7 13,61
3D 15 0 2 228 45 46,4 7,99 0 0 10,95 3,25 9,25 1,16
3Q 29 4 9 633 89 254,7 17,41 4,8 2,46 975,4 343,62 1099,1 378,91
4K 11 0 4 107 14 0 0 0 0 0 0 4 0
4L 5 0 1 46 12 2,1 1,52 0 0 0,95 0,69 4 0
5O-A 26 0 4 392 73 181,1 13,29 1,4 1,31 460,7 244,73 256,8 132,4
5O-B 0 8 1 42 11 0 0 0 0 0 0 4 0
5R-A 26 0 3 692 70 425,7 49,78 3,2 2,09 759 227,95 1006,5 294,07
5R-B 8 0 2 129 22 41,4 6,87 8 0 516,05 21,41 128,45 5,15
5S 33 0 1 191 36 2,6 1,6 0 0 1,1 0,72 5,15 0,37
8C 48 0 5 880 128 701,1 34,89 28,8 3 1111,2 344,64 2089,8 651,96
Analisando os resultados obtidos na Tabela 7 juntamente com a relao de turmas
e sees construdas, o administrador de espao fsico da UFU verificou que, para os
blocos nos quais no foram encontrados indivduos admissveis ou que no chegaram
prximos de uma soluo, realmente no existia uma soluo possvel. Isso devido
aos seguintes fatores:
Sees com um nmero muito grande de turmas, pois essas sees podem ocupar
uma grande parte dos horrios disponveis em uma sala, dificultando o compar-
tilhamento da mesma com outra seo;
Sees heterogneas em relao quantidade de vagas, ou seja, turmas com
poucas vagas na mesma seo do que turmas com muitas vagas, fazendo com que
todas as turmas da seo sejam alocadas em uma sala maior;
75
Maior quantidade de turmas do que salas em um determinado horrio;
Apesar de no encontrar uma soluo admissvel para todos os blocos, o adminis-
trador de espao fsico da instituio possui duas maneiras de resolver os problemas
de choque de alocao resultantes, sendo elas: (1) remontar as sees crticas e rea-
lizar o processamento novamente, ou (2) eliminar os choques de alocao atravs da
realocao de turmas em outras salas.
76
Captulo 6
Relato do Administrador de Espaos da UFU
A aba Cadastro da aplicao 11.02.03.12 foi utilizada quando havia necessidade de
montar sees que no atendem a relao de prdios e cursos, servindo como alternativa
para a gerao automtica, e isso ofereceu diferentes opes para a melhor distribuio
das turmas nos blocos.
Os relatrios disponveis na aplicao 11.02.03.12 foram de grande utilidade. Uma
vez que para cada bloco existe uma grande quantidade de sees e os relatrios pro-
porcionaram uma maneira mais fcil de encontrar informaes sobre as turmas, alm
de indicarem as sees e horrios que poderiam dificultar o processamento da alocao
de salas.
A aplicao 11.02.03.14 foi essencial na etapa de alteraes de salas e/ou horrios
que ocorreram posteriormente alocao definitiva. Feito manualmente, era preciso
registrar as alteraes em uma planilha e na aplicao de Oferta de Disciplinas do SG.
Comparando as duas formas, o trabalho pela aplicao 11.02.03.14 foi mais fcil, uma
vez que tudo foi resolvido em um nico lugar, sem a necessidade de lidar com outros
documentos e aplicaes.
No processo manual de alocao de salas, aps a finalizao do planejamento em
uma planilha, era preciso acessar a aplicao de Oferta de Disciplinas, e alocar as salas
turma por turma. A funcionalidade de alocao definitiva da aplicao 11.02.03.14 for-
neceu agilidade nesta etapa, uma vez que todo o planejamento de alocao temporrio
pode ser feito definitivo pelo boto Confirmar da janela Alocao Definitiva.
Considerando que o processo de alocao de salas feito uma vez por semestre,
sendo que mais de 4000 turmas devem ser distribudas em 245 salas de aula, o sistema
77
desenvolvido tornou o processo prtico e dinmico. A execuo do processo manual
era realizada por um responsvel com a ajuda de at dois estagirios consumindo um
tempo total de 640 horas, com a implantao do sistema proposto, as atividades foram
feitas apenas pelo responsvel e levou em torno de 160 horas para ser finalizada.
78
Captulo 7
Concluses
Este trabalho demonstrou que estratgias baseadas em algoritmos genticos so vi-
veis para a resoluo do problema de alocao de salas da Universidade Federal de
Uberlndia.
A contribuio deste trabalho foi apresentar uma maneira diferente de tratar um
problema de natureza multi-objetiva. Normalmente resolvido com uma funo de ava-
liao que representa a soma ponderada de todas as restries impostas, a funo de
avaliao deste trabalho lida apenas com a restrio de mltiplas turmas em um nico
horrio, enquanto as outras so tratadas pela representao especial do indivduo, dos
operadores genticos especficos e por regras condicionais.
A comparao dos resultados de alocao automatizada do bloco 5O-A no 1o semes-
tre de 2016 com a soluo encontrada manualmente garantiu a viabilidade de aplicao
do mtodo, uma vez que o AG encontrou a soluo (ou prximo desta) em todos os
casos com um tempo de processamento muito baixo.
Nos dados referentes oferta de disciplinas do 2o semestre de 2016, as alocaes
nos blocos 1B, 2C e 8C tiveram as piores performances devido fatores mencionados
no Captulo 6. Mesmo assim, analisando os choques de alocao juntamente com os
relatrios de apoio da aplicao 11.02.03.12, o administrador de espao fsico pode
refazer a diviso das sees e conseguir uma soluo vivel. Nos demais blocos todos
os resultados foram satisfatrios. Mesmo quando havia choques de alocao, como nos
blocos 3Q, 5O-A, 5R-A e 5R-B, eram baixos permitindo assim que o administrador
de espao fsico remanejasse as turmas com choques. Nota-se que 50% dos blocos
obtiveram solues viveis em todas as 20 execues. Alm disso, os desvios-padro
79
da coluna Final apresentados decorrentes das 20 execues so relativamente baixos,
o que indica robustez e confiabilidade da ferramenta proposta.
Somando os tempos de processamento de todos os blocos ao tempo necessrio para a
montagem de sees, a anlise de resultados e a realocao de salas ps-processamento,
estima-se que o tempo total para a execuo do processo de alocao de salas no
segundo semestre de 2016 consumiu cerca de 160 horas. Comparando com as 640
horas de trabalho necessrias para a realizao do processo manualmente, verifica-se
uma reduo de 75% das horas necessrias. Vale ressaltar ainda que, foi a primeira vez
em que o sistema de automatizao proposto foi utilizado e foi necessrio um perodo
de adaptao ao novo processo, portanto espera-se que essa reduo seja ainda maior
nos prximos semestres.
80
Referncias
[1] Burke, E. K. e Varley, D. B., Space Allocation: an analysis of higher education
requirements, Lecture Notes in Computer Science, vol. 1408 (1997), pp. 20-36.
[2] Schaefer, A., A survey of automated timetabling, Artificial Intelligence Review,
vol. 13 (1999), pp. 87-127.
[3] Bardadyn, V. A., Computer-Aided School and University Timetabling: The New
Wave, Lecture Notes in Computer Science, vol. 1153 (1996), pp. 22-45.
[4] Carter, M. W. e Tovey, C. A, When is the Classroom Assignment Problem
Hard?, Operations Research, vol. 40 (1992), pp. 28-39.
[5] de Werra, D., An introduction to timetabling, European Journal of Operational
Research Society, vol. 19 (1985), pp. 151-162.
[6] Burke, E. K. e Varley, D. B., Automating Space Allocation in Higher Educa-
tion, Lecture Notes in Artificial Intelligence, vol. 1585 (1998), pp. 66-73.
[7] Czibula, O. Gu, H. Russell, A. e Zinder, Y, A Multi-Stage IP-Based Heu-
ristic for Class Timetabling and Trainer Rostering, Proceedings of the 10th In-
ternational Conference on the Practice and Theory of Automated Timetabling,
(2014), pp. 102-127.
[8] McCollum, B., A perspective on bridging the gap between theory and practice
in university timetabling, Lecture notes in computer science, vol. 3867 (2007), pp.
3-23.
81
[9] Cirino, R. B. Z, Santos, M. O, Delbem, A. C. B., Aplicao da Metaheurs-
tica AGc para o Problema de Alocao de Aulas Salas, Anais do XLVII SBPO
(2015), pp. 1745-1755.
[10] He-nan, Z. e Shao-wen, Z., Solving UTP Containing Combining Classes using
GA, International Journal of u-and e-Service, Science and Technology, vol. 7
(2014), pp. 277-286.
[11] Landa Silva, J. D., Metaheuristic and Multiobjective Approaches for Space Al-
location, Thesis, School of Computer Science and Information Technology, Uni-
versity of Nottingham, Nottingham UK (2003).
[12] Queiroga, E. V, Jnior, T. L. B, Cabral, L. A. F, da Costa, L. C. A,
Subramaniana, A., Problama de Alocao de Aulas: O caso da Central de Aulas
da UFPB, Anais do XLVII SBPO (2015), pp. 848-859.
[13] Sales, E. S, Mller, F. M, Simonetto, E. L., Soluo do Problema de
Alocao de Salas Utilizando um Modelo Matemtico Multi-ndice, Anais do XLVII
SBPO (2015), pp. 2596-2607.
[14] Paechter, B., Mines better than yours - comparing timetables and timetabling
algorithms, Proceedings of the 10th International Conference on the Practice and
Theory of Automated Timetabling (2014), pp. 8-9.
[15] Silva, D. J. da, Silva, G. C. da, Heursticas Baseadas no Algoritmo de Colora-
o de Grafos para o problema de alocao de salas em uma instituio de ensino
superior, Simpsio Brasilerio de Pesquisa Operacional, (2010), pp. 2839-2849.
[16] Gen, M. e Cheng, R., Genetic Algorithms and Engineering Optimization, John
Wiley & Sons, Inc. (2000).
82
[17] Linden, R., Algoritmos Genticos, Cincia Moderna, 3a Edio (2012).
[18] Goldberg, D. E., Genetic algorithms in search, optimization, and machine le-
arning, Addison-Wesley Publishing Company, Inc. (1989).
[19] Michalewicz, Z., Genetic algorithms + data structures = evolution programs,
Springer, 3rd Edition (1996).
[20] Engelbrecht, A. P., Computational Intelligence An Introduction, John Wiley
& Sons, Inc. (2007).
[21] Tomassini, M., A survey of Genetic Algorithms, Annual Reviews of Computati-
onal Physics, vol. 3 (1995), pp. 3-4.
[22] Man, K. F. Tang, K. S. e Kwong, S., Genetic Algorithms: Concepts and
Design, Springer (1999).
83
Publicaes
As publicaes resultantes deste trabalho so apresentadas a seguir.
Proposta de um Sistema Baseado em Computao Evolutiva para o Trata-
mento do Problema de Alocao de Espao Fsico: O Caso da Universidade
Federal de Uberlndia
Guilherme Palhares Theodoro
Igor Santos Peretta
Keiji Yamanaka
Trabalho apresentado na XIV Conferncia de Estudos em Engenharia Eltrica, Uber-
lndia, Brasil, 2016.
Utilizao de Algoritmos Genticos para o Problema de Alocao de Salas
da Universidade Federal de Uberlndia
Guilherme Palhares Theodoro
Igor Santos Peretta
Keiji Yamanaka
Trabalho apresentado na XIII Encontro Nacional de Inteligncia Artificial e Computa-
cional, Recife, Brasil, 2016.
Disponvel em: http://www.lbd.dcc.ufmg.br/colecoes/eniac/2016/045.pdf