$title Resource-Constrained Project Scheduling Problem (RCPSP,SEQ=429) $onText Resource-constrained project scheduling problem (RCPSP) in a formulation which encodes the schedule using binary finishing time indicator variables as first proposed by Pritsker. Problem and model formulation based on: Pritsker, A. Alan B., Lawrence J. Waiters, and Philip M. Wolfe. "Multiproject scheduling with limited resources: A zero-one programming approach." Management science 16.1 (1969): 93-108. Contains embedded Python code for parsing instance data from the classic problem library PSPLIB from Kolisch and Sprecher. Instance library, generator and file format: Kolisch, Rainer, and Arno Sprecher. "PSPLIB-a project scheduling problem library: OR software-ORSEP operations research software exchange program." European journal of operational research 96.1 (1997): 205-216. http://www.om-db.wi.tum.de/psplib/main.html As default the first instance from PSPLIBs subset with 30 projects is solved to optimality (makespan=43). $offText * Comment out the following dollar set statement in order to use a tiny explicitly * specified example project instead of an instance from the PSPLIB $set instanceName j301_1.sm * Base project information (primary parameters) Sets j 'jobs (must be topologically ordered, i.e. i=ord(t) and ord(tau)<=ord(t)+durations(j)-1 and tw(j,tau)) = yes; makespan.lo = 0; solve rcpsp using mip minimizing makespan; * Derive starting times from binary finishing time indicators parameter st(j) Starting time of job j in result; loop(j, loop(t, if(x.l(j,t) = 1, st(j)=ord(t)-durations(j)))); display makespan.l, st;