Você está na página 1de 56

UNIVERSIDADE FEDERAL DO ESPRITO SANTO

CENTRO DE CINCIAS AGRRIAS


DEPARTAMENTO DE COMPUTAO

ANDR SOARES CARVALHO

META-HEURSTICAS PARA RESOLUO DE UM CASO


REAL DE PROGRAMAO DE HORRIOS

ALEGRE
2015

ANDR SOARES CARVALHO

META-HEURSTICAS PARA RESOLUO DE UM CASO


REAL DE PROGRAMAO DE HORRIOS

Trabalho de concluso de curso apresentado


ao Departamento de Computao do Centro
de Cincias Agrrias da Universidade
Federal do Esprito Santo, como requisito
parcial para obteno do grau de Bacharel
em Sistemas de Informao.
Orientador: Prof. Dr. Geraldo Regis Mauri.

ALEGRE
2015

DEDICATRIA

Dedico a todos aqueles q d alguma forma estiveram esto prximos de mim,


fazendo esta vida valer cada vez mais pena.

AGRADECIMENTOS

Agradeo a Deus, que sempre iluminou minha jornada.

Agradeo a minha famlia, em especial aos meus pais, por todo o apoio e incentivo.

Agradeo a minha namorada Mariana Spala, que sempre me apoiou, incentivou, e


esteve presente em todos os momentos junto a mim.

Agradeo ao meu orientador Geraldo por se disponibilizar em me ajudar nesse


projeto.

Agradeo aos professores do Departamento de Computao e outros


departamentos do CCA-UFES que estiveram presentes durante toda a minha
graduao, transmitindo um pouco de seu conhecimento.

Agradeo aos meus professores Alessandra Fonseca e Charles Alto presentes no


incio da minha graduao na UVV Guau, em especial ao Charles por todos os
conselhos e motivaes.

Agradeo a todos os envolvidos nesse projeto, funcionrios da secretria acadmica


que prontamente me atenderam nas diversas solicitaes de relatrios sobre as
ofertas das disciplinas, relao de docentes, entre outros relatrios necessrios,
sanando todas as minhas dvidas, aos coordenadores dos cursos, que
disponibilizaram informaes essenciais para que esse projeto fosse realizado com
sucesso.

Agradeo a minha banca examinadora que cederam um pouco de seu tempo para
participarem dessa etapa que to importante para mim.

Agradeo aos meus amigos que me acompanharam durante toda a jornada,


principalmente a Paula e o Leandro.

Agradeo aos meus colegas de trabalho por toda a pacincia que tiveram comigo
nesse tempo juntos.

RESUMO

Confeccionar quadro de horrios que atendam os critrios pedaggicos das


instituies de ensino tem sido um problema normalmente solucionado de forma
artesanal. Esse processo requer muitos dias de trabalho e o envolvimento de
diversas pessoas, em virtude dos vrios requisitos pedaggicos e institucionais a
serem considerados. Neste trabalho, o objetivo foi abordar o Problema de
Programao de Horrios de Disciplinas em Universidades (PPHDU) existente no
Centro de Cincias Agrrias da Universidade Federal do Esprito Santo (CCA-
UFES). Para solucionar esse problema, foram utilizadas as meta-heursticas
Simulated Annealing e Clustering Search (CS).

Palavras-chave: Problema de Programao de Horrios de Disciplinas em


Universidades; Simulated Annealing; Clustering Search.

METAHEURISTICS TO SOLVE A REAL UNIVERSITY COURSE


TIMETABLING PROBLEM

ABSTRACT

Solving a timetabling problem ensuring pedagogical criterions from educational


institutions has been a problem usually treated manually. This process requires many
days of work and the effort of a lot of people, because several pedagogical and
institutional requirements must to be considered. This work aims to solve the
University Course Timetabling Problem (UCTP) at the School of Agricultural
Sciences in Federal University of Esprito Santo (CCA-UFES). The metaheuristics
Simulated Annealing and Clustering Search (CS) were used to solve the UCTP.

Keywords: University Course Timetabling Problem; Simulated Annealing; Clustering


Search.

LISTA DE FIGURAS

Figura 1 - Primeiro Exemplo de alocao de disciplinas. .......................................... 17


Figura 2 - Segundo exemplo de alocao de disciplinas. ......................................... 17
Figura 3 - Entidade Professor.................................................................................... 21
Figura 4 - Entidade Disciplina.................................................................................... 21
Figura 5 - Entidade Tipo de Sala. .............................................................................. 22
Figura 6 - Entidade Sala. ........................................................................................... 22
Figura 7 - Entidade Horrio. ...................................................................................... 22
Figura 8 - Entidade turma. ......................................................................................... 23
Figura 9 - Entidade oferta. ......................................................................................... 23
Figura 10 Exemplo de matriz para a sala 0. ........................................................... 24
Figura 11 Exemplo de matriz para a sala 1. ........................................................... 24
Figura 12 - Exemplo de matriz para a turma 0. ......................................................... 25
Figura 13 - Exemplo de matriz para a turma 1. ......................................................... 25
Figura 14 - Exemplo de matriz para o professor 0. ................................................... 26
Figura 15 - Exemplo de matriz para o professor 1. ................................................... 26
Figura 16 - Algoritmo SA. .......................................................................................... 40
Figura 17 - Fluxograma da CS .................................................................................. 42
Figura 18 - Pseudocdigo da CS. ............................................................................. 42
Figura 19 - Exemplo de clculo da distncia de Hamming. ....................................... 44

LISTA DE TABELAS

Tabela 1 - Disciplinas desconsideradas para o curso de Engenharia Florestal. ....... 29


Tabela 2 - Disciplinas desconsideradas para o curso de Engenharia Industrial
Madeireira. ................................................................................................................ 30
Tabela 3 - Disciplinas Geologia com aula de campo aos sbados. .......................... 32
Tabela 4 - Disciplinas desconsideradas por ocorrerem no HOVET. ......................... 33
Tabela 5 - Disciplinas desconsideradas fora do perodo correto ............................... 34
Tabela 6 - Disciplinas desconsideradas - Zootecnia. ................................................ 36
Tabela 7 - Penalizaes utilizadas na funo objetivo. ............................................. 47
Tabela 8 - Parmetros utilizados na SA e na CS. ..................................................... 47
Tabela 9 - Resultados obtidos pela resoluo em uma etapa. .................................. 48
Tabela 10 - Resultados obtidos pela resoluo em duas etapas 5 horas. ............. 49
Tabela 11 - Resultados obtidos pela resoluo em duas etapas 10 horas. ........... 50
Tabela 12 - Comparativo entre as melhores solues obtidas. ................................. 50

LISTA DE ABREVIATURAS E SIGLAS

ALNS Adaptive Large Neighborhood Search

CCA-UFES Centro de Cincias Agrrias da Universidade Federal do Esprito


Santo

CS Clustering Search

ECS Evolutionary Clustering Search

FO Funo Objetivo

GRASP Greedy Randomized Adaptive Search Procedure

HOVET Hospital Veterinrio

ILS Iterated Local Search

PHE Programao de Horrios Escolares

PPHDU Problema de Programao de Horrios de Disciplinas em Universidades

SA Simulated Annealing

SAT Problema de Satisfazibilidade Proposital

TPA Tecnologia de Produtos Agrcolas

UFES Universidade Federal do Esprito Santo

VND Variable Neighborhood Descent

SUMRIO

1. INTRODUO ...................................................................................................... 12

1.1. O PROBLEMA E SUA IMPORTNCIA ........................................................... 12

1.2. OBJETIVOS .................................................................................................... 17

1.2.1. Objetivo geral ............................................................................................. 17

1.2.2. Objetivos especficos ................................................................................ 18

1.3. ESTRUTURA DO TRABALHO ........................................................................ 18

2. REVISO DA LITERATURA ................................................................................ 19

3. METODOLOGIA ................................................................................................... 21

3.1. MODELAGEM DO PROBLEMA ...................................................................... 21

3.2. REPRESENTAO DE UMA SOLUO ....................................................... 23

3.3. COLETA DE DADOS ...................................................................................... 26

3.3.1 Agronomia .................................................................................................. 27

3.3.2 Biologia Bacharelado................................................................................. 27

3.3.3 Biologia Licenciatura ................................................................................. 28

3.3.4 Cincia da Computao ............................................................................. 28

3.3.5 Engenharia de Alimentos .......................................................................... 28

3.3.6 Engenharia Florestal .................................................................................. 29

3.3.7 Engenharia Industrial Madeireira .............................................................. 30

3.3.8 Engenharia Qumica................................................................................... 31

3.3.9 Farmcia ..................................................................................................... 31

3.3.10 Fsica Licenciatura ..................................................................................... 32

3.3.11 Geologia ...................................................................................................... 32

3.3.12 Matemtica Licenciatura............................................................................ 33

3.3.13 Medicina Veterinria .................................................................................. 33


3.3.14 Nutrio ....................................................................................................... 35

3.3.15 Qumica Licenciatura ................................................................................. 35

3.3.16 Sistemas de Informao ............................................................................ 35

3.3.17 Zootecnia .................................................................................................... 36

3.3.18 Outras informaes ................................................................................... 36

3.4. FUNO OBJETIVO ....................................................................................... 37

3.5. SIMULATED ANNEALING .............................................................................. 39

3.5.1. Soluo inicial ............................................................................................ 40

3.5.2. Movimento 1 ............................................................................................... 40

3.5.3. Movimento 2 ............................................................................................... 41

3.6. CLUSTERING SEARCH ................................................................................. 41

3.6.1. Principais componentes da CS ................................................................. 43

3.6.1.1. Geradora de solues ............................................................................... 43

3.6.1.2. Processo de agrupamento ........................................................................ 43

3.6.1.3. Busca local................................................................................................ 44

3.7. RESOLUO DO PPHDU EM ETAPAS ......................................................... 45

4. RESULTADOS OBTIDOS .................................................................................... 47

5. CONCLUSES ..................................................................................................... 52

REFERNCIAS BIBLIOGRFICAS ......................................................................... 53


12

1. INTRODUO

Problemas de otimizao combinatria podem ser organizados, segundo Taha


(2008), no seguinte formato:

Maximizar ou minimizar funo objetivo


Sujeito a
restries

A soluo do modelo considerada vivel se satisfazer todo o conjunto de restries


e, considerada tima, caso alm de vivel, atingir o melhor valor da funo objetivo.

Carvalho (2011) define funo objetivo como uma funo que determina a qualidade
de uma soluo em relao s variveis que se deseja otimizar.

Segundo Chaves (2009), uma maneira de solucionar tal problema seria verificar
todas as solues possveis, o que fica invivel para problemas reais, cujo nmero
de solues cresce exponencialmente em funo do tamanho do problema. Para
isso, tcnicas heursticas podem ser utilizadas para solucionar tais problemas.
Heursticas consistem em mtodos que utilizam o conceito de tentativa e erro para
encontrar solues de boa qualidade em um tempo aceitvel.

possvel encontrar solues para problemas de otimizao combinatria em


diversas reas e que esto presentes na vida real, como programao de horrios,
rotao de culturas, roteamento de veculos, corte de placas, escalonamento de
funcionrios.

1.1. O PROBLEMA E SUA IMPORTNCIA

Segundo Abramson (1991), o problema relacionado programao de horrios em


uma instituio de ensino consiste na alocao de turmas, professores e salas, de
tal forma que nenhum recurso esteja alocado mais de uma vez em um mesmo
perodo de tempo. Por sua vez, Souza (2000) define que o referido problema
consiste em fixar uma sequncia de encontros entre professores e estudantes em
um perodo prefixado de tempo, satisfazendo um conjunto de requisitos de vrias
naturezas.
13

