Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computationally speaking, we can partition problems into two categories. Easy Problems and Hard Problems We can say that easy problem ( or in some languages.

Similar presentations


Presentation on theme: "Computationally speaking, we can partition problems into two categories. Easy Problems and Hard Problems We can say that easy problem ( or in some languages."— Presentation transcript:

1

2 Computationally speaking, we can partition problems into two categories. Easy Problems and Hard Problems We can say that easy problem ( or in some languages polynomial problems) are those problems with their solution time proportional to n k. Where n is the number of variables in the problem, and k is a constant, say 2, 3, 4 … Let’s assume that k = 2. Therefore, easy problems are those problems with their solution time proportional to n 2. Where n is the number of variables in the problem. Difficult problems are those problems with their solution time proportional to k n, or in our case 2 n. Computational Complexity

3 Now supposed we have an easy problem with n variables. Therefore, the solution time is proportional to n 2. We have solved this problem in one hour using a computer with 2 GHz CPU. Suppose we have a new computer with its processing capabilities 10000 times of a 2 GHz computer, and we have one century time. What is the size of the largest problem that we can solve with this revolutionary computer in one century. 1 n21 n2 (10000) (100)(10000)(n+x) 2 Computational Complexity

4 1 n 2 (10) 10 (n+x) 2 1 (n+x) 2 = (10) 10 n 2 (n+x) 2 / n 2 = (10) 10 (n+x / n ) 2 = (10) 10 n+x / n = (10) 5 = 100000 n+x = 100,000n The number of variables in the new problem is 100,000 times greater that the number of variables in the old problem. Computational Complexity

5 Now supposed we have a hard problem with n variables. Therefore, the solution time is proportional to 2 n. We have solved this problem in one hour using a computer with 900 MHz CPU. Suppose we have a new computer with 900,000 MHz CPU, and we have one century time. What is the size of the largest problem that we can solve in one century using a 900, 000 MHz CPU. 1 2 n (10) 10 2 (n+x) Computational Complexity

6 1 2 n (10) 10 2 (n+x) (1) 2 (n+x) = (10) 10 2 n 2 (n+x) / 2 n = (10) 10 2 x = (10) 10 log 2 x = log (10) 10 x log 2 = 10 log (10) x (.301) = 10(1) x = 33 The number of variables in the new problem is 33 variables greater that the number of variables in the old problem. Computational Complexity

7 Working with Binary Variables

8 1- Exactly one of the two projects is selected 2- At least one of the two projects is selected 3-At most one of the two projects is selected 4- None of the projects should be selected Exactly one, at least one, at most one, none

9 1- Both projects must be selected 2- none, or one or both of projects are selected 3- If project 1 is selected then project 2 must be selected 4- If project 1 is selected then project 2 could not be selected Both, at most 2

10 More Fun

11 Either project 1&2 or projects 3&4&5 are selected More Practice

12 Suppose y 1 is our production of product i. Due to technical considerations, we want one of the following two constraints to be satisfied. If the other one is also satisfied it does not create any problem. If the other one is violated it does not create any problem. More on Binary Variables

13 We can produce 3 products but due to managerial difficulties, we want to produce only two of them. We can produce these products either in plant one or plant two but not in both. In other words, we should also decide whether we produce them in plant one or plant two. Other information are given below Required hrsAvailable hrs Product 1 Product 2Product 3 Plant 1 3 4 2 30 Plant 2 4 6 2 40 Unit profit 5 7 3 Sales potential 7 5 9 One constraint out of two

14 Consider a linear program with the following set of constraints: 12x 1 + 24x 2 + 18x 3 ≤ 2400 15x 1 + 32x 2 + 12x 3 ≤ 1800 20x 1 + 15x 2 + 20x 3 ≤ 2000 18x 1 + 21x 2 + 15x 3 ≥ 1600 Suppose that meeting 3 out of 4 of these constraints is “good enough”. Meeting a Subset of Constraints

15 We want two of the following 4 constraints to be satisfied. The other 2 are free, they may be automatically satisfied, but if they are not satisfied there is no problem y 1 + y 2  100 y 1 +2 y 3  160 y 2 + y 3  50 y 1 + y 2 + y 3  170 In general we want to satisfy k constraints out of n constraints Still Fun

16 A Constraint With k Possible Values y 1 + y 2 = 10 or 20 or 100 Mastering Formulation of Binary Variables

17 We have 5 demand centers, referred to as 1, 2, 3, 4,5. We plan to open one or more Distribution Centers (DC) to serve these markets. There are 5 candidate locations for these DCs, referred to as A, B, C, D, and E. Annual cost of meeting all demand of each market from a DC located in each candidate location is given below DC1DC2DC3DC4DC5 Market 115181317 Market 2152261414 Market 32818788 Market 4100120889 Market 53020203040 Each DC can satisfy the demand of one, two, three, four, or five market A Location Allocation Problem

18 Depreciated initial investment and operating cost of a DC in location A, B, C, D, and E is 199, 177, 96, 148, 111. The objective function is to minimize total cost (Investment &Operating and Distribution) of the system. Suppose we want to open only one DC. Where is the optimal location. Suppose we don't impose any constraint on the number of DCs. What is the optimal number of DCs. A Location Allocation Problem

19 Mercer Development is considering the potential of four different development projects. Each project would be completed in at most three years. The required cash outflow for each project is given in the table below, along with the net present value of each project to Mercer, and the cash that is available (from previous projects) each year. Cash OutflowRequired ($million)Cash Available Project1 oject2 oject3 oject4($million) Year 110861230 Year 2854015 Year 3806012 NPV35182416 Example #1 (Capital Budgeting)

20 Maximum Flow Problem : D.V. and OF 5 1 2 2 2 4 1 43 2 5 3

21 Maximum Flow Problem : Arc Capacity Constraints 5 1 2 2 2 4 1 43 2 5 3

22 Maximum Flow Problem : Flow Balance Constraint 5 1 2 2 2 4 1 43 2 5 3  t ij =  t ji  i  N \ O and D

23 Maximum Flow Problem : Flow Balance Constraint 5 1 2 2 2 4 1 43 2 5 3 2 1 2 2 2 3 1 43 2 5 3 1 1 2 1 2 4 1 43 2 5 3 2 1 2 1 1 4 1 43 2 5 3

24 Maximum Flow Problem with Restricted Number of Arcs x ij : The decision variable for the directed arc from node i to nod j. x ij = 1 if arc ij is on the flow path x ij = 0 if arc ij is not on the flow path  x ij  4

25 Maximum Flow Problem with Restricted Number of Arcs 5 1 2 2 2 4 1 43 2 5 3 1 1 2 1 2 4 1 43 2 5 3

26 Divisibility –1.5, 500.3, 111.11 Certainty –c j, a ij, b i Linearity –No x 1 x 2, x 1 2, 1/x 1, sqrt (x 1 ) –a ij x j –a ij x j + a ik x k Nonnegativity The relationship between flow and arc variables t 23 could be greater than 0 while x 23 is 0,

27 Relationship between Flow and Arcs 5 1 1 2 2 4 1 43 2 5 3 5 1 2 2 2 4 1 43 2 5 3

28 On a Path 5 1 2 2 2 4 1 43 2 5 3 5 1 2 2 2 4 1 43 2 5 3 5 1 2 2 2 4 1 43 2 5 3 5 1 2 2 2 4 1 43 2 5 3

29 Maximum Flow on a Path 5 1 2 2 2 4 1 43 2 5 3

30 The Shortest Route Problem The shortest route between two points l ij : The length of the directed arc ij. l ij is a parameter, not a decision variable. It could be the length in term of distance or in terms of time or cost ( the same as c ij ) For those nodes which we are sure that we go from i to j we only have one directed arc from i to j. For those node which we are not sure that we go from i to j or from j to i, we have two directed arcs, one from i to j, the other from j to i. We may have symmetric or asymmetric network. In a symmetric network l ij = l ji  ij In a asymmetric network this condition does not hold

31 Example 6 3 4 2 5 7 2 6 5 6 4 8 7 2 2 1 2 2 2

32 Decision Variables and Formulation x ij : The decision variable for the directed arc from node i to nod j. x ij = 1 if arc ij is on the shortest route x ij = 0 if arc ij is not on the shortest route  x ij -  x ji = 0  i  N \ O and D  x oj =1  x iD = 1 Min Z =  l ij x ij 6 3 4 2 5 7 2 6 5 6 4 8 7 2 2 1 2 2 2

33 Example 6 3 4 2 5 7 2 6 5 6 4 8 7 2 2 1 2 2 2 + x 13 + x 14 + x 12 = 1 - x 57 - x 67 = -1 + x 34 + x 35 - x 43 - x 13 = 0 + x 42 + x 43 + x 45 + x 46 - x 14 - x 24 - x 34 = 0 …. ….. Min Z = + 5x 12 + 4x 13 + 3x 14 + 2x 24 + 6x 26 + 2x 34 + 3x 35 + 2x 43 + 2x 42 + 5x 45 + 4x 46 + 3x 56 + 2x 57 + 3x 65 + 2x 67

34 The ShR Problem : Binary Decision Variables 8 3 4 5 7 10 4 3 5 6 4 5 3 2 2 1 2 6 9 11 6 2 4 3 4 6 6 O D 2 3 6 5 3 2 3 2 2 1 43 2 Find the shortest route of these two networks. But for red bi- directional edges you are not allowed to define two decision variables. Only one. Solve the small problem. Only using 5 variables

35 Do not worry about the length of the arcs, we do not need to write the objective functions. Note that we do not know whether we may go from node 2 to 3 or from 3 to 2. Now we want to formulate this problem as a shortest route. The ShR Problem : Binary Decision Variables 1 43 2

36 To formulate the problem as a shortest route, you probably want to define a pair of decision variables for arcs 2-3 and 3-2, and then for example write the constraint on node 2 as follows X 23 +X 24 = X 12 + X 32 But you are not allowed to define two variables for 2-3 and 3-2. You should formulated the problem only using the following variables X 23 is a binary variable corresponding to the NON-DIRECTED edge between nodes 2 and 3. It is equal to 1 if arc 2-3 or 3-2 is on the shortest route and it is 0 otherwise. The ShR Problem : Binary Decision Variables

37 As usual we can have the following variables X 12 X 13 X 24 X 34 each corresponding to a directed arc The solution of (X 12 = 1, X 23 = 1, X 34 = 1 all other variables are 0) means that the shortest route is 1-2-3-4. The solution of (X 13 = 1, X 32 = 1, X 24 = 1 all other variables are 0) ) means that the shortest route is 1-3-2-4. The solution of (X 13 = 1, X 34 = 1 all other variables are 0) ) means that the shortest route is 1-3-4. The ShR Problem : Smaller Number of Binary Variables

