Diagnosticar uma geração que falha
A geração «falha» quando o algoritmo de geração não consegue encaixar tudo: devolve o melhor horário parcial encontrado, e as aulas que teve de sacrificar ficam na barra dos post-its por colocar (uma faixa vermelha resume o bloqueio). O problema é quase sempre uma sobrecarga de restrições: aulas a mais para as faixas horárias abertas, ou restrições demasiado apertadas para encaixarem. O remédio consiste em aliviar o que puder ser aliviado — é o objeto desta página. Para compreender como o algoritmo de geração prioriza e o que sacrifica, ver Geração automática; para o catálogo dos conflitos num horário já posto, ver Conflitos e diagnóstico.
O diagnóstico é uma pista, não um veredito
Quando uma aula não pode ser posicionada, o Omniscol destaca a entidade que colocou mais problemas ao longo das tentativas — «este professor não tem faixas horárias suficientes», «esta turma não cabe na sua grade». É uma heurística: a entidade assinalada é a que volta mais vezes nos bloqueios, não necessariamente a causa única. As restrições estão cruzadas — aliviar noutro sítio pode desbloquear tudo. Tome portanto a mensagem como uma direção de pesquisa: o verdadeiro remédio é muitas vezes atenuar a sobrecarga geral de restrições (um pouco mais de faixas horárias, disponibilidades menos estritas) em vez de insistir na entidade apontada.
Causas mais frequentes
1. Disponibilidades demasiado restritivas
Um professor marcou tantos períodos como impossíveis que já não restam faixas horárias suficientes para posicionar as suas aulas.
Diagnóstico: examine o ecrã das disponibilidades do professor em causa. Conte as faixas horárias livres e compare com o seu volume horário.
Resoluções:
- Flexibilizar certos períodos (passar do preto ao vermelho — indesejável mas não impossível),
- Redistribuir os cursos (atribuir uma parte a outro professor),
- Conversar com o professor se a disponibilidade for negociável.
2. Nenhuma sala de aula compatível
Uma disciplina requer uma especialização para a qual nenhuma sala de aula foi criada, ou todas as salas de aula correspondentes estão ocupadas nas únicas faixas horárias possíveis.
Resoluções:
- Criar a especialização em falta numa sala de aula adequada,
- Reduzir a restrição de especialização,
- Acrescentar uma sala de aula.
3. Capacidade insuficiente
O efetivo de um grupo / de uma turma ultrapassa a capacidade de todas as salas de aula candidatas.
Resoluções:
- Atribuir uma sala de aula maior,
- Atribuir várias salas a um mesmo curso (a capacidade total é a soma),
- Dividir a turma / o grupo.
4. Alinhamento estruturalmente impossível
Os volumes horários dos grupos alinhados diferem, ou as turmas mães têm grades horárias incompatíveis, ou um professor alinhado só pode estar num único sítio.
Resoluções:
- Harmonizar os volumes horários entre os grupos alinhados,
- Desalinhar e criar um curso por turma,
- Verificar que os locais das turmas alinhadas partilham uma grade horária comum na faixa horária alvo.
5. Aulas de curso a mais para a grade
Quando uma turma ou um professor tem manifestamente mais horas do que faixas horárias abertas, um aviso assinala-o a montante (separador Geração, contadores horas vs faixas horárias). O caso perverso é mais traiçoeiro: tomado isoladamente, nenhum transbordo evidente, mas a acumulação das restrições entre professores e turmas — e os seus cruzamentos — acaba por já não caber.
Resoluções:
- Reduzir os volumes horários introduzidos,
- Estender a grade horária (abrir a quarta-feira à tarde, por exemplo),
- Flexibilizar algumas indisponibilidades, visando as faixas que muitas entidades evitam ao mesmo tempo: a acumulação satura a grade.
6. Incompatibilidades demasiado numerosas
Empilhar restrições «não X depois de Y» pode criar um sistema sem solução.
Resolução: substituir certas incompatibilidades por pesos pedagógicos mais flexíveis.
7. Salas de aula insuficientes (estrangulamento)
Muito frequente: mesmo que cada sala de aula sirva, o seu número não chega para absorver a procura no mesmo momento. As aulas de curso empilham-se nas mesmas faixas horárias e a falta de salas de aula torna-se o estrangulamento que impede o conjunto de caber.
Resoluções:
- Acrescentar salas de aula (ou partilhá-las entre turmas),
- Distribuir a procura alargando a grade horária,
- Reduzir as restrições que concentram os cursos em poucas faixas horárias.
8. Vários locais: as deslocações consomem as horas
Com vários locais, os tempos de deslocação entre implantações reduzem as faixas horárias realmente utilizáveis por um professor (ou uma turma): mudar de local custa tempo, que deixa de estar disponível para colocar uma aula. As disponibilidades efetivas apertam-se e o quebra-cabeças complica-se.
Resoluções:
- Agrupar os cursos de um professor no mesmo local ao longo do dia,
- Verificar os tempos de deslocação declarados entre locais,
- Limitar as idas e voltas entre locais no mesmo dia.
Lista de verificação antes de relançar uma geração
- Todas as turmas têm um local atribuído?
- Todas as turmas têm as suas disciplinas e os seus professores?
- Todos os grupos usados em cursos têm um efetivo teórico ou uma capacidade gerível?
- As disponibilidades de todos os professores estão validadas?
- Nenhum alerta crítico (vermelho) no separador Geração?
Ferramentas de diagnóstico integradas
- Separador Geração — a montante: estatísticas (cursos / horas por professor, por turma, por local) e avisos (horas vs faixas horárias, alertas críticos a corrigir antes de lançar).
- Aulas não colocadas (post-its, à direita) — após uma falha: a saída de uma geração incompleta. O botão de posicionamento (pino) em cada uma mostra, através das faixas horárias coloridas, por que motivo nenhum lugar serve.
- Deteção de grupos esquecidos: grupos definidos mas sem nenhum curso atribuído.
Procedimento
Diagnosticar uma geração que falha
-
Quando a geração falha, o Omniscol exibe uma faixa vermelha, mantém o horário parcial visível, e coloca as aulas que não conseguiu encaixar na barra dos post-its, à direita.
-
Leia a faixa: ela dá uma direção (heurística, cf. acima), não um veredito.
-
Parta das aulas não colocadas, não dos «conflitos». A geração nunca cria um conflito: apenas deixa de lado o que não cabe. Pegue numa aula nos post-its e clique no seu botão de posicionamento (pino, Preencher no horário).
-
Leia as faixas horárias coloridas. O Omniscol exibe todas as faixas horárias candidatas; para uma aula impossível de colocar, estão todas bloqueadas. Procure porquê, na ordem dos três bloqueios habituais: o professor ocupado ou indisponível, a turma (ou o grupo) ocupada, ou nenhuma sala de aula livre e compatível. A razão aparece ao passar o cursor sobre a faixa horária.
-
Alivie a restrição que bloqueia — conforme o caso: flexibilizar as disponibilidades, acrescentar ou libertar uma sala de aula, harmonizar um alinhamento, alargar a grade (cf. as causas acima) — e depois relance.
-
Antes de relançar, percorra a lista de verificação acima (locais atribuídos, disciplinas e professores no lugar, efetivos informados, disponibilidades validadas, nenhum alerta crítico no separador Geração).