Overview

A solution to the house building with workers problem can be determined using CP Optimizer and the three-stage method of describe, model and solve.

In this lesson, you will learn how to:

  • use the classes IloIntervalSequenceVar;

  • use the specialized constraint IloNoOverlap;

  • use the classes IloTransitionDistance and IloSpan;

  • use the expression IloLengthOf.

You will learn how to model and solve a problem of scheduling the tasks involved in building multiple houses in a manner that minimizes the costs associated with completing each house after a given due date and with the length of time it takes to build each house. Some tasks must necessarily take place before other tasks, and each task has a predefined size. Each house has an earliest starting date. Moreover, there are two workers, each of whom must perform a given subset of the necessary tasks, and there is a transition time associated with a worker transferring from one house to another house. A task, once started, cannot be interrupted. The objective is to minimize the cost, which is composed of tardiness costs for certain tasks as well as a cost associated with the length of time it takes to complete each house. To find a solution to this problem using CP Optimizer, you will use the three-stage method: describe, model and solve.