11 Example Reactor Feed A Intermediate E Feed C Feed B Feed D Reactor Product 1Product 2 Intermediate F Intermediate G Intermediate H
12 The Item-Task Network Representation Feed A Intermediate E Feed C Feed B Feed D End Product 1End Product 2 Intermediate F Intermediate G Intermediate H Task 2 Task 5 Task 1 Task 2 Task 5 Task 3 Task 4
13 Items & Tasks An item can be a component purchased from an outside supplier or produced internally. An item can be a raw material (e.g., a component), a semi- finished (e.g., sub-assembly) or a finished product. A task can consume and produce multiple items (components/intermediates/products).
14 Items & Tasks (Continued…) An item can be consumed by more than one task; similarly, an item can be produced by more than one task. A finished product can be the result of several tasks done in series or in parallel.
16 System Description t : a period (e.g., day, week, month); t = 1, …, T, where T represents the planning horizon D rt : demand for item r in period t (number of units), r =1,…, R where R is the number of items ir : number of units of item r needed to carry out task i, i =1,…, N where N is the number of tasks ir : number of units of item r produced by task i
17 Given a demand profile over a set of T periods for each item (demand can be for either finished or semi-finished products), determine the quantity of each item to produce in each period in order to minimize the production, inventory and setup costs, while meeting demand and without exceeding production capacity. Problem Statement
18 Formulations Big bucket formulation ( the production planning problem ) Small bucket formulation ( the production scheduling problem )
19 A Big-Bucket Formulation Tasks initiated in a period are completed during the same period The same task can be carried out multiple times during a period Items produced in a period can be used to satisfy demand during that period Demand in each period must be satisfied in that period; no backorders allowed There are no capacity limits (no limits on the number of times a task can be carried out in a given period)
20 Notation Parameters c it : variable cost of carrying out task i in period t, i =1,…, N where N is the number of tasks A it : fixed cost of carrying out task i in period t (incurred at most once during each period) h rt : cost of holding one unit of item r in inventory from period t to period t +1
21 Notation (Continued…) Decision variables I rt : inventory level of item r at the end of period t Q it : the number of times task i is carried out in period t Y it = 1 if task i is initiated one or more times during period i and Y it = 0 otherwise
22 Notation (Continued…) Amount of item r produced in period t = Amount of item r consumed in period t =
25 A Formulation with Capacity Constraints and Multiple Machines A machine may correspond to a single processor, an assembly workstation, or a production line, among others It is possible for a task to be carried out on one or more machines A machine could possibly carry out more than one task A machine has a finite capacity and carrying out any task consumes some of this capacity
26 Notation U tm : capacity of machine m in period t; m = 1, …, M, where M is the number of machines im : units of capacity of machine m needed to carry out task i c i,t,m : variable cost of carrying out task i on machine m in period t A i,t,m : fixed cost of carrying out task i on machine m in period t
27 Note: A task that cannot be carried out on a machine is assigned a very large production cost.
28 Notation (Continued…) Q i,t,m : the number of times task i is carried out in period t on machine m Y i,t,m = 1 if task i is initiated one or more times during period i on machine m and Y i,t,m = 0 otherwise
30 A Formulation with Setup Times A setup time s i,m is incurred if task i is carried out on machine m, one or more times in any given period. The capacity constraint is modified as follows
31 A Small-Bucket Formulation Time periods are chosen to be small enough so that only one task on a particular machine can be either initiated or completed The processing time of each task consists of one or more periods A setup cost is incurred when the task initiated on a machine is different from the task that was just completed on that machine.
32 Notation i,m : processing time (in number of time periods) of task i on machine m Q i,t,m = 1 if task i is initiated on machine m at time t, and Q i,t.m = 0 otherwise Z i,t,m = 1 if machine m at time t is set up for task i
34 Solution Methods Small to medium problems can be solved exactly (to optimality) Large problems may not solve within a reasonable amount of time (the problem belongs to a class of combinatorial optimization problems called NP-hard) Large problems can be solved approximately using a heuristic approach
35 Heuristics A small to medium problems can be solved exactly (to optimality) Large problems may not solve within a reasonable amount of time (the problem belongs to a class of combinatorial optimization problems called NP-hard) Large problems can be solved approximately using a heuristic approach
36 Example Heuristics Decompose the problem into a series of sub-problems with smaller planning horizons Decompose the problem into a series of subproblems, each pertaining to a single item Decompose the problem into one big bucket problem (the production planning problem) Solve the problem by relaxing one or more sets of constraints Solve the problem on a rolling horizon basis