Segundo Santos e Souza (2007), a natureza dos requisitos de um problema de


programao de horrios pode ser dividida em trs categorias, sendo essas
organizacionais, pedaggicos e pessoais.

As organizacionais tratam questes como gesto de recursos e cumprimento da


legislao atual, por exemplo, a aula de Programao I dever ser realizada em um
laboratrio de informtica. Os requisitos pedaggicos uma vez cumpridos podem
melhorar o desempenho nas aulas, isto , maior durao de aula para que seja
possvel realizar determinadas atividades em uma disciplina. Por fim, as categorias
pessoais esto de acordo com as necessidades pessoais do corpo docente, por
exemplo, um determinado professor prefere que suas aulas ocorram no perodo
vespertino ou noturno.

O processo de confeccionar quadro de horrios que atendam os critrios


pedaggicos das instituies de ensino tem sido um problema normalmente
solucionado de forma artesanal, o que requer muito tempo, visto que em alguns
casos esse processo pode durar dias ou semanas. Alm disso, o envolvimento de
diversas pessoas se faz necessrio para solucionar o problema. Em geral, esse
processo pode resultar em solues satisfatrias, insatisfatrias ou at mesmo
inviveis, caso no atendam aos requisitos definidos pela instituio. Por exemplo,
um professor pode ficar descontente caso tenha muitos intervalos ociosos entre uma
aula e outra, o que caracterizaria um resultado insatisfatrio; um professor possuir
duas aulas em um mesmo intervalo de tempo, o que seria invivel na prtica.

Schaerf (1999) afirma que o maior problema na programao de horrios a difcil


generalizao, uma vez que cada instituio de ensino possui diferentes restries
pedaggicas, principalmente entre universidades. Na literatura, pode-se encontrar
inmeras variantes do problema, pois os conceitos pedaggicos se diferem entre as
instituies de ensino escola ou universidade e o tipos de requisitos tambm.
Sendo assim, Schaerf (1999) classifica o problema de programao dos horrios em
trs categorias.

A primeira corresponde ao problema de programao dos horrios em escolas


school time tabling problem ou seja, refere-se criao de horrios nas escolas de
ensino fundamental e mdio, nas quais as turmas apresentam um mesmo currculo
14

bsico comum, o qual determina a quantidade de disciplinas que cada srie ter, e
tambm a respectiva carga horria semanal. Basicamente, na instituio de ensino
desse grau, cada turma possui uma sala alocada, um aluno est inserido em uma
nica turma, um professor est associado a uma turma e uma disciplina, e por fim,
uma turma est associada a vrios professores. Dessa forma, o objetivo principal
garantir que em um intervalo de tempo, um professor esteja alocado em apenas uma
turma, que seja cumprida a carga horria semanal de todas as turmas e uma turma
possua aula somente com um nico professor em um intervalo de tempo.

A segunda categoria envolve o problema de programao dos horrios de cursos


course time tabling problem retratando a realidade das universidades, uma vez
que o aluno pode estar matriculado em algum curso, por exemplo, Sistemas de
Informao ou Licenciatura em Cincias Biolgicas; e esse possui grades de ofertas,
que compreende as disciplinas ofertadas para o respectivo curso no perodo
correspondente, como Programao I, Vetores e Geometria Analtica. Assim, o
aluno poder se matricular em ofertas do seu curso, como tambm de outros cursos,
considerando os critrios da universidade. Nesse caso, o objetivo principal
assegurar que no exista conflito de horrios entre as ofertas para os alunos, que
um professor no esteja alocado em um mesmo intervalo de tempo para mais de
uma oferta, que no exista duas ofertas alocadas em mesma sala de aula e tambm
que a sala de aula alocada seja compatvel com a quantidade de alunos.

Por fim, a terceira categoria corresponde ao problema de programao dos horrios


de exames examination time tabling problem no qual menciona a alocao dos
horrios de avaliaes das disciplinas em uma instituio de ensino. A proposta
desenvolver um horrio de avaliaes das disciplinas de tal forma que respeite um
limite mximo dirio, dentre outros critrios pedaggicos que vigora na instituio,
como por exemplo, evitar que existam avaliaes de disciplinas consideradas
complexas no mesmo dia ou em dias seguidos.

Santos e Souza (2007) destacam que a modelagem de um problema referente


programao dos horrios envolve diversas restries, que podem ser classificadas
em dois tipos: fortes ou fracas. Caso as restries fortes no sejam satisfeitas, essas
inviabilizam uma soluo. Por exemplo, duas disciplinas distintas esto alocadas
para uma mesma sala de aula no mesmo dia e horrio. Por outro lado, as restries
15

fracas no inviabilizam uma soluo, mas desejvel que sejam satisfeitas, ou seja,
um professor deseja que suas aulas sejam no perodo matutino, mas por motivos
maiores existe a possibilidade que algumas aulas sejam no vespertino ou noturno.

No Centro de Cincias Agrrias da Universidade Federal do Esprito Santo (CCA-


UFES) existe uma grande dificuldade para produzir quadros de horrios, devido
falta de um software capaz de gerar horrios automatizados respeitando os
requisitos da instituio, que em sua maioria so exclusivos, alm da baixa
quantidade de salas, dificultando o trabalho dos 17 coordenadores de cursos ao
confeccionar os horrios de forma manual.

Acredita-se que seja possvel produzir quadros de horrios para o CCA-UFES de


forma automatizada por meio de meta-heursticas, trazendo benefcios como a
reduo dos recursos humanos, reduo do tempo de planejamento e um melhor
quadro de horrios do que o elaborado de forma manual.

Mariano (2014) apresentou estudos que retratam a realidade do CCA-UFES, porm


considerando apenas um departamento do campus e, quanto s restries e sua
classificao, obteve os seguintes resultados:

Fortes:

1. Conflitos de professor: um professor no poder ministrar mais de uma


disciplina no mesmo dia e horrio;
2. Conflitos de turmas: uma turma no poder assistir a mais de uma aula no
mesmo dia e horrio;
3. Conflitos de salas: uma sala de aula no poder estar reservada para mais de
uma disciplina no mesmo dia e horrio;
4. Capacidade da sala: uma turma no poder ser alocada em uma sala cuja
capacidade seja inferior ao nmero de alunos da turma;
5. Tipo incompatvel de sala: as aulas no podero ser alocadas em uma
determinada sala que no compatvel ao tipo solicitado, por exemplo, aulas
que deveriam ser realizadas em laboratrios e foram alocadas em salas
normais;
16

6. Disciplinas especiais: disciplinas com 3 horas aulas semanais devero ser


alocadas em horrios pr-definidos (primeiro e ltimo horrios), permitindo
assim que outras disciplinas possam ser alocadas antes ou aps as mesmas;
7. Aulas fora do turno: uma aula no poder ser alocada fora do turno da oferta
(diurno ou noturno).

Fracas:

8. Intervalo de trabalho do professor: o intervalo entre o primeiro e o ltimo dia


em que um professor ministrar as aulas dever ser minimizado;
9. Janelas de horrio: intervalos na grade de horrios, entre duas aulas, devero
ser reduzidos;
10. Perodo preferencial: as disciplinas de uma turma devero ser agrupadas em
um nico turno. Por exemplo, agrupar os perodos mpares no turno da
manh e os perodos pares no turno da tarde. Assim, a quantidade de
disciplinas ofertadas fora do turno preferencial de cada turma dever ser
minimizada;
11. Aulas seguidas: aulas de uma mesma disciplina ministradas em horrios
sequenciais (ou no mesmo dia) devem ser evitadas;
12. Intervalo entre perodos: a ocorrncia de professores que ministram aula em
um dia noite e no dia seguinte pela manh dever ser minimizada;
13. Aulas seguidas de nvel difcil: aulas de complexidade difcil ministradas
em horrios sequenciais devem ser evitadas;
14. Aulas de nvel difcil no ltimo horrio: aulas de complexidade difcil
ministradas no ltimo horrio de cada dia devero ser evitadas.
15. Aulas de carga horria par: aulas com 2 ou 4 horas de carga horria no
devem ser alocadas no primeiro horrio do dia.

No sistema de ofertas do CCA-UFES, pode-se observar que as aulas com carga


horria equivalente 1 hora no devem ser alocadas no primeiro horrio do dia.
Assim, essa condio ser considerada junto restrio 15.

De acordo com os critrios apresentados, as restries numeradas de 1 a 7 so


consideradas fortes, e as numeradas de 8 a 15, fracas. A ocorrncia de conflito que
envolve algum dos tipos de restries fortes inviabiliza o resultado e, por outro lado,
17

conflitos que envolva alguma das restries fracas no inviabiliza o resultado, mas
devero ser minimizadas visando obter um resultado de melhor qualidade.

Vale ressaltar a restrio forte nmero 7, que compreende as disciplinas especiais,


pois os estudos podem analis-la como uma restrio fraca, visto que uma disciplina
com carga horria de 3 horas, em qualquer outro horrio no inviabiliza a soluo.
Entretanto, ao considerarmos tal restrio como fraca, no ser possvel inserir
outras disciplinas no mesmo dia e perodo. As Figuras 1 e 2 exemplificam o
problema pertinente alocao de duas disciplinas do Curso de Cincias Biolgicas:
Informtica com uma aula cuja carga horria compreende 3h, e Bioqumica com
carga horria de 2 horas por aula.

Horrio incio Segunda-feira Horrio incio Segunda-feira


7h - 7h Informtica
8h Informtica 8h Informtica
9h Informtica 9h Informtica
10h Informtica 10h Bioqumica
11h - 11h Bioqumica
Figura 1 - Primeiro Exemplo de alocao de Figura 2 - Segundo exemplo de alocao de
disciplinas. disciplinas.

Analisando a Figura 1, pode-se concluir que a disciplina especial de Informtica,


ofertada para alguns cursos como Cincias Biolgicas, foi alocada de 8h as 11h.
Todavia, esse curso apresenta diversas ofertas que possuem carga horria de 2h
cada e, desta forma, em uma segunda-feira, a turma que faz essa disciplina fica
impossibilitada de efetuar matrcula em outra, cujo horrio das aulas seja no perodo
matutino. Em contrapartida, na Figura 2, a disciplina especial foi alocada nos trs
primeiros horrios do dia, de 7h as 10h, permitindo que a turma se matricule na
disciplina de Bioqumica que ocorre de 10h as 12h. Assim, pode-se maximizar a
quantidade de disciplinas ofertadas para os cursos, evitando o maior nmero de
conflito de horrios e melhorando o nmero de salas limitado que o centro possui.

1.2. OBJETIVOS

1.2.1. Objetivo geral

O objetivo geral deste trabalho consiste na aplicao das meta-heursticas Simulated


Annealing (SA) e Clustering Search (CS) para resolver o Problema de Programao
de Horrios das Disciplinas em Universidades (PPHDU) encontrado no Centro de
18

Cincias Agrrias da Universidade Federal do Esprito Santo (CCA-UFES), visando


reduzir o tempo necessrio para a confeco e os recursos humanos necessrios.

1.2.2. Objetivos especficos

Visando atingir o objetivo principal, alguns objetivos especficos foram estabelecidos,


entre eles:

a) Coletar dados e informaes referentes programao de horrios do CCA-


UFES;

b) Desenvolver as adaptaes necessrias para modelagem do PPHDU e


aplicao da SA e CS;

c) Aplicar a SA e a CS a problemas tese para o PPHDU, com base nos dados


obtidos no CCA-UFES;

d) Avaliar o desempenho dos mtodos por meio de experimentos computacionais.

