FET Forum

FET Support (English) => Programming Help => Topic started by: raihan on January 19, 2009, 01:06:01 PM

Title: Algorithm of FET
Post by: raihan on January 19, 2009, 01:06:01 PM
Please explain me the algorithm of FET.

Each node of a graph is one activity. So there are as many nodes as number of activities.
But then how are these nodes related with each other?
If activities that share one professor, room or students set at one time have different colors, so they are adjacent. And we have to make them to have the same color at the end of the algorithm, so there were no any conflicts.
But how do you start placing activities on time cell? Do you like start from first possible one or how? Please explain to newbie.
Title: Re: Algorithm of FET
Post by: Liviu Lalescu on January 19, 2009, 02:39:06 PM
No, you didn't understand exactly what I wanted to say:

First of all, there is a graph coloring algorithm for timetabling problem, if you have only activities with duration 1. Each activity is a node, and indeed 2 nodes are connected if they share teacher or students. Then, if you color them such that 2 adjacent nodes have different color, you can schedule them: each color is a time slot. So, you need to color them with maximum n_hours_per_week colors. But this algorithm cannot take care of many other constraints.

The algorithm of FET is based on recursive swapping of activities. Please read firstly the doc/algorithm/ - ignore the parts which say "the code is not very good now" - because I changed it in 2008. After you read this and browse over generate.cpp, please come back with more questions.
Title: Re: Algorithm of FET
Post by: raihan on January 20, 2009, 03:44:20 AM
Ok  :) Thanks.
Title: Re: Algorithm of FET
Post by: souravmca on April 06, 2009, 09:37:04 AM
where from i found generate.cpp...????
Title: Re: Algorithm of FET
Post by: Liviu Lalescu on April 06, 2009, 10:31:41 AM
Unpack fet-5.x.x.tar.bz2 -> fet-5.x.x./src/engine/generate.cpp
Title: Re: Algorithm of FET
Post by: Edwin on May 02, 2009, 01:57:35 PM
Hi,

Before develop FET, have you consider to use KBS?
Title: Re: Algorithm of FET
Post by: Volker Dirr on May 02, 2009, 06:08:15 PM
What do you mean with kbs? Knowledge based systems?

I never tried that. As far as i know also Liviu doesn't tried that.

Title: Re: Algorithm of FET
Post by: Edwin on May 02, 2009, 07:46:33 PM

yes, Knowledge Based Systems.

So, Why did you decide to use Genetic Algorithms?
Title: Re: Algorithm of FET
Post by: Liviu Lalescu on May 03, 2009, 09:51:30 AM
I'm back from a trip, sorry I couldn't answer sooner.

FET until versions 4 was done using genetic algorithm (trivial and bad algorithm).

FET 5 uses a recursive swapping algorithm. This is much better.

I don't know anything about KBS, maybe you could write us a few words about it or give a link on the internet (but if it is a long text, I am not sure I can read it all).