1 / 35

Lecture 3 – Classic LP Examples

Lecture 3 – Classic LP Examples. Topics Employee scheduling problem Energy distribution problem Feed mix problem Cutting stock problem Regression analysis Model Transformations. Employee Scheduling.

kenyon
Download Presentation

Lecture 3 – Classic LP Examples

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 3 – Classic LP Examples Topics • Employee scheduling problem • Energy distribution problem • Feed mix problem • Cutting stock problem • Regression analysis • Model Transformations

  2. Employee Scheduling Macrosoft has a 24-hour-a-day, 7-days-a-week toll free hotline that is being set up to answer questions regarding a new product. The following table summarizes the number of full-time equivalent employees (FTEs) that must be on duty in each time block. FTEs Interval Time 1 0-4 15 2 4-8 10 3 8-12 40 4 12-16 70 5 16-20 40 6 20-0 35

  3. Constraints for Employee Scheduling • Macrosoft may hire both full-time and part-time employees. The former work 8-hour shifts and the latter work 4-hour shifts; their respective hourly wages are $15.20 and $12.95. Employees may start work only at the beginning of 1 of the 6 intervals. • Part-time employees can only answer 5 calls in the time a full-time employee can answer 6 calls. (i.e., a part-time employee is only 5/6 of a full-time employee.) • At least two-thirds of the employees working at any one time must be full-time employees. Formulate an LP to determine how to staff the hotline at minimum cost.

  4. (4  12.95) (8  15.20) min 121.6(x1 + • • • + x6) + 51.8(y1 + • • • + y6) 5 ³ s.t. y1 15 x1 + x6 + 6 5 ³ y2 10 x1 + x2 + 6 All shifts must be covered 5 ³ y3 40 x2 + x3 + 6 5 ³ y4 70 x3 + x4 + 6 5 ³ y5 40 x4 + x5 + 6 5 ³ y6 35 x5 + x6 + 6 PT employee is 5/6 FT employee Decision Variables xt = # of full-time employees that begin the day at the start of interval t and work for 8 hours yt = # of part-time employees that are assigned interval t

  5. More constraints: 2 x1 + x6 ³ (x6 + x1 + y1) 3 At least 2/3 workers must be full time 2 ³ (x1 + x2 + y2) x1 + x2 3 . . . 2 ³ x5 + x6 (x5 + x6 + y6) 3 Nonnegativity xt ³ 0, yt ³ 0 t =1,2,…,6

  6. Feed Mix Problem • An agricultural mill produces a different feed for cattle,sheep, and chickens by mixing the following raw ingredients: corn, limestone, soybeans, and fish meal. • These ingredients contain the following nutrients: vitamins, protein, calcium, and crude fat in the following quantities: Nutrient,k Vitamins Protein Calcium Crude Fat Ingredient,i Corn 8 10 6 8 Limestone 6 5 10 6 Soybeans 10 12 6 6 Fish Meal 4 18 6 9 Let aik= quantity of nutrient k per kg of ingredient i

  7. Constraints • The mill has (firm) contracts for the following demands. Demand (kg) Cattle Sheep Chicken dj 10,000 6,000 8,000 • There are limited availabilities of the raw ingredients. Supply (kg) Corn Limestone Soybeans Fish Meal si 6,000 10,000 4,0 00 5,000 • The different feeds have “quality” bounds per kilogram. Vitamins Crude fat Protein Calcium min max min max min max min max Cattle 6 -- 6 -- 7 -- 4 8 Sheep 6 -- 6 -- 6 -- 4 8 6 -- Chicken 4 6 6 -- 4 8 The above values represent bounds:ljkand ujk

  8. Costs and Notation • Cost per kg of the raw ingredients is as follows: Soybeans Fish meal Limestone Corn cost/kg, ci 24¢ 12¢ 20¢ 12¢ Formulate problem as a linear program whose solution yields desired feed production levels at minimum cost. Indices/sets i  I ingredients { corn, limestone, soybeans, fish meal } j  J products { cattle, sheep, chicken feeds } nutrients { vitamins, protein, calcium, crude fat } k  K

  9. Data dj demand for product j (kg) si supply of ingredient i (kg) ljk lower bound on number of nutrients of type k per kg of product j upper bound on number of nutrients of type k per kg of product j ujk ci cost per kg of ingredient i aik number of nutrients k per kg of ingredient i Decision Variables xij amount (kg) of ingredient i used in producing product j

  10. å aikxij£ ujkdj "j  J, kK iÎI å aikxij ³ ljk dj "j  J, kK iÎI LP Formulation of Feed Mix Problem å å cixij min jÎJ iÎI å xij = dj "j  J s.t. iÎI xij£ si å "i  I jÎJ "i  I, j  J xij³ 0

  11. Generalization of feed Mix Problem GivesBlending Problems Blended commodities Raw Materials Qualities corn, limestone, protein, vitamins, feed soybeans, fish meal calcium, crude fat butane, catalytic octane, volatility, gasoline reformate, vapor pressure heavy naphtha pig iron, carbon, metals ferro-silicon, manganese, carbide, various chrome content alloys ³ ³ ³ 2 raw ingredients 1 quality 1 commodity

  12. Trim-Loss or Cutting Stock problem • Three special orders for rolls of paper have been placed at a paper mill. The orders are to be cut from standard rolls of 10¢ and 20¢ widths. Length Width Order 1 ¢ 5 10,000¢ 2 ¢ 7 30,000¢ 3 ¢ 9 20,000¢ • Assumption: Lengthwise strips can be taped together • Goal: Throw away as little as possible

  13. Problem: What is trim-loss? ¢ 20 ¢ 10 5000' 5' ¢ 5 9' ¢ 7 Decision variables: xj= length of roll cut using pattern, j = 1, 2, … ?

  14. min z = 10(x +x +x ) + 20(x +x +x +x +x +x ) 7 9 1 2 3 4 5 6 8 ³ s.t. 2x + 4x + 2x + 2x + x 10,000 1 7 4 5 6 ³ + x x + x + 2x 30,000 8 7 2 5 ³ + x x + x + 2x 20,000 8 3 9 6 xj³ 0, j = 1, 2,…,9 Patterns Possible ¢ ¢ 10 roll 20 roll x3 x9 x2 x8 x1 x5 x4 x7 x6 5¢ 2 0 0 4 2 2 1 0 0 7¢ 0 1 0 0 1 0 2 1 0 9¢ 0 0 1 0 0 1 0 1 2 Trim loss 0 3 1 0 3 1 1 4 2

  15. Alternative Formulation Minimize Trim Loss + Overproduction + 2x9 min z = 3x2 + x3 + 3x5 + x6 + x7 + 4x8 + 5y1 + 7y2 + 9y3 4 s.t. 2x1 + x4 + 2x5 + 2x6 + x7 – y1 = 10,000 x2 + x5 + 2x7 + x8 – y2 = 30,000 x3 + x6 + x8 + 2x9 – y3 = 20,000 xj³ 0, j = 1,…,9; yi³ 0, i = 1, 2, 3 where yi is overproduction of width i

  16. Minimizing Piecewise Linear Convex Functions • Definition of convexity • Examples of objective functions 1. f(x) = maxk=1,…,p (ckx + dk) 2. f(x) = j=1,n cj|xj|, cj > 0 for all j 3. f(x) = separable, piecewise linear, convex

  17. Definition of a Convex/Concave Function • A function f : n is called convex if for every x and yn, and every [0,1], we have f(x + (1 – )y) ≤ f(x) + (1 – )f(y) • A function f : n is called concave if for every x and yn, and every [0,1], we have f(x + (1 – )y) ≥ f(x) + (1 – )f(y) • If f(x) is convex, then –f(x) is concave

  18. Minimizing the Maximum of Several Affine Functions Problem: min maxk=1,…,p (ckx + dk) s.t. Ax ≥ b Transformed problem: min z s.t. z≥ ckx + dk, k =1,…,p Ax ≥ b f(x) = max x

  19. Problems Involving Absolute Values: Minimizing the L1-Norm Problem: min j=1,n cj|xj|, cj > 0 for all j s.t. Ax ≥ b

  20. Data Fitting Example • Problem: We are given p data points of the form (ak, bk), k = 1,…,p, where akn and bk, and wish to build a model that predicts the value of the variable b from knowledge of the vector a. • Assume a linear model: b = ax + x0, where (x,x0) is a parameter vector to be determined. • Error: Given a particular values of (x,x0), the residual (predictive error) at the kth data point is defined by |akx+x0 – bk|. • Objective: Find values of (x,x0) that best explain the available data; i.e., minimize the error.

  21. Data Fitting Example (cont’d) • Model 1: Minimize the largest residual min maxk|akx+x0 –bk| Transformed model 1: min z s.t. z ≥ akx+x0 –bk, k = 1,…,p z ≥ –akx–x0 +bk , k = 1,…,p • Model 2: Minimize the sum of residuals min k=1,p|akx+x0 –bk| Transformed model 2: min k=1,pzk s.t. zk ≥ akx+x0 –bk, k = 1,…,p zk ≥ –akx–x0 +bk, k = 1,…,p

  22. Constrained Regression b Data (a,b) = { (1,2) , (3,4) , (4,7) } · 7 6 5 · 4 3 · 2 1 a 1 2 3 4 5 We want to “fit” a linear function b = ax + x0 to these data points; i.e., we have to choose optimal values for x and x0.

  23. Objective: Find parameters x and x0 that minimize the maximum absolute deviation between the data ak and the fitted line bk = akx + x0. Ù Ù bk bk and Predicted value observed value In addition, we’re going to impose a priori knowledge that the slope of the line must be positive. (We don’t know about the intercept.) known to be positive x = slope of line Decision variables positive or negative x0 = b-intercept

  24. Objective function: Ù min max { |bk-bk| : k = 1, 2, 3 } Ù where bk = akx+ x0 Ù Let z = max { |bk-bk| : k = 1, 2, 3 } Optimization model: min z Ù s.t. z³ |bk-bk|, k = 1, 2, 3

  25. Convert absolute value terms to linear terms: Note: 2 ³|x| iff 2 ³x and 2 ³ -x Ù Thus z ³|bkbk| is equivalent to z³akx + x0-bk and z³ -akx – x0 + bk Nonlinear constraints: Ù z ³ -  1x + x0– 2  b1 = b1 Ù - b2 = b2 z ³  3x + x0 – 4  Ù z ³ - = b3 b3  4x + x0 – 7 

  26. Letting x0 = x0+-x0-, x0+ 0, x0- 0, we finally get … min z s.t. x + x0+ -x0- -z £  xx0+ x0- -z £ 3x + x0+ -x0- -z £ -3x-x0+ x0- -z £ 4x + x0+ -x0- -z £ -4x-x0+ x0- -z £ x, x0+, x0-, z³ 0

  27. Separable Piecewise Linear Functions fj(xj) • Model: min f(x) = f1(x1) + f2(x2) + . . . + fp(xp) • For each xj we are given r break points: 0 < aj1 < aj2 < . . . < ajr < ∞ • Let cjt be the slope in the interval aj,t-1 ≤xj≤ajt for t =1,…,r+1, where aj0= 0 and aj,r+1= ∞ • Let yjt be the portion of xj lying in the tth interval, t = 1,…,r+1 xj aj2 aj1 aj,r-1 ajr 0

  28. Transformation for fj(xj) • Let xj = yj1 + yj2 + . . . + yj,r+1 • Model: min cj1yj1 + cj2yj2 + . . . + cj,r+1 yj,r+1 + f1(x1) + . . . s.t. 0 ≤yj1≤aj1 0 ≤yj2≤aj2–aj1 . . . 0 ≤yjr≤ajr–aj,r-1 0 ≤yj,r+1 and for every t, if yjt > 0, then each yjk is equal to its upper bound ajk–aj,k-1, for all k < t.

  29. Energy Generation Problem (with piecewise linear objective) Austin Municipal Power and Light (AMPL) would like to determine optimal operating levels for their electric generators and associated distribution patterns that will satisfy customer demand. Consider the following prototype system Demand requirements 4 MW 1 1 Demand sectors Plants 7 MW 2 2 3 6 MW The two plants (generators) have the following (nonlinear) efficiencies: Plant 1 [ 0, 6 MW] [ 6MW, 10MW] Unit cost ($/MW) $10 $25 Plant 2 [ 0, 5 MW] [5MW, 11MW] Unit cost ($/MW) $8 $28 For plant 1, e.g., if you generate at a rate of 8MW (per sec), then the cost ($) is = ($10/MW)(6MW) + ($25/MW)(2MW) = $110.

  30. Problem Statement and Notation Formulate an LP that, when solved, will yield optimal power generation and distribution levels. Decision Variables x11 = power generated at plant 1 at operating level 1 x12 1 ² 2 ² ² ² ² ² ² 2 1 x21 ² ² ² ² ² ² ² 2 x22 2 ² ² ² ² ² ² ² w11 1 to demand sector 1 = power sent from plant w12 2 1 ²²² ² ² ² ² w13 3 ² 1 ² ² ² ² ² ² w21 1 ² 2 ² ² ² ² ² ² w22 2 ² 2 ² ² ² ² ² ² w23 3 ² 2 ² ² ² ² ² ²

  31. Formulation min 10x11 + 25x12 + 8x21 + 28x22 s.t. w w w = x11 + x12 + + Flow balance 11 12 13 w w w = x21 + x22 + + 21 22 23 w w + = 4 11 21 w w Demand + = 7 12 22 w w = 6 + 13 23 0 £ x11 £ 6, 0 £x12£ 4 0 £ x21 £ 5, 0 £x22£ 6 w11, w12, w13, w21, w22, w32 0 Note that we can model the nonlinear operating costs as an LP only because the efficiencies have the right kind of structure. In particular, the plant is less efficient (more costly) at higher operating levels. Thus the LP solution will automatically select level 1 first.

  32. General Formulation of Power Distribution Problem The above formulation can be generalized for any number of plants, demand sectors, and generation levels. Indices/Sets plants i Î I j Î J demand sectors generation levels k Î K Data Cik = unit generation cost ($/MW) for plant i at level k uik = upper bound (MW) for plant i at level k dj = demand (MW) in sector j Decision Variables xik = power (MW) generated at plant i at level k wij = power (MW) sent from plant i to sector j

  33. General Network Formulation å å cikxik min iÎI kÎK xik å å s.t. wij = " i Î I jÎJ kÎK å wij = dj " j Î J iÎI • £xik£ uik " i Î I, k Î K 0 £wij" i Î I, j Î J

  34. Model Transformations • Direction of optimization: Minimize {c1x1 + c2x2 + … + cnxn} ÛMaximize {–c1x1 – c2x2 – … – cnxn} • Constant term in objective function  ignore • Nonzero lower bounds on variables: • xj>lj replace with xj= yj + lj whereyj 0 • Nonpositive variable: • xj≤ 0 replace with xj= –yj where yj 0 • Unrestricted variables: • xj = y1j– y2j where y1j 0, y2j  0

  35. What You Should Know About LP Problems • How to formulate various types of problems. • Difference between continuous and integer variables. • How to find solutions. • How to transform variables and functions into the standard form.

More Related