1.3. ESTRUTURA DO TRABALHO

O restante deste trabalho est organizado da seguinte forma. No Captulo 2, so


apresentadas outras abordagens encontradas na literatura para solucionar o
problema. O Captulo 3 apresenta a metodologia utilizada para o desenvolvimento
deste trabalho. Os resultados obtidos esto descritos no Captulo 4, e as concluses
so apresentadas no Captulo 5.
19

2. REVISO DA LITERATURA

Na literatura possvel encontrar diversos trabalhos relacionados ao Problema de


Programao de Horrios de Disciplinas em Universidades (PPHDU), com a
utilizao de diversos mtodos para solucionar o problema. A seguir, apresentada
uma breve reviso da literatura.

Csima e Gotlieb (1964) apresentaram uma soluo envolvendo matrizes booleanas,


tornando-se os precursores na soluo de Programao de Horrios Escolares
PHE.

A utilizao da Simulated Annealing, Busca Tabu, Algoritmos Genticos, Algoritmos


Memticos, Iterated Local Search (ILS), Variable Neighborhood Descent (VND),
Greedy Randomized Adaptive Search Procedure (GRASP) e a combinao de
diferentes mtodos foram propostas de soluo para o problema. Publicaes com
essas tcnicas podem ser encontradas em Abramson (1991), Colorni et al. (1998),
Preis (2007), Carvalho (2011), Barbosa e Souza (2011), Oliveira e Viana (2012) e
Fonseca e Santos (2013).

Abramson (1991) aponta como soluo do PHE a utilizao do Simulated Annealing


de forma paralela. Por sua vez Colorni et al. (1998) propuseram trs distintas
solues. Na primeira, empregam o Simulated Annealing, e na segunda os autores
aplicam a Busca Tabu. Por fim, na terceira soluo, exploram o uso do Algoritmo
Gentico com e sem busca local.

Preis (2007) utilizou algoritmos genticos para solucionar o problema. Em


contrapartida, Carvalho (2011) props a meta-heurstica hibrida ILS-VND. Barbosa e
Souza (2011) solucionaram o problema de programao de horrios em instituies
de ensino utilizando uma meta-heurstica hibrida GRASP-ILS. Para gerar a soluo
inicial, os autores adotaram o GRASP e o ILS com relaxamento visando refinar a
soluo obtida pelo GRASP.

Oliveira e Viana (2012) propuseram a utilizao da meta-heurstica hibrida GRASP-


VND, utilizando o VND como procedimento para gerar uma soluo inicial para o
GRASP. Fonseca e Santos (2013) solucionam o problema por meio da aplicao de
um algoritmo memtico.
20

Spindler (2010) adotou a meta-heurstica evolutiva Busca Dispersa combinada com


o mtodo reconexo por caminhos para solucionar o problema. Fonseca et. al.
(2011) criou uma soluo inicial reduzindo-a ao Problema da Satisfazibilidade
Proposital (SAT) e em seguida aplicou a Busca Tabu objetivando aprimorar a
soluo encontrada.

Mariano (2014) resolveu o PPHDU aplicando a meta-heurstica Adaptive Large


Neighborhood Search (ALNS) ao Departamento de Computao do CCA-UFES. O
autor obteve resultados melhores quando comparados com o quadro de horrios
elaborado de forma manual.

Na literatura, destaca-se a utilizao de diferentes meta-heursticas para solucionar


o PPHDU, como a SA, ALNS, busca tabu, algoritmos genticos, algoritmos
memticos, e a combinao de diferentes mtodos. Tal problema de difcil
comparao de resultados com os encontrados na literatura, pois cada instituio de
ensino possui um conjunto de restries especfico.

As bibliografias descritas acima representam apenas uma parte dos principais


trabalhos sobre o problema abordado, sendo que dentre esses, o trabalho
apresentado por Mariano (2014) foi utilizado como bibliografia base para esta
pesquisa.
21

3. METODOLOGIA

A metodologia deste trabalho est dividida em trs partes, sendo a primeira


referente modelagem do problema e representao de uma soluo. A segunda
parte retrata a coleta de dados e por fim a ltima parte destaca os mtodos
utilizados.

3.1. MODELAGEM DO PROBLEMA

Para que fosse possvel solucionar o PPHDU proposto neste trabalho, foi essencial
modelar o problema especificando as entidades a serem utilizadas. Alm disso, foi
necessrio definir a estrutura de dados que melhor representa cada entidade. Foram
identificadas, por meio do sistema da UFES, as seguintes entidades: professor,
disciplina, tipo de sala, sala, horrio, turma e oferta. Essa modelagem similar
proposta por Mariano (2014).

A Figura 3 apresenta a estrutura da entidade professor que composta por dois


atributos, um identificador nico (id) e o nome do professor.

id Nome do professor
0 Edmar Hell Kampke
1 Geraldo Regis Mauri
Figura 3 - Entidade Professor.

A entidade disciplina estruturada com quatro atributos: identificador nico (id),


cdigo da disciplina, nome da disciplina e nvel de dificuldade. O nvel de dificuldade
representado por um valor binrio, no caso 0 para representar uma disciplina de
nvel normal e 1 para nvel difcil. Foi necessria a criao do atributo para atender
a critrios pedaggicos, apresentados no Captulo 1. A Figura 4 demonstra a
estrutura da entidade.

Cdigo da Nvel de
id Nome da disciplina
disciplina Dificuldade
0 COM10131 Otimizao Linear 0
1 DBI10798 Educao Ambiental 0
2 DFN10585 Bioqumica II 0
Figura 4 - Entidade Disciplina.

A entidade tipo de sala foi definida com o intuito de identificar o tipo das salas de
aula (entidade sala). Nesse caso, a ideia definir se uma sala normal ou um
22

laboratrio especfico. Essa entidade engloba dois atributos: identificador nico (id),
e o tipo. possvel observar a entidade tipo de sala na Figura 5.

id Tipo de sala
0 Clnica escola nutrio
1 Laboratrio anatomia animal
2 Laboratrio de informtica
Figura 5 - Entidade Tipo de Sala.

Com a inteno de definir onde a disciplina ser ministrada, foi criada a entidade
sala, definida por cinco atributos: identificador nico (id), prdio, tipo, nmero da sala
e capacidade.

Pode-se constatar por meio da Figura 6 que existe uma ligao entre as entidades
sala e tipo de sala. A ligao ocorre por meio do atributo tipo da entidade sala, que
mantm o identificador nico da entidade tipo de sala.

Nmero
id Prdio Tipo Capacidade
da sala
0 Central 1 11 30
1 Alimentos 0 11 25
2 Novo 2 17 20
Figura 6 - Entidade Sala.

A Figura 7 representa a entidade horrio, que composta pelos horrios de aula do


CCA-UFES. Essa entidade possui um total de quatro atributos: identificador nico
(id), horrio de incio, horrio de trmino e tempo de aula.

Horrio de Horrio de Tempo de


id
incio trmino aula
0 07h00 08h00 60
1 08h00 09h00 60
2 09h00 10h00 60
Figura 7 - Entidade Horrio.

J a entidade turma (Figura 8), caracteriza-se por quatro atributos: identificador


nico (id), curso, perodo e turno, que representam um perodo de um determinado
curso, por exemplo, na Figura 8 temos a Turma 0, que representa o oitavo perodo
do curso de Geologia. O atributo turno limita-se a apenas trs valores, 0 para
matutino, 1 para vespertino e 2 para noturno.
23

id Curso Perodo Turno


0 Geologia 8 0
1 Biologia Licenciatura 1 2
2 Sistemas de Informao 5 2
Figura 8 - Entidade turma.

Por fim, a entidade oferta, detalhada na Figura 9, concebida por meio da


combinao de diversos elementos e com os identificadores nicos relacionando as
entidades descritas acima. Essa entidade engloba nove atributos: identificador nico
(id), disciplina, nmero de turmas, vetor de turmas, vagas, turno, professor, tipo de
sala e carga horria.

Os atributos contidos em disciplina, vetor de turmas, professor e tipo de sala so


respectivamente os identificadores nicos das entidades disciplina, turma, professor
e tipo de sala.

Em contrapartida, o atributo nmero de turmas representa a quantidade de turmas


contidas no vetor de turmas. O atributo vagas representa a quantidade mxima de
alunos para um determinada oferta, e o atributo turno que corresponde ao turno
preferencial para a oferta (0 para matutino, 1 para vespertino e 2 para noturno).
Por fim, o atributo carga horria representa a durao da aula da oferta.

Deve-se ressaltar que, caso ocorra duas ou mais aulas de uma disciplina durante a
semana com uma carga horria qualquer, haver duas ou mais ofertas na entidade
oferta, cada uma representando uma aula da semana.

N de Turmas Tipo Carga


id Disciplina Vagas Turno Professor
turmas [] de sala Horria
0 0 1 2 25 2 1 2 2
Figura 9 - Entidade oferta.

3.2. REPRESENTAO DE UMA SOLUO

Uma soluo representada por trs matrizes tridimensionais, que representam trs
recursos distintos, salas de aula, turmas e professores. A primeira matriz possui
dimenses S (salas de aula), H (horrios disponveis) e D (dias letivos). Nas clulas
dessa matriz, so inseridos os cdigos das ofertas que variam de 0 a n, sendo que n
o maior identificador nico da entidade oferta. Caso um horrio no esteja
disponvel para alocao de ofertas, este ser representado pelo valor (-2), e por (-1)
24

se o horrio estiver disponvel, como pode ser observado nas Figuras 10 e 11. Neste
trabalho todos os horrios so considerados disponveis exceto os de intervalo de
almoo (12h s 13h e 30min). As cores azul, vermelho e cinza nas figuras
representam respectivamente os turnos matutino, vespertino e noturno.

Sala 0
S T Q Q S
07h00 08h00 0 -1 -1 -1 -1
08h00 09h00 0 -1 -1 2 -1
09h00 10h00 0 -1 -1 2 -1
10h00 11h00 -1 1 -1 -1 -1
11h00 12h00 -1 1 -1 -1 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 -1 3 -1 -1
14h30 15h30 -1 -1 3 -1 -1
15h30 16h30 -1 -1 -1 4 -1
16h30 17h30 -1 -1 -1 4 -1
17h30 18h20 -1 -1 -1 -1 -1
18h20 19h10 -1 -1 6 -1 -1
19h10 20h00 -1 -1 6 -1 -1
20h00 20h50 5 -1 -1 -1 7
21h00 21h50 5 -1 -1 -1 -1
21h50 22h40 5 -1 -1 -1 -1
Figura 10 Exemplo de matriz para a sala 0.

Sala 1
S T Q Q S
07h00 08h00 -1 -1 -1 -1 -1
08h00 09h00 -1 -1 -1 -1 -1
09h00 10h00 -1 -1 -1 -1 -1
10h00 11h00 19 -1 -1 18 -1
11h00 12h00 19 -1 -1 18 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 14 -1 17 20
14h30 15h30 -1 14 -1 17 20
15h30 16h30 -1 15 16 -1 -1
16h30 17h30 -1 15 16 -1 -1
17h30 18h20 -1 15 -1 -1 -1
18h20 19h10 9 10 -1 13 12
19h10 20h00 9 10 -1 13 12
20h00 20h50 -1 8 11 13 -1
21h00 21h50 -1 8 11 13 -1
21h50 22h40 -1 -1 -1 -1 -1
Figura 11 Exemplo de matriz para a sala 1.
25

