algorithmdata-structuresgraphschedulingresource-scheduling

Graph representation of multi objective problem


I'm investigating a possible research topic for a thesis project that involves a multi-objective scheduling problem and I'm wondering if anyone has ideas for representing such a problem as a graph. I've looked at some literature on the subject and a common approach seems to be using cost vectors on the edges instead of a single cost number. This makes sense to me but I don't see how I can model certain aspects of my problem this way.

In particular there are resources in the model that constrain each activity to certain time windows and a valid schedule must schedule each activity within these constraints. Further, there are some sets of activities that are dependent on each other. For example a user can place time delta requirements between two activities saying they must be scheduled within some number of time units of each other or must be at least some number of time units apart in a valid schedule. I can imagine modeling these as optional elements in a cost vector but is there a better way?

Bonus question is that this is also supposed to be a least commitment scheduler. Each activity should be given some window that's nominally n time units long so there doesn't have to necessarily be a total order on activities.

Any literature on representing problems like this would be much appreciated!


Solution

  • Here's a keyword for you to search for: Constraint Programming

    You can model such problems as so-called constraint satisfaction problems, i.e. a bunch of variables, their possible values, and a set of constraints that your solution (=selection of values for the variables) has to satisfy.

    With CP you can directly formulate your text above as individual constraints (f.ex., activity A has to be before activity B becomes something like A.endTime <= B.startTime).

    As for literature, there are loads of books and papers on CP available, especially with a focus on scheduling (there's even a conference dedicated to CP for scheduling problems).