38 Now you should formulate the shortest route problem using defining only one variable for each edge. Your formulation should be general, not only for this example. How many variables do you need to formulate this problem? The ShR Problem : Smaller Number of Binary Variables

39 How Many Binary Variables for this ShR problem 8 3 4 5 7 10 4 3 5 6 4 5 3 2 2 1 26 9 11 6 2 4 3 4 6 6 O D 2 3 6 5 3 2 3 2 2

40 When are “non-integer” solutions okay?  Solution is naturally divisible  Solution represents a rate  Solution only for planning purposes When is rounding okay? Integer Programming

41  Rounded solution may not be feasible  Rounded solution may not be close to optimal  There can be many rounded solutions Example: Consider a problem with 30 variables that are non-integer in the LP solution. How many possible rounded solutions are there? The Challenge of Rounding

42 How Integer Programs are solved

43 Spreadsheet Solution to Example #1

44 Suppose the Washington State legislature is trying to decide on locations at which to base search-and-rescue teams. The teams are expensive, and hence they would like as few as possible. However, since response time is critical, they would like every county to either have a team located in that county, or in an adjacent county. Where should the teams be located? 1 2 3 4 7 6 9 10 11 12 8 5 13 14 15 16 17 18 19 20 21 22 23 25 24 26 27 28 2930 31 32 33 34 35 36 37 Counties 1. Clallum 2. Jefferson 3. Grays Harbor 4. Pacific 5. Wahkiakum 6. Kitsap 7. Mason 8. Thurston 9. Whatcom 10. Skagit 11. Snohomish 12. King 13. Pierce 14. Lewis 15. Cowlitz 16. Clark 17. Skamania 18. Okanogan 19. Chelan 20. Douglas 21. Kittitas 22. Grant 23. Yakima 24. Klickitat 25. Benton 26. Ferry 27. Stevens 28. Pend Oreille 29. Lincoln 30. Spokane 31. Adams 32. Whitman 33. Franklin 34. Walla Walla 35. Columbia 36. Garfield 37. Asotin Example #2 (Set Covering Problem)

45 Counties 1. Clallum 2. Jefferson 3. Grays Harbor 4. Pacific 5. Wahkiakum 6. Kitsap 7. Mason 8. Thurston 9. Whatcom 10. Skagit 11. Snohomish 12. King 13. Pierce 14. Lewis 15. Cowlitz 16. Clark 17. Skamania 18. Okanogan 19. Chelan 20. Douglas 21. Kittitas 22. Grant 23. Yakima 24. Klickitat 25. Benton 26. Ferry 27. Stevens 28. Pend Oreille 29. Lincoln 30. Spokane 31. Adams 32. Whitman 33. Franklin 34. Walla Walla 35. Columbia 36. Garfield 37. Asotin Spreadsheet Solution to Example #2

46

47 Spreadsheet Solution to Example #2 (Formulas)


Download ppt "Computationally speaking, we can partition problems into two categories. Easy Problems and Hard Problems We can say that easy problem ( or in some languages."

Similar presentations


Ads by Google