A segunda matriz possui dimenses T (turma), H (horrios disponveis) e D (dias


letivos). J a terceira matriz possui dimenses P (professor), H (horrios disponveis)
e D (dias letivos). Nas clulas dessas duas matrizes so inseridos os identificadores
nicos das salas na mesma posio (dia e horrio) que a oferta (na primeira matriz),
o valor (-1) representa um horrio disponvel.

As Figuras 12 e 13 representam os horrios das turmas e as Figuras 14 e 15


representam os horrios dos professores, criados a partir da matriz de salas de aula
(Figuras 10 e 11). Cada cor representa uma sala para o exemplo.

Turma 0
S T Q Q S
07h00 08h00 0 -1 -1 -1 -1
08h00 09h00 0 -1 -1 0 -1
09h00 10h00 0 -1 -1 0 -1
10h00 11h00 1 0 -1 1 -1
11h00 12h00 1 0 -1 1 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 1 0 1 1
14h30 15h30 -1 1 0 1 1
15h30 16h30 -1 1 1 0 -1
16h30 17h30 -1 1 1 0 -1
17h30 18h20 -1 1 -1 -1 -1
18h20 19h10 -1 -1 -1 -1 -1
19h10 20h00 -1 -1 -1 -1 -1
20h00 20h50 -1 -1 -1 -1 -1
21h00 21h50 -1 -1 -1 -1 -1
21h50 22h40 -1 -1 -1 -1 -1
Figura 12 - Exemplo de matriz para a turma 0.
Turma 1
S T Q Q S
07h00 08h00 -1 -1 -1 -1 -1
08h00 09h00 -1 -1 -1 -1 -1
09h00 10h00 -1 -1 -1 -1 -1
10h00 11h00 -1 -1 -1 -1 -1
11h00 12h00 -1 -1 -1 -1 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 -1 -1 -1 -1
14h30 15h30 -1 -1 -1 -1 -1
15h30 16h30 -1 -1 -1 -1 -1
16h30 17h30 -1 -1 -1 -1 -1
17h30 18h20 -1 -1 -1 -1 -1
18h20 19h10 1 1 0 1 1
19h10 20h00 1 1 0 1 1
20h00 20h50 0 1 1 1 0
21h00 21h50 0 1 1 1 -1
21h50 22h40 0 -1 -1 -1 -1
Figura 13 - Exemplo de matriz para a turma 1.
26

Professor 0
S T Q Q S
07h00 08h00 0 -1 -1 -1 -1
08h00 09h00 0 -1 -1 -1 -1
09h00 10h00 0 -1 -1 -1 -1
10h00 11h00 1 0 -1 -1 -1
11h00 12h00 1 0 -1 -1 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 1 0 -1 -1
14h30 15h30 -1 1 0 -1 -1
15h30 16h30 -1 1 1 -1 -1
16h30 17h30 -1 1 1 -1 -1
17h30 18h20 -1 1 -1 -1 -1
18h20 19h10 1 1 -1 -1 -1
19h10 20h00 1 1 -1 -1 -1
20h00 20h50 0 1 -1 -1 -1
21h00 21h50 0 1 -1 -1 -1
21h50 22h40 0 -1 -1 -1 -1
Figura 14 - Exemplo de matriz para o professor 0.

Professor 1
S T Q Q S
07h00 08h00 -1 -1 -1 -1 -1
08h00 09h00 -1 -1 -1 0 -1
09h00 10h00 -1 -1 -1 0 -1
10h00 11h00 -1 -1 -1 1 -1
11h00 12h00 -1 -1 -1 1 -1
12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 -1 -1 1 1
14h30 15h30 -1 -1 -1 1 1
15h30 16h30 -1 -1 -1 0 -1
16h30 17h30 -1 -1 -1 0 -1
17h30 18h20 -1 -1 -1 -1 -1
18h20 19h10 -1 -1 0 1 1
19h10 20h00 -1 -1 0 1 1
20h00 20h50 -1 -1 1 1 0
21h00 21h50 -1 -1 1 1 -1
21h50 22h40 -1 -1 -1 -1 -1
Figura 15 - Exemplo de matriz para o professor 1.

3.3. COLETA DE DADOS

Os dados coletados para este trabalho foram obtidos por meio de diversos setores
do CCA-UFES, sendo referentes ao perodo letivo 2014/2. A seguir, so
apresentadas as principais fontes de informaes:
27

Secretaria Acadmica do CCA-UFES grades de horrios das salas de


aulas e relatrios de todos os departamentos do CCA, contendo todas as
ofertas do semestre.
Coordenadores dos cursos grades de horrios, relatrio de oferta de
disciplinas para o curso e fluxogramas.
Sistema online (portal do aluno da UFES) currculo dos cursos.

Aps a etapa de coleta de dados, realizou-se a normalizao dos dados obtidos a


fim de padronizar e inserir as informaes nas entidades (descritas na Seo 3.1).
Algumas disciplinas no foram inseridas na entidade oferta e, os motivos para tal
so apresentados a seguir, categorizados por curso.

3.3.1 Agronomia

Existem duas ofertas da disciplina optativa Anlise de Sementes no sistema, sendo


uma sem horrio alocado. Portanto, a oferta sem horrio definido foi desconsiderada
para este trabalho.

A disciplina Tcnica de alimentos possui horrio marcado em dois laboratrios


(qumica dos alimentos e TPA) em um mesmo dia e horrio. Nesse caso, foi
considerado o laboratrio de qumica dos alimentos para alocao dessa disciplina.

3.3.2 Biologia Bacharelado

Por meio das grades de horrios das salas de aula, observou-se que a disciplina
Paleobiologia, ofertada para o 6 perodo do curso, possui aulas alocadas em dois
laboratrios, sedimentologia e zoologia. Nesse caso, foi considerado que a mesma
deveria ser ofertada no laboratrio de zoologia.

A disciplina Imunologia foi desconsiderada para esse trabalho, pois no segundo


semestre de cada ano, os perodos correntes so pares (2, 4, 6 e 8), e no portal
do aluno possvel observar que a disciplina ofertada para o 7 perodo do curso.
28

3.3.3 Biologia Licenciatura

No sistema de ofertas do CCA-UFES, existem 3 turmas para a disciplina Biologia


Celular, sendo que para a ltima turma no existem alunos matriculados. Portanto,
essa turma foi desconsiderada neste trabalho.

A oferta da disciplina Base Terico-prticas de Paleontologia e Evoluo ocorre


duas vezes em um mesmo horrio, dia e com o mesmo professor, sendo sua nica
diferena o cdigo da disciplina (DBI11452 e DBI11327). Nesse caso, decidiu-se que
seria inserida apenas uma nica oferta utilizando o cdigo DBI11327.

Tambm foi possvel observar nos relatrios que a oferta da disciplina Preparao e
Anlises de Material Histolgico no apresenta horrios definidos, para isso foi
definido que seriam duas ofertas com carga horria de 2 horas cada. Tambm no
havia horrio marcado para a disciplina nas grades de horrios das salas. Porm,
aps conversas com alunos do curso, obteve-se a informao de que as aulas
ocorriam no laboratrio de anatomia humana, e assim foi considerado neste
trabalho.

3.3.4 Cincia da Computao

Por meio dos relatrios, foram identificadas duas turmas da disciplina de


Programao I. Porm, as duas turmas possuem o mesmo professor, mesmo dia e
horrio de aula. Ento, foi considerada apenas uma turma.

Foi possvel constatar que a disciplina Processamento Digital de Imagens no foi


ofertada no perodo, pois nenhuma vaga para matrcula de alunos foi disponibilizada.

3.3.5 Engenharia de Alimentos

Nos relatrios foram detectadas as disciplinas Lgica e tcnica de Programao e


Projetos Agroindustriais II, ofertadas fora dos perodos corretos. Logo, as mesmas
no foram consideradas.

As aulas da disciplina Desenvolvimento de Novos Produtos esto alocadas para


dois laboratrios (sensorial e TPA) no mesmo dia e horrio. Ento, neste trabalho,
foi considerado que as aulas ocorrem no laboratrio TPA. O mesmo problema ocorre
com as aulas de Tecnologia da Industrializao do Caf (laboratrio TPA e de
29

operaes unitrias). Da mesma forma, foi escolhido o laboratrio TPA para este
trabalho.

3.3.6 Engenharia Florestal

A entrada de novos alunos ocorre sempre no primeiro semestre (perodos mpares)


de cada ano. Assim, como os dados utilizados neste trabalho so referentes ao
segundo semestre do ano de 2014, ou seja, quando ocorrem aulas apenas dos
perodos pares, as disciplinas ofertadas em perodos mpares foram
desconsideradas neste trabalho.

As aulas do curso ocorrem no campus principal do CCA (Alegre ES) e em sua


extenso na cidade de Jernimo Monteiro ES. Logo, como foram consideradas
neste trabalho apenas as disciplinas ofertadas no campus principal do CCA,
diversas disciplinas foram desconsideradas. A Tabela 1 apresenta as disciplinas
desconsideradas e o respectivo perodo e motivo.

Tabela 1 - Disciplinas desconsideradas para o curso de Engenharia Florestal.


Disciplina Perodo Motivo
Ecologia Bsica 1
Bioqumica
Fsica do Solo
Fsica Bsica 3
Geomtica II
Fora do perodo
Estatstica Bsica
correto.
Anatomia da Madeira
Meteorologia Florestal 5
Manejo e Conservao do Solo
Administrao de Empreendimento
9
Florestal
Dendrometria
Nutrio Florestal
Sementes Florestais 6
Tecnologia da Madeira
Colheita, Transporte e Logstica Florestal
Arborizao e Paisagismo Aulas na cidade
Avaliao de Impactos Ambientais e de Jernimo
Percia Ambiental Monteiro.
Construes de Madeira 8
Manejo Florestal
Prticas Silviculturais
Hidrulica e Irrigao Aplicada
Meio Ambiente e Desenvolvimento Optativa
30

Sustentvel
Produtos Florestais e no Madeireiros
Tecnologia da Produo de Celulose e
Papel
Aproveitamento de Resduos de Madeira
Transportes e Estradas Florestais
Economia Ambiental No possui
alunos
Deteriorao e Proteo de Madeira
matriculados.

3.3.7 Engenharia Industrial Madeireira

A entrada de novos alunos ocorre sempre no segundo semestre de cada ano. Logo,
as disciplinas dos perodos pares foram desconsideradas. Algumas disciplinas so
ofertadas na cidade de Jernimo Monteiro ES, e ento as mesmas tambm foram
desconsideradas. A Tabela 2 destaca as disciplinas desconsideradas e os
respectivos motivos e perodo.

Tabela 2 - Disciplinas desconsideradas para o curso de Engenharia Industrial Madeireira.


Disciplina Perodo Motivo
Introduo Engenharia Industrial
Madeireira 1
Recursos Madeireiros
Anatomia da Madeira
Qumica da Madeira
Tecnologia da Madeira
5
Sistemas de Produo
Teoria das Organizaes
Estruturas de Madeira
Fundamentos da Indstria Moveleira
Tecnologia da Produo de Celulose e Papel Aulas na cidade de
Projeto e Experimentao em Estruturas de Jernimo
Madeira 7 Monteiro.
Secagem da Madeira
Planejamento e Controle de Produo
Serraria e Beneficiamento da Madeira
Projeto de Mveis
Aproveitamento de Resduos de Madeira
Controle de Poluio na Indstria Madeireira 9
Segurana do Trabalho na Indstria
Madeireira
Tpicos Especiais em Engenharia Industrial
Optativa
Madeireira II
Estatstica Bsica 2
Fora do perodo
Clculo Numrico
4 correto.
Mquinas Trmicas
31

Resistncias dos Materiais


