Oz and Mozart Users Mailing List

scheduler project


From: Adriano Volpones (adriano.volpones@arscomputandi.com)
Date: Fri Jul 19 2002 - 11:06:33 CEST


Hi to you all dear Oz users,

after about 1 year of good testing on field with a jobshop scheduler written in Oz and VisualBasic, I started a 2nd iteration of the project, which can be identified as "Objective Scheduler": an attempt to objectify the functional interface of a programming module, oriented to the solution of industrial processes scheduling.

A starting point of the problem could be ILOG Scheduler, a well known set of tools often cited as one of the best in order to model the scheduling problems.

So I started with the programmer's interface with some examples of use:

 %Activities are entities with an ID a START an END and a DURATION

 %an activity with duration of 5
 A = {Object.new Activity init(id:'A' d:5)}

 %an activity with duration of 5
 B = {Object.new Activity init(id:'B' d:10)}

 %we can post a precedence constraint
 {A precedes(B)}

 %and inspect the activities' bounds

other examples are:
 %extending time intervals algebra
 {A endsWith(B)}
 {A startsWith(B)}
 ...
 %resources
 R1={Object.new UnaryResource init(id:'Crane')}
 {A uses(R1)}
 T1={Object.new DiscreteResource init(id:'A-Team' capacity: 5)}
 {B uses(T1)}
 ...
 %materials
 Nut={Object.new Material init(id:'Nut')}
 Screw={Object.new Material init(id:'Screw')}
 {A consumes([10#Nut 10#Screw])}

I understand that to "objectify" we must fight with many drawbacks concerning efficiency, model "impedence" due to the fact that we can't use stateful entities inside computation spaces, and so on; but what I can say is that the main target of the project is not efficiency but "brain resources" that is programmer's brain.

I would like to read some opinions from you and, eventually share coding experiences.

Bye,

 Adriano

-
Please send submissions to users@mozart-oz.org
and administriva mail to users-request@mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.



This archive was generated by hypermail 2b29.