http://www.ime.usp.br/http://www.usp.br/http://arca.ime.usp.br/

Home
Problem
Solution
Algorithm
GA Tutorial
Live Demo

FAQs
Credits
Glossary
Changes
Todo
XpUSP Model
HOWTO
UML

Javadoc
CVS Repository
Dowload
News
Mailing lists
Bugs
Support
Features



Solving it ...
 

If we consider what has to be considered, we will note that it is very dificult to define what a solution would be. Actually, if you think a little more about it, you'll find out that a perfect solution for this problem doesn't really exist. There are several possibilities:

Rules that grade a solution
 

One of the keys to finding a good solution is finding a way to grade it. To enable the grading of solutions, we must establish a set of rules and their weights. Then we analyse a solution based on those rules and grade it.
Here are the rules we established (ordered by importance):

  1. A person can only be in one place at a time
    • A professor can only lecture one class at a time (one schedule), unless it's a double discipline
    • A student can only attend one class at a time (one schedule)
  2. A class can only happen if there is a professor lecturing it
  3. A professor can only lecture a class if he is capable
  4. A professor cannot lecture a class on a period he is not avaliable
  5. A professor cannot lecture any classes on a semester he is not avaliable
  6. There must be at least one set of classes that do not intercept for all disciplines of a given course and semester.
  7. A class lectured by a given professor cannot have more students then the professor selected attending it.
  8. All probable graduates must be able to graduate.
    NoteFor a ideal solution this doesn't mean much if you consider the following rule. This is actually used only by non-ideal solutions
  9. A student must be able to attend non intercepting classes of:
    all required disciplines and the n heigher weighted electives he selected (n is the number of electives he wants to attend).



Copyright © 2002 XPUSP. All Rights Reserved.