Transferncia de Calor e Massa
No possui alunos
Lngua Brasileira de Sinais - LIBRAS Optativa do curso
matriculados.

3.3.8 Engenharia Qumica

As disciplinas Cintica e Clculo de Reatores I e Mtodos Instrumentais de


Anlise possuem duas ou mais turmas, sendo uma com horrio alocado para os
dias de sbado, e com apenas um nico aluno. Nesses casos, as turmas com aulas
aos sbados foram desconsideradas.

3.3.9 Farmcia

A disciplina Farmacobotnica ofertada durante os turnos noturno e diurno. Assim,


em virtude do curso de Farmcia ser especificamente noturno, a disciplina do turno
diurno foi desconsiderada. Na grade de horrios obtidos por meio dos diversos
setores da UFES, constam aulas alocadas em duas salas distintas no mesmo dia e
horrio (laboratrio de microscopia e laboratrio de anlises clnicas, por exemplo).
Logo, como neste trabalho considera-se apenas um tipo de sala por oferta, definiu-
se, aleatoriamente, apenas uma sala para esses casos.

As disciplinas Bromatologia e Composio de Alimentos, Tecnologia dos


Cosmticos, Biologia Clnica e Controle de Qualidade Microbiolgico de Produtos
Farmacuticos possuem duas turmas cada, sendo sempre uma no turno diurno e
outra no turno noturno. Em razo do curso ser noturno, a turma em que as aulas
ocorriam no perodo diurno foram desconsideradas.

A disciplina optativa Tpicos Avanados em Qumica Orgnica ofertada para o 7


perodo do curso de Farmcia no turno diurno. Mais uma vez, em virtude do curso
ser noturno, foi realizada uma alterao na entrada de dados, alterando o turno na
entidade oferta para noturno. Com essa troca, a quantidade de aulas por semana
superou o limite mximo de 25horas/aula, no permitindo assim a obteno de um
horrio vivel para o curso. Ento, a oferta dessa disciplina foi alterada para o 9
perodo.
32

3.3.10 Fsica Licenciatura

Por meio de anlises das ofertas referentes ao curso de Fsica, observa-se que a
disciplina de Clculo C aparece na grade no turno vespertino. Porm, em virtude
do curso de Fsica ser noturno, a oferta foi desconsiderada.

A disciplina optativa Fsica Conceitual I, no semestre considerado, ocorre aos


sbados. Assim, como neste trabalho so consideradas apenas as aulas de
segunda a sexta-feira, essa disciplina constar na entidade de oferta, mas sendo
sempre alocada durante a semana.

3.3.11 Geologia

Diversas disciplinas do curso de Geologia possuem aulas prticas em dias de


sbado. Assim, para as disciplinas destacadas na Tabela 3, foram consideradas
apenas as aulas em sala de aula.

Tabela 3 - Disciplinas Geologia com aula de campo aos sbados.


C.H. C.H. em C.H. em
Disciplina Perodo
Semanal salas campo
Geologia Geral 2 5h 4h 1h
Sedimentologia 5h 4h 1h
Geomorfologia 5h 4h 1h
4
Desenho Tcnico Geolgico 6h 4h 2h
Estratigrafia 7h 4h 3h
Pedologia para Geologia 4h 3h 1h
Mapeamento Geolgico II 6h 3h 3h
6
Geologia Estrutural 8h 4h 4h
Petrologia Magmtica 6h 4h 2h
Hidrogeologia 4h 3h 1h
Geologia do Brasil 7h 4h 3h
8
Gnese de Jazidas 6h 3h 3h
Geotecnia 4h 3h 1h

No currculo do curso de Geologia, consta na grade que a disciplina Estratigrafia


ofertada no 5 perodo. Porm, por meio dos relatrios obtidos junto coordenadora
do curso na poca, foi detectado que a disciplina foi ofertada no 4 perodo. Ento, a
mesma foi considerada neste trabalho.

As aulas prticas das disciplinas Mapeamento Geolgico II, Petrologia Magmtica


e Gnese de Jazidas esto alocadas em dois laboratrios (microscopia e
33

macroscopia) no mesmo instante de tempo. Logo, foi considerado que todas as


aulas prticas dessas disciplinas devem ocorrer no laboratrio de macroscopia.

3.3.12 Matemtica Licenciatura

Nos relatrios do sistema de ofertas da UFES, existem duas turmas para a disciplina
de Introduo Informtica para o curso. Nesse caso, foi identificado que as aulas
ocorrem em conjunto com a turma de Sistemas de Informao, que possui uma
nica professora e ofertada em um mesmo dia e horrio. Portanto, considerou-se
apenas uma nica turma.

Foram identificadas duas turmas para a disciplina Didtica Matemtica, sendo uma
turma com horrio de incio s 17h e 30min. Assim, como o curso de Matemtica
noturno, a turma com horrio de incio no perodo da tarde no foi inserida na
entidade oferta.

3.3.13 Medicina Veterinria

As aulas do curso de Medicina Veterinria ocorrem em geral em dois locais, sendo


as aulas tericas no CCA-UFES ou no Hospital Veterinrio (HOVET), e as aulas
prticas sempre no HOVET. Neste trabalho, foi considerado apenas o campus
principal do CCA e, ento, as aulas ofertadas no HOVET (descritas na Tabela 4)
foram desconsideradas.

Tabela 4 - Disciplinas desconsideradas por ocorrerem no HOVET.


Aulas
Disciplina Perodo
desconsideradas
Farmacologia Veterinria Prtica 4
Patologia Geral Prtica 4
Microbiologia Veterinria Prtica 4
Diagnstico por Imagem I Terica e prtica 6
Laboratrio Clnico Veterinrio Terica e prtica 6
Anestesiologia Veterinria Prtica 6
Doenas Parasitrias Prtica 6
Inspeo de Produtos de Origem Animal I Terica e prtica 8
Clnica Mdica de Animais de Companhia II Terica e prtica 8
Obstetrcia Veterinria Terica e prtica 8
Clnica Cirrgica de Animais de Companhia Terica e prtica 8
Clnica Mdica de Animais de Produo II Terica e prtica 8
Fisiopatologia e Biotecnologia da
Terica e prtica 8
Reproduo em Animais de Companhia
34

Oftalmologia Veterinria Terica e prtica Optativa


Anatomia por Imagem Terica e prtica Optativa
Prticas em Programas Educacionais de
Terica e prtica Optativa
Controle Populacional de Carnvoros

As disciplinas apresentadas na Tabela 5 foram desconsideradas devido entrada de


novos alunos sempre no primeiro semestre de cada ano. Por isso, no segundo
semestre, existem apenas disciplinas para os perodos pares. Alm disso,
disciplinas sem alunos matriculados e/ou professores vinculados tambm foram
desconsideradas.

Tabela 5 - Disciplinas desconsideradas fora do perodo correto


Disciplina Motivo
Imunologia Veterinria
Bovinocultura de Corte e de Leite
Fora do perodo
Melhoramento Animal Bsico
correto.
Inspeo de Produtos de Origem Animal II
Clnica Cirrgica de Animais de Produo
Tcnicas Histolgicas No possui
alunos
Estatstica Experimental
matriculados.
Melhoramento Animal Aplicado
Gesto de Empresas no Agronegcio
No possui
Criao e Preservao de Animais Silvestres
alunos
Apicultura
matriculados
Mtodo PBL Aplicado a Medicina Veterinria de
e/ou no possui
Ruminantes
professor
Fisiopatologia aplicada a animais de companhia
vinculado.
Vigilncia Sanitria de Alimentos
Animais de laboratrio

A disciplina Anatomia Veterinria II possui trs turmas, sendo que as aulas tericas
ocorrem para as trs em uma nica sala e em um mesmo horrio. Porm, no
sistema as aulas esto cadastradas com professores diferentes. Logo, foi
considerado apenas um professor. O mesmo problema ocorre com a disciplina
Patologia Geral.

A disciplina Tecnologia de Produtos de Origem Animal I ocorre no mesmo horrio e


dia em dois laboratrios distintos (qumica dos alimentos e TPA). Logo, foi
considerado, nesse caso, o laboratrio de qumica dos alimentos.
35

3.3.14 Nutrio

O curso de Nutrio possui entrada de alunos apenas no primeiro semestre de cada


ano letivo. Portanto, no segundo semestre devem ocorrer aulas apenas das
disciplinas para os perodos pares. Assim, as disciplinas Imunologia e
Microbiologia, ofertadas no 3 perodo do curso, foram desconsideradas.

Nos relatrios do sistema da UFES possvel observar que a disciplina


Metodologia Cientfica ofertada no 3 perodo. Porm, por meio de informaes
obtidas junto coordenadora do curso no ano de 2014, no houve turmas para a
disciplina no perodo correto (3 perodo) e, por isso, a mesma foi oferecida para que
os alunos 4 perodo (antigo 3) pudessem realiz-la no segundo semestre. Ento,
assim foi considerado neste trabalho.

A disciplina Tpicos Especiais em Alimentos e Nutrio no possua alunos


matriculados e, portando, no foi considerada neste trabalho.

3.3.15 Qumica Licenciatura

No relatrio obtido, a disciplina optativa Tpicos Especiais em Qumica Orgnica


ocorre aos sbados. Assim, como neste trabalho so consideradas apenas as aulas
de segunda a sexta-feira, essa disciplina constar na entidade de oferta, mas sendo
sempre alocada durante a semana.

3.3.16 Sistemas de Informao

Nos relatrios obtidos, existem duas turmas para as disciplinas Programao I e


Introduo Informtica. Essas turmas foram criadas devido quantidade de
alunos que entram no curso anualmente (70 alunos) e capacidade dos laboratrios
de informtica (40 alunos). Entretanto, observou-se que as duas turmas possuem o
mesmo horrio de aula e a mesma professora, o que indica que foi aberta apenas
uma nica turma para cada uma das disciplinas.

Apesar de constar nos relatrios a disciplina optativa Computao Mvel,


observou-se que no haviam alunos matriculados e, portanto, concluiu-se que a
mesma no foi ofertada.
36

3.3.17 Zootecnia

Por meio de informaes obtidas na UFES, observa-se que o perodo de entrada de


novos alunos ocorre uma nica vez ao ano, no primeiro semestre. Assim, apenas
turmas de perodos pares so ofertadas no segundo semestre. Portanto, as
disciplinas pertencentes a perodos mpares (descritas na Tabela 6) foram
desconsideradas para a realizao deste trabalho.

Tabela 6 - Disciplinas desconsideradas - Zootecnia.


Disciplina Perodo Disciplina Perodo
Estatstica Bsica 3 Sociologia Rural 5
Fsica Bsica 3 Forragicultura Bsica 5
Microbiologia 3 Nutrio de Ruminantes 5
Bromotologia Animal 3 Construes Rurais 7
Bioclimatologia Animal 3 Melhoramento Animal Aplicado 7
Fertilidade do Solo 5 Tecnologia de Alimentos 9

No sistema de ofertas existem duas turmas da disciplina Bovino Cultura, sendo que
uma turma no possui alunos matriculados. Assim, foi considerada apenas a turma
com alunos matriculados.

A disciplina Economia e Administrao Agroindustrial ofertada em mesmo horrio


e em uma nica turma, para os cursos de Agronomia e Zootecnia. Porm, no
sistema de ofertas da UFES, para cada turma representada a disciplina com um
professor distinto. Logo, como neste trabalho considerado apenas um professor
por oferta, um dos professores foi desconsiderado.

3.3.18 Outras informaes

Algumas turmas dos cursos foram duplicadas ou triplicadas devido a aulas em


laboratrios que possuem duas ou mais turmas para o mesmo perodo e curso.

Em todos os cursos existem ofertas referente s disciplinas Trabalho de Concluso


de Curso e Estgios e, em geral, as aulas referentes a essas disciplinas no
ocorrem semanalmente. Por isso, nenhuma dessas disciplinas foi considerada neste
trabalho.

Os laboratrios de macroscopia, simulaes, anatomia animal, qumica e fsica


tiverem sua capacidade aumentada em relao ao que foi obtido nos relatrios da
37

UFES, pois algumas aulas que ocorriam nesses laboratrios possuam uma
quantidade de alunos superior a capacidade declarada. A capacidade dos
laboratrios de macroscopia e simulaes foram ampliadas para 35 alunos, e os
demais para 30 alunos.

No caso da restrio das ofertas fora do perodo preferencial (restrio 10 - Captulo


1), foi considerado na entidade oferta como perodo preferencial aquele no qual a
disciplina foi ofertada no segundo semestre do ano de 2014. Porm, com essa
condio, podem existir conflitos entre o perodo preferencial para a turma e o
perodo preferencial para a oferta. Por exemplo, para os cursos de Engenharia
Florestal, Engenharia Industrial Madeireira e Medicina Veterinria, o horrio
preferencial para o curso o turno matutino, devido s aulas que ocorrem em
prdios localizados fora do CCA-UFES, como na cidade de Jernimo Monteiro para
os dois primeiros cursos e no Hospital Veterinrio localizado na ES-482 entre Alegre
e Jernimo Monteiro, para o ltimo curso. Mas, no relatrio de ofertas atual, algumas
aulas ocorrem no turno vespertino para esses cursos, gerando dessa forma um
conflito da restrio fora do perodo preferencial.

Na condio da restrio do professor que trabalha no turno noturno e no dia


seguinte pelo turno matutino (restrio 12 - Captulo 1), foi considerado o professor
que leciona a partir das 20h no dia anterior e a antes das 9h do dia seguinte.

Com relao ao intervalo de trabalho do professor (restrio 8 Captulo 1), foi


definido um intervalo de 3 dias.

3.4. FUNO OBJETIVO

A funo objetivo visa minimizar a ocorrncia das restries descritas no Captulo 1.


A estratgia adotada por Mariano (2014), e que foi seguida neste trabalho, prope
penalizar a ocorrncia de restries, tendo por objetivo evitar que sejam
consideradas solues inviveis, ou seja, a ocorrncia de restries do tipo forte.
Sendo assim, foi utilizada a funo objetivo proposta por Mariano (2014),
apresentada a seguir.
38

Minimizar 1 2 3 4 5
1 1 1 1

Os pesos das restries foram estabelecidos durante a implementao, e


compreendem o conjunto = [1,2,3,...,14]. Todas as restries apresentadas no
Captulo 1 so consideradas na Funo Objetivo (FO).

1. = nmero de conflitos do professor p, ou seja, o nmero de vezes que

o professor p ministra aula no mesmo dia e horrio;


2. = nmero de conflitos da turma t, ou seja, o nmero de vezes que os
alunos da turma t assistem mais de uma aula no mesmo dia e mesmo
horrio;
3. = nmero de conflitos da sala s, ou seja, o nmero de vezes que a
sala s est atribuda a mais de uma turma no mesmo dia e mesmo
horrio;
4. = nmero de violaes na capacidade da sala s, ou seja, o nmero
de turmas alocadas na sala s cujo nmero de alunos maior que a
capacidade da sala;
5. = nmero de aulas alocadas em salas de tipo incompatvel, ou
seja, se 10 aulas devem ser em laboratrio e foram alocadas em salas
normais, TSI = 10;
6. 3 = nmero de disciplinas de 3 horas aulas semanais alocadas fora
dos horrios padro (primeiro e ltimo horrio, tanto do dia quanto da
noite);
7. = nmero de aulas alocadas fora do turno especificado na oferta.
8. = diferena entre o primeiro e ltimo dia em que o professor p
ministra aulas em relao a um intervalo padro.
39

9. = nmero de janelas de horrio da turma t, ou seja, o nmero de


horrios vagos entre aulas ao longo da semana para a turma t;
10. = nmero aulas da turma t fora do seu perodo preferencial (M,T,N),
que dever ser mais um parmetro de entrada. Ex: o perodo
preferencial para a turma 1 a tarde (T), logo, PP1 = ao nmero de aulas
para essa turma alocadas no perodo da manh;
11. = nmero de aulas seguidas da disciplina d, ou seja, o nmero de
vezes que a disciplina d repetida num mesmo dia;
12. = nmero de vezes que o professor p ministra aula noite em um
dia e pela manh no dia seguinte;
13. = nmero de aulas seguidas de disciplinas de nvel difcil, ou seja, o
nmero de vezes ao longo da semana em que duas disciplinas difceis
so consecutivas;
14. = nmero de aulas de disciplinas de nvel difcil ministradas no
ltimo horrio, ou seja, o nmero de vezes ao longo da semana em que
disciplinas difceis so ministradas no ltimo horrio da tarde e da
noite.
15. = numero de aulas de disciplinas, do turno matutino, com carga
horria par, ou com 1 hora aula, alocadas no primeiro horrio do dia.

3.5. SIMULATED ANNEALING

A Simulated Annealing (SA), proposta inicialmente por Kirkpatrick et. al. (1983),
consiste em um mtodo de busca local que permite movimentos que gerem uma
soluo com resultado pior que o atual como forma de escapar de timos locais.

A partir de uma soluo inicial qualquer s, o algoritmo iniciado, selecionando


aleatoriamente uma soluo s vizinha de s. Neste trabalho, foram utilizados dois
movimentos (N(s)) para gerar uma soluo s. Esses movimentos so descritos nas
Sees 3.4.2 e 3.4.3. A variao do valor da funo objetivo , isto , = f(s) f(s),
verificada a cada gerao de s. Caso < 0, a soluo s possui melhor valor em
relao soluo s (para problemas de minimizao) e, portanto, o mtodo aceita a
soluo s, que por sua vez passa a ser a nova soluo s. Por outro lado, se 0,
calcula-se a possibilidade de aceitao e(-T), em que T representa um parmetro
do mtodo denominado temperatura, cuja funo consiste em regular a viabilidade
40

de aceitao de solues com valor da funo objetivo pior. A execuo da SA


encerrada quando a temperatura atinge um valor prximo zero, ou seja, quando
nenhuma soluo que piore o valor da soluo aceita. A Figura 16 apresenta o
pseudocdigo da SA.

1. Dado (, SAmax, T0, Tc e s)


2. s* s iter 0 T T0
3. ENQUANTO T > TC FAA
4. ENQUANTO iter < SAmax FAA
5. iter iter + 1 s N(s) f(s) f(s)
6. SE < 0 ENTO
7. s s
8. SE (f(s) < f(s*)) ENTO s* s FIM-SE;
9. SENO
10. Com probabilidade e-/T s s
11. FIM-SE
12. FIM-ENQUANTO
13. T T iter 0
14. FIM-ENQUANTO
15. Retornar s*
Figura 16 - Algoritmo SA.
Fonte: Adaptado de Mauri (2005).

3.5.1. Soluo inicial

Neste trabalho, a soluo inicial necessria para o algoritmo SA construda por


meio de uma heurstica gulosa, que consiste na ordenao das ofertas
decrescentemente pelo nmero de vagas. A partir dessa ordenao, cada oferta
inserida na soluo inicial respeitando trs critrios:

Ser alocada somente em salas do mesmo tipo que o especificado para a


oferta.

Ser inserida apenas se a capacidade da sala for maior ou igual ao nmero


de vagas da oferta.

Ser alocada respeitando o turno especificado para a oferta.

3.5.2. Movimento 1

Esse movimento representa a troca de uma oferta para um novo horrio e dia em
qualquer uma das salas, desde que a nova sala tenha horrio disponvel para a
alocao da oferta.
41

3.5.3. Movimento 2

Nesse movimento, ocorre a troca entre duas ofertas, ou seja: a oferta 1 passa para o
dia, horrio e sala da oferta 2 e, em contrapartida, a oferta 2 passa para o dia,
horrio e sala em que ocorre a oferta 1, com a condio de as duas ofertas devem
possuir a mesma carga horria.

3.6. CLUSTERING SEARCH

A Clustering Search CS (OLIVEIRA; LORENA, 2007) uma meta-heurstica


hbrida derivada do algoritmo Evolutionary Clustering Search (ECS), proposto por
Oliveira e Lorena (2004), com o intuito de generalizar o algoritmo.

Chaves e Lorena (2010) descrevem a CS como um mtodo iterativo no qual realiza


o agrupamento de novas solues em clusters para localizao de regies
hipoteticamente promissoras. Um cluster i definido por um conjunto de trs
propriedades C = {c, v, r}, sendo seu centro representado por ci. A quantidade de
solues agrupadas ao cluster i representada pelo volume vi e, quando esse atinge
um valor mximo , a regio considerada promissora e, portanto, deve-se verificar
o seu ndice de ineficcia, definido como ri. O ndice de ineficcia verifica se o centro
do cluster i est sendo melhorado com a busca local e, caso o ri atinja um valor rmax,
ser aplicado uma perturbao no centro, objetivando escapar de uma regio ruim
ou suficientemente explorada.

Na Figura 17 est representado o fluxograma de execuo da CS com seus


principais componentes.
42
2


Figura
a 17 - Fluxog
grama da CS S
Fonte:: Chaves e Lorena (20100).

A Fig
gura 18 representa o pseudoc
digo da CS
C impleme
entada nesste trabalho.

1. Criar novas sol


