[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Algorithm for assignment of people to shifts? A suitable application?



Hi

A few years ago I was in a project that also did something like that, on a
medium scale (a few thousands of assignments a year, few months each, with
'justice rules' that should consider previous years).
It's development started around 1989, and then there were very few such
things. A few years later, there was another project, that had a bit
different needs, and before starting it, they looked around a lot and
found out that the 'trend' in the industry is not to try to give the
computer all of the data and let it give the complete solution, but to
do it interactively, in a way that the computer gives to the user the
best suggestions for a specific assignment.
A bit later, I arrived, and about that time they started to talk about
rewriting the original project. I then looked around the net, and didn't
find anything complete or even impressing.
I don't know what's the situation today, but I do not think it changed much
in the last 5-6 years. Note that this is a difficult problem, also
theoretically (it's NPC), and that in non-trivial cases a human assigner
usually has many heuristics and 'hidden knowledge' that is very difficult
to express formally.
However, the best related thing I found then (and probably relevant today
as well), is a language called 'Oz'.
You can find it with google, (look for 'Oz language') or in the 'Languages
Review Subproject' of tunes.org - it is my usual 'Computer languages
dictionary' (and a very interesting site altogether).

	didi

On Mon, Feb 26, 2001 at 10:57:21PM +0200, Shaul Karl wrote:
> Are you able to provide pointers to where I can find an algorithm for an 
> assignment of people to shifts? Can you point some general method in operation 
> research that this problem fells under? Are there suitable mailing lists / 
> news groups for this sort of question?
> What about a suitable application?
> 
> The problem is what you can think of:
> 
> 1. There is a fixed number of people.
> 2. They have to be assigned to shifts.
> 3. The assignment should be as fair as possible.
> 4. The process is a continuous one and has memory: that is, it is to be 
> repeated after a while and the assignment for a specific period can be unfair, 
> provided that it will be compensated during the following periods.
> 5. There are constraints about who can be assigned to a specific shift. These 
> constraints are not fixed. They change between the periods the algorithm is 
> applied to. Each constraint has a severity rank, by which I mean that when 
> there is no other choice the less severe constraints should be not full filed 
> before the more severe ones.
> 
> -- 
> 	
> 	Shaul Karl <shaulka@bezeqint.net>
> 
> 
> 
> =================================================================
> To unsubscribe, send mail to linux-il-request@linux.org.il with
> the word "unsubscribe" in the message body, e.g., run the command
> echo unsubscribe | mail linux-il-request@linux.org.il

=================================================================
To unsubscribe, send mail to linux-il-request@linux.org.il with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail linux-il-request@linux.org.il