Re: [taskjuggler-devel] I'd like to contribute an optimizing scheduler

From: Chris Schlaeger (cs_at_suse.de)
Date: Thu Mar 20 2003 - 11:01:41 CET


From: Chris Schlaeger <cs@suse.de>
Date: Thu, 20 Mar 2003 11:01:41 +0100
Message-Id: <200303201101.42466.cs@suse.de>
Subject: Re: [taskjuggler-devel] I'd like to contribute an optimizing scheduler

Hi,

On Tuesday 18 March 2003 20:09, Roland Hautz wrote:
> Hello,
>
> For my implementation of an optimizing scheduling algorithm I'm looking
> for a home base as part of an open source project. Since I'm using a
> slightly patched taskjuggler as development environment, your project
> would be my first choice.

that sounds really interesting.

>
> The algorithm is the brach-and-bound sequencing algorithm described in
> ftp://ftp.bwl.uni-kiel.de/pub/operations-research/pdf/wp385.pdf and
> ftp://ftp.bwl.uni-kiel.de/pub/operations-research/pdf/wp386.pdf .
>
> The current state is: Table 4 of wp385.pdf is running and can be called
> from a patched taskjuggler to solve smaller test projects. The bounding
> rules are not yet included, and no other optimizations are done. But I'm
> determined to optimize this function to death.
>
> Solving means at the moment minimizing the makespan. However the objective
> can be generalized, e.g. to the maximization of the cashflow.
>
> Exploitation of this algorithm would demand slight modifications of the
> taskjuggler language. Also a mapping between calendar time and the
> discrete time slots of the algorithm still needs to be written. Then it
> could be used as alternative or complete replacement of Task::schedule().

Can you describe the necessary changes a bit more detailed. You can also send
me the code if you like. Since TJ uses discrete time slots internally there
is already a mapping function. See the scoreboard handling code in
Resource.cpp.

> If you are interested, I'd be glad to hear, how to procede.

I'm certainly interested. An optimizer has been on my TODO list for a while
now. But since it is currently only needed when you use alternative
(non-persistant) resources, most people can live with the current algorithm.
I'd like to add support for a skill-based resource selection and then an good
optimizer is really a must have.

Chris

-- 
KDE 3.1: Conquer your Enterprise Desktop!  See http://www.kde.org!
GPG Key: 1024D/0500838B  A5FE C051 2AFC 9A14 768A  5125 5829 5750 0500 838B




This archive was generated by hypermail 2.1.7 : Thu Mar 20 2003 - 11:01:55 CET