lues (cluusters) ale eatoriamentte
2. vi 0 e ri 0 i = 1,.. .., s soluo inicial s* s T T0
s
TO T > TC FAA
3. ENQUANT F
4. UANTO iter < SAmax FA
ENQU A
5. iter iteer + 1 s N(s) f(ss) f(s);
;
6. SE < 0 ENTO
E
7. s s
8. s) < f(s*) ) ENTO
SE (f(s s* s; FIM-SE;
9. SENO
10. Com pro
obabilidadee e-/T s s
11. FIM-SE
12. -ENQUANTO
FIM-
13. T T i arg min n H i v i vi + 1 ci melhor(ss,ci)
i{1,, }
14. SE vi = ENTO
15. vi 1 s buscca local(ci)
16. SE f(s) = f(ci) ENTO O
17. ri ri + 1
18. SE ri = rmax ENTO
19. ri 0 ci N(ci)
20. FIM-SE
21. SENO
22. ri 0
23. FIM-SE
24. FIM-
-SE
25. s* min(s*,cc i)
26. FIM-ENQ
QUANTO
27. Retorna
ar s*
Figura 18 - Pseudoocdigo da CS.
Fonte: Adaptado
A de Arajo (201 4).
43

Uma meta-heurstica geradora de solues, um processo de agrupamento e uma


heurstica de busca local so os principais componentes da CS, apresentados a
seguir.

3.6.1. Principais componentes da CS

3.6.1.1. Geradora de solues

A cada iterao da CS, uma soluo S gerada por uma meta-heurstica qualquer e
posteriormente enviada para o processo de agrupamento. Neste trabalho, a gerao
de solues para a CS foi realizada pela meta-heurstica SA, descrita na seo
anterior.

3.6.1.2. Processo de agrupamento

O procedimento de agrupamento compreende a alocao de solues similares aos


clusters. Aps serem gerados clusters, uma soluo s, concebida por meio da
geradora de solues, ser atribuda ao cluster i mais similar.

A verificao da similaridade entre uma soluo s e um cluster i ocorre por meio da


distncia de Hamming (HAMMING, 1950), que calculada utilizando o nmero de
desigualdades encontradas entre uma soluo s e o centro de um cluster. Conforme
descrito na Figura 19, so apresentadas duas solues para a sala 1, e o clculo
realizado verificando quantas vezes ocorreu alguma diferena entre as solues. A
cor laranja indica as ofertas similares entre as duas solues, e a cor verde
representa as ofertas diferentes. O processo aplicado para todas as salas, e assim
definida a distncia de Hamming entre duas solues (dHam(s1,s2)).
44

Sala 1 Sala 1
S T Q Q S S T Q Q S
07h00 08h00 -1 -1 -1 -1 -1 07h00 08h00 -1 -1 -1 -1 -1
08h00 09h00 -1 -1 -1 -1 -1 08h00 09h00 -1 -1 -1 -1 -1
09h00 10h00 -1 -1 -1 -1 -1 09h00 10h00 -1 -1 -1 -1 -1
10h00 11h00 19 -1 -1 18 -1 10h00 11h00 -1 19 -1 20 -1
11h00 12h00 19 -1 -1 18 -1 11h00 12h00 -1 19 -1 20 -1
12h00 13h30 -2 -2 -2 -2 -2 12h00 13h30 -2 -2 -2 -2 -2
13h30 14h30 -1 14 -1 17 20 13h30 14h30 -1 14 -1 17 18
14h30 15h30 -1 14 -1 17 20 14h30 15h30 -1 14 -1 17 18
15h30 16h30 -1 15 16 -1 -1 15h30 16h30 -1 15 16 -1 -1
16h30 17h30 -1 15 16 -1 -1 16h30 17h30 -1 15 16 -1 -1
17h30 18h20 -1 15 -1 -1 -1 17h30 18h20 -1 15 -1 -1 -1
18h20 19h10 9 10 -1 13 12 18h20 19h10 8 10 -1 13 12
19h10 20h00 9 10 -1 13 12 19h10 20h00 8 10 -1 13 12
20h00 20h50 -1 8 11 13 -1 20h00 20h50 -1 9 11 13 -1
21h00 21h50 -1 8 11 13 -1 21h00 21h50 -1 9 11 13 -1
21h50 22h40 -1 -1 -1 -1 -1 21h50 22h40 -1 -1 -1 -1 -1
Soluo s1 (Centro do Cluster) Soluo s2 (Nova Soluo)
dHam(s1,s2) = 12
Figura 19 - Exemplo de clculo da distncia de Hamming.

Se a soluo s representar uma soluo melhor comparada ao centro do cluster ci,


essa passar a ser o novo centro do cluster.

Aps uma soluo ser agrupada em um cluster, realizada uma anlise desse
cluster, verificando se o volume vi atingiu o limite . Caso isso ocorra, o cluster
considerado uma regio promissora, demonstrando que a mesma deve ser melhor
explorada por uma heurstica de busca local. Por fim, o ndice de ineficcia ri
analisado, ou seja, se ri < rmax, executada uma heurstica de busca local ao centro
do cluster. No entanto, uma perturbao aplicada no centro do cluster caso a
busca local seja utilizada mais de rmax vezes consecutivas sem obter uma melhora.
Neste trabalho, a perturbao realizada por meio de uma aplicao do movimento
2 Seo 3.5.3.

3.6.1.3. Busca local

Neste trabalho, foi utilizado o mtodo de busca local primeira melhora (HANSEN;
MLADENOVIC, 2006). O algoritmo de primeira melhora realiza uma busca por toda a
vizinhana e, ao encontrar uma melhor soluo, a aceita e interrompe sua busca,
retornando ao incio do processo de busca com a nova soluo. O algoritmo
45

encerrado quando no encontra nenhuma soluo melhor. Vale ressaltar que


apenas no pior caso ser explorada toda a vizinhana.

A busca local realizada diversas vezes durante a execuo da CS. Porm, no caso
especfico do PPHDU tratado neste trabalho, tem-se um problema de tamanho
relativamente grande, contendo 834 ofertas, 15 horrios por dia, 77 salas, 119
turmas e 235 professores. Assim, viu-se a necessidade de interromper a busca local
aps encontrar a primeira melhor soluo, pois o tempo computacional necessrio
para executar a busca local at que nenhuma outra soluo melhor fosse
encontrada se tornou proibitivo (aproximadamente 1 hora para cada execuo).

Para melhorar o desempenho da busca local e evitar percorrer todos horrios em


todos os dias e em todas as salas, realiza-se sempre a verificao do tipo da sala e
da capacidade. Ento, antes de percorrer todos os dias e horrios, verifica-se se o
tipo da nova sala incompatvel quando comparada com o tipo da sala da oferta
movimentada, ou se a capacidade da nova sala inferior ao nmero de alunos da
turma. Nesses casos, o processo repetido considerando outra sala.

3.7. RESOLUO DO PPHDU EM ETAPAS

Testes preliminares apontaram que a CS no foi capaz de obter uma soluo vivel
para a instncia completa do problema (todas as solues obtidas violavam pelo
menos uma das restries fortes descritas no Captulo 1) relativo ao CCA-UFES,
mesmo aps 10 horas de execuo, conforme Tabela 9 (Captulo 4). Assim, aps
uma anlise minuciosa dos resultados, percebeu-se uma maior complexidade na
montagem dos horrios para os cursos ofertados no perodo noturno, os quais, em
sua maioria, utilizavam todos os horrios disponveis na semana e apresentavam
diversas disciplinas divididas em mais de uma turma, que deveriam ser ofertadas no
mesmo dia e horrio. Tal fato resultou em uma baixa (ou nenhuma) flexibilidade para
a montagem dos horrios.

Ento, visando obteno de solues viveis para o PPHDU relativo ao CCA-


UFES, a resoluo do problema foi dividida em duas etapas. Na primeira etapa, a
meta-heurstica SA aplicada com o intuito de obter uma soluo vivel para os
cursos ofertados no perodo noturno. Nessa etapa, os cursos ofertados no perodo
diurno so desconsiderados. A segunda etapa utiliza a soluo encontrada pela SA
46

para os cursos do perodo noturno de forma integrada com uma soluo aleatria
para os cursos ofertados no perodo diurno. A partir dessa soluo, a CS ento
utilizada com o intuito de melhorar a soluo final, otimizando apenas as ofertas do
perodo diurno, ou seja, a soluo obtida na primeira etapa para as ofertas do
perodo noturno no so alteradas.

No prximo captulo, so apresentados os resultados obtidos e, por uma questo de


organizao, a aplicao da CS ao problema geral (cursos dos perodos diurno e
noturno) ser tratada com resoluo em uma etapa, e a CS para resolver o
problema a partir da soluo gerada pela SA para os cursos noturnos ser
considerada como resoluo em duas etapas.
47

4. RESULTADOS OBTIDOS

O desempenho do mtodo proposto foi avaliado por meio da resoluo do PPHDU


do CCA-UFES considerando as disciplinas ofertadas no segundo semestre do ano
de 2014 (perodo letivo 2014/2). Aps as consideraes apresentadas na Seo 3.3,
o problema final apresentou 834 ofertas para 119 turmas e 235 professores, a serem
alocadas em 15 horrios dirios em 77 salas.

As penalizaes utilizadas na funo objetivo descrita na Seo 3.4 foram definidas


de forma emprica, por meio de diversos testes. Observou-se que a CS se
comportou melhor quando os valores das penalizaes das restries do tipo forte
(1 a 7) foram ajustados com um valor alto, para as penalizaes das restries do
tipo fraco (8 a 15) os valores foram ajustados de acordo com o conceito de qual
restrio mais importante a fim de evitar sua ocorrncia. Os valores obtidos so
apresentados na Tabela 7.

Tabela 7 - Penalizaes utilizadas na funo objetivo.


Penalizao Valor Penalizao Valor
1 5000 9 5
2 5000 10 20
3 5000 11 60
4 5000 12 15
5 5000 13 1
6 5000 14 1
7 5000 15 50
8 10

Os parmetros utilizados para as meta-heursticas SA e CS so descritos na Tabela


8. Destaca-se que a CS obteve melhores resultados quando sua temperatura inicial
( foi definida com um valor maior e a sua quantidade de iteraes mximas (
foi definida com um valor menor, alm de um comportamento melhor com
uma quantidade mxima de 5 clusters ( ) e um volume () mximo de 7 solues.

Tabela 8 - Parmetros utilizados na SA e na CS.


SA CS
Parmetro Valor Parmetro Valor
5000 1000
5000 20000
0,001 0,001
0,995 0,995
48

5
7
rmax 3

Inicialmente, a CS foi aplicada ao PPHDU do CCA-UFES para resoluo em uma


etapa (conforme descrito na Seo 3.7). A CS foi executada 5 vezes considerando
um tempo mximo de processamento de 10 horas cada. Os resultados obtidos so
apresentados na Tabela 9, na qual as colunas S1 a S5 indicam as cinco solues
obtidas pelo algoritmo. A linha divisria no meio da tabela separa as restries fortes
(1 a 7) das restries fracas (8 a 16). O Tempo total de execuo medido em
segundos, e os valores das restries indicam a quantidade de vezes que ocorreram
violaes em cada restrio.

Tabela 9 - Resultados obtidos pela resoluo em uma etapa.


Desvio
Restries S1 S2 S3 S4 S5 Mdia
padro
0 0 0 0 1 0,2 0,45
2 1 4 1 2 2 1,22
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 1 0 1 1 0,6 0,55
3 0 0 0 0 0 0 0
1 1 2 6 5 3 2,35
82 81 77 87 70 79,4 6,35
205 193 202 207 208 203 6,04
57 51 56 60 68 58,4 6,27
2 0 5 1 0 1,6 2,07
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
4 7 5 6 5 5,4 1,14
Valor da F.O. 18305 18145 33450 43465 38350 30343,00 11615,26
Tempo Melhor (s) 29432 31622 30708 35900 32702 32072,80 2453,73
Tempo Total (s) 36051 36016 36000 36098 36005 36034,00 40,94

Observa-se na Tabela 9 que a melhor soluo obtida entre as cinco execues foi a
soluo S2, com o valor da funo objetivo em 18145 e obtida em 8 horas, 47
minutos e 2 segundos (31622), com a ocorrncia de trs violaes do tipo forte,
sendo elas: conflito de turma, tipo incompatvel de sala e fora do turno da oferta.
Nota-se que em todas as solues geradas ocorrem violaes do tipo forte,
tornando-as inviveis.
49

Considerando a resoluo em duas etapas (conforme descrito na Seo 3.7), foram


executados dez testes, sendo 5 testes utilizando a SA e a CS com um tempo
mximo de processamento de 5 horas cada e 5 testes com um limite de tempo de 10
horas cada. Os resultados obtidos so apresentados nas Tabelas 10 e 11.

Tabela 10 - Resultados obtidos pela resoluo em duas etapas 5 horas.


Desvio
Restries S1 S2 S3 S4 S5 Mdia
padro
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
3 0 0 0 0 0 0 0
0 0 0 0 0 0 0
66 68 74 69 66 68,6 3,29
203 206 195 202 201 201,4 1,95
59 53 51 63 57 56,6 4,77
1 4 4 4 0 2,6 1,95
0 0 2 0 1 0,6 0,89
0 0 0 0 0 0 0
0 0 0 0 0 0 0
2 5 3 5 5 4 1,41
Valor da F.O. 3015 3260 3155 3450 3070 3190,00 172,30
Tempo Melhor (s) 12459 10652 11955 11456 12274 11759,20 726,45
Tempo Total (s) 18032 18000 18015 18001 18000 18009,60 14,05

Aps as execues dos testes com o tempo mximo de 5 horas para a resoluo em
duas etapas, destaca-se que a soluo S1 foi a que obteve o melhor resultado, com
funo objetivo de 3015 obtida em um tempo de 3 horas e 27 minutos e 39
segundos. Conforme indica a Tabela 10, em nenhuma das cinco solues obtidas
ocorreram violaes do tipo forte, ou seja, o mtodo foi capaz de gerar solues
viveis.

A Tabela 11 indica os resultados obtidos a partir da resoluo em duas etapas com


um tempo mximo de 10 horas. possvel observar que a soluo 3 obteve o
melhor resultado com o valor da funo objetivo de 3015. Essa soluo foi obtida em
8 horas e 31 minutos e 26 segundos. Em todas as cinco execues foram
encontradas solues viveis, ou seja, sem violaes nas restries do tipo forte.
50

Tabela 11 - Resultados obtidos pela resoluo em duas etapas 10 horas.


Desvio
Restries S1 S2 S3 S4 S5 Mdia
padro
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
3 0 0 0 0 0 0 0
0 0 0 0 0 0 0
66 71 75 69 64 69 4,3
198 196 209 207 209 203,8 6,3
63 54 56 55 55 56,6 3,65
8 4 0 0 4 3,2 3,35
1 0 0 1 0 0,4 0,55
0 0 0 0 0 0 0
0 0 0 0 0 0 0
3 4 2 8 8 5 2,83
Valor da F.O. 3555 3210 3015 3240 3425 3289,00 207,95
Tempo Melhor (s) 12150 10316 30686 28743 28640 22107,00 9981,05
Tempo Total (s) 36003 36002 36013 36025 36008 36010,20 9,36

A Tabela 12 apresenta um comparativo entre as melhores solues descritas nas


Tabelas 9, 10 e 11.

Tabela 12 - Comparativo entre as melhores solues obtidas.


Mtodo Uma Mtodo Duas Mtodo - Duas
Restries etapa etapas etapas
Tempo 10 horas Tempo 5 horas Tempo 10 horas
0 0 0
1 0 0
0 0 0
0 0 0
1 0 0
3 0 0 0
1 0 0
81 66 75
193 203 209
51 59 56
0 1 0
0 0 0
0 0 0
0 0 0
7 2 2
Valor da F.O. 18145 3015 3015
Tempo Melhor (s) 31622 12459 30686
Tempo Total (s) 36016 18032 36013
51

Destaca-se na Tabela 12 que a melhor soluo para o mtodo em duas etapas foi
similar (com funo objetivo igual a 3015) tanto com 5 quanto com 10 horas de
processamento. Ou seja, pode-se afirmar que com um tempo mximo de 5 horas
possvel chegar a solues viveis com um bom valor da funo objetivo.
importante observar que as duas solues obtidas so diferentes (a quantidade de
violaes nas restries fracas), porm ambas possuem o mesmo custo, ou seja,
com os pesos utilizados (Tabela 7), eles representam solues similares em
termos de qualidade.

Dentre os testes realizados, possvel observar que a resoluo em duas etapas


sempre encontrou uma soluo vivel para o problema, ou seja, no apresentou
violaes nas restries do tipo forte. J a resoluo em uma etapa no foi capaz de
gerar solues viveis em nenhum dos 5 testes, ou seja, sempre apresentou
violaes nas restries do tipo forte.

Inicialmente, pretendia-se comparar os resultados obtidos com a soluo gerada de


forma manual para o CCA-UFES. Porm, em virtude de dados faltantes e das
consideraes realizadas com o intuito de tornar o problema solucionvel
(conforme descrito na Seo 3.3), essa comparao se tornou invivel.

Muitas vezes uma oferta para um curso estava alocada em duas ou mais salas
diferentes, ou a grade de horrio da sala estava desatualizada, faltando diversas
disciplinas, etc. As grades dos horrios das salas de aulas disponibilizadas para a
realizao deste trabalho estavam incompletas, faltando as grades de algumas
salas, como, por exemplo, dos laboratrios de informtica do departamento de
computao, dos laboratrios de farmcia, engenharia qumica, algumas salas de
aula, entre outros.

Todos os experimentos foram realizados em um computador com processador i7-


3610QM 2.30GHz, com 6GB de memria RAM utilizando o sistema operacional
Windows 7 Home Premium 64 bits. A CS e a SA foram implementadas na linguagem
de programao C++.
52

5. CONCLUSES

O foco deste trabalho foi a resoluo do Problema de Programao de Horrios de


Disciplinas em Universidades (PPHDU), tendo em vista as ofertas de todo o Centro
de Cincias Agrrias da Universidade Federal do Esprito Santo (CCA-UFES). Para
solucionar o problema, a meta-heurstica hbrida Clustering Search foi proposta,
tendo a meta-heurstica Simulated Annealing como geradora de solues.

Atualmente, a tarefa de confeccionar o quadro de horrios para o CCA-UFES


envolve os 17 coordenadores de cursos, com um tempo mdio de uma semana para
que todos os horrios sejam definidos, o que feito de forma manual. Assim,
pretendia-se que este trabalho apresentasse uma alternativa automatizada para o
processo da gerao de horrios.

Para isso, foi utilizada a meta-heurstica hbrida Clustering Search, que foi capaz de
gerar solues viveis para o problema, porm, considerando diversas adaptaes
do problema real. Apesar de no ser possvel comparar a soluo obtida pela CS
com a soluo obtida de forma manual, foi possvel notar o potencial do mtodo
proposto, incluindo tanto a CS quanto a modelagem do problema como um todo.

Destaca-se a ocorrncia de falhas humanas na confeco do quadro de horrios de


forma manual, como, por exemplo, aulas alocadas em mais de uma sala de aula em
um mesmo intervalo de tempo, causando a sensao de falta de salas. Tais falhas
podem ser evitadas com a utilizao deste trabalho, alm de reduzir o tempo
necessrio para a confeco dos quadros de horrios e os recursos humanos
necessrios.

Como trabalhos futuros, sugere-se a aplicao de outras metas-heursticas para a


elaborao do quadro de horrios, alm do teste da meta-heurstica Adaptive Large
Neighborhood Search (ALNS) proposta por Mariano (2014) com a instncia gerada
neste trabalho, com o intuito de fazer uma comparao de desempenho.

Por fim, sugere-se tambm o desenvolvimento de um software com interface grfica


para que servidores do CCA-UFES possam usufruir de uma ferramenta de apoio na
confeco dos horrios.
53

REFERNCIAS BIBLIOGRFICAS

ABRAMSON, D. Constructing school timetables using simulated annealing:


sequential and parallel algorithms. Management Science, v. 37, p. 98-113, 1991.

ARAJO, L. D. Clustering search para resoluo do problema de rotao de


culturas. Trabalho de Concluso de Curso (Cincia da Computao) Universidade
Federal do Esprito Santo, Alegre, 2014.

BARBOSA, S. H. D; SOUZA, S. R. Resoluo do problema de programao de


cursos universitrios baseada em currculos via uma meta-heurstica hbrida
GRASP-ILS-relaxado. In: Simpsio Brasileiro de Pesquisa Operacional, 43, 2011,
Ubatuba. Anais... SBPO, 2011.

CARVALHO, R. Abordagem heurstica para o problema de programao de horrios


de cursos. Dissertao (Mestrado em Engenharia Eltrica) Universidade Federal
de Minas Gerais, Belo Horizonte, 2011.

CHAVES, A. A. Uma meta-heurstica hbrida com busca por agrupamentos aplicada


a problemas de otimizao combinatria. Tese (Doutorado em Computao
Aplicada) Instituto Nacional de Pesquisas Espaciais, So Jos dos Campos, 2009.

CHAVES, A. A.; LORENA, L. A. N. Clustering search algorithm for the capacitated


centered clustering problem. Computers & Operations Research, v. 37, p. 552-558,
2010.

COLORNI, A.; DORIGO, M.; MANIEZZO, V. Metaheuristics for high school


timetabling. Computational Optimization and Applications, v. 9, p. 275-298, 1998.

CSIMA, J.; GOTLIEB, C. C. Tests on a computer method for construction of school


timetables. Communications of the ACM, New York, v. 7, p.160-163, mar. 1964.

FONSECA, G. H. G; RIBEIRO, R. G; MARTINS, F. V. C. Uma abordagem hbrida de


SAT e busca tabu para o problema da programao de horrios escolares. In:
Simpsio Brasileiro de Pesquisa Operacional, 43, 2011, Ubatuba. Anais... SBPO,
2011.

FONSECA, G. H. G.; SANTOS G. H. Memetic algorithms to the high school


timetabling problem. In: Evolutionary Computacion, Cancun: CEC, 2013.
54

HAMMING, R. W. Error detecting and error correcting codes. Bell System Technical
Journal, v. 26, p. 147-160, 1950.

HANSEN, P.; MLADENOVIC, N. First vs. best improvement: an empirical study.


Discrete Applied Mathematics, v. 154, p. 802-817, 2006.

KIRKPATRICK, S.; GELATT, C.; VECCHI, M. Optimization by simulated annealing.


Science, v. 220, n. 4598, p. 498-516, 1983.

MARIANO, G. P. Resoluo do problema de programao de horrios de disciplinas


do CCA-UFES utilizando a meta-heurstica ALNS. Trabalho de Concluso de Curso
(Cincia da Computao) Universidade Federal do Esprito Santo, Alegre, 2014.

MAURI, G. R. Novas heursticas para o problema de escalonamento de tripulaes.


Dissertao (Mestrado em Computao Aplicada) Instituto Nacional de Pesquisa
Espacial, So Jos dos Campos, 2005.

OLIVEIRA, A. C. M; LORENA, L. A. N. Detecting promising areas by evolutionary


clustering search. Lecture Notes in Artificial Intelligence, v. 3171, p. 385-394, 2004.

______. Hybrid evolutionary algorithms and clustering search. Hybrid Evolutionary


Algorithms - Studies in Computational Intelligence, v. 75, p. 77-99, 2007.

OLIVEIRA, G. J.; VIANNA, S. D.; VIANNA, D. F. M. Uma heurstica grasp+vnd para


o problema de programao de horrio escolar. Sistemas e Gesto, v. 7, p. 326-335,
2012.

PREIS, A. T. Prottipo gerador de grades horrias para instituies de ensino.


Trabalho de Concluso de Curso (Cincia da Computao) Universidade Regional
de Blumenau, Blumenau, 2007.

SANTOS, H. G.; SOUZA, M. J. F. Programao de horrios em instituies


educacionais: formulaes e algoritmos. In: Simpsio Brasileiro de Pesquisa
Operacional, 39, 2007, Fortaleza. Anais... SBPO, 2007.

SCHAERF, A. A survey of automated timetabling. Artificial Intelligence Review, v.13,


p. 87-127, 1999.

SPINDLER, M. Uma proposta de soluo para problemas de horrio educacional


utilizando busca dispersa e reconexo por caminhos. Dissertao (Mestrado em
55

Computao Aplicada) Universidade do Vale do Rio dos Sinos, So Leopoldo,


2010.

SOUZA, M. J. F. Programao de horrios em escolas: uma aproximao por


metaheursticas. Tese (Doutorado em Engenharia de Sistemas e Computao)
Universidade Federal do Rio de Janeiro, Rio de Janeiro, 2000.

TAHA, H. A. Pesquisa Operacional. 8. ed. So Paulo: Pearson Prentice Hall, 2008.


359 p.

Você também pode gostar