Download presentation
Presentation is loading. Please wait.
1
1.3 Modeling with exponentially many constr.
Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting plane method is used to solve the LP relaxations of them) The minimum spanning tree problem πΊ=(π,πΈ) undirected graph ( π =π, πΈ =π). Every edge πβπΈ has cost π π . Find a spanning tree (acyclic connected subgraph of πΊ) of minimum cost. Let πβπ, define πΈ π = π,π βπΈ:π,πβπ , πΏ π ={ π,π βπΈ: one end node of π,π is in π} (cut defined by π) Integer Programming 2017
2
Subtour elimination formulation min πβπΈ π π π₯ π (πβ1 edges, no cycle)
πβπΈ π₯ π =πβ1, πβπΈ(π) π₯ π β€ π β1, πβπ, πβ β
, π, π₯ π β 0,1 Cutset formulation min πβπΈ π π π₯ π (πβ1 edges, connected) πβπΏ(π) π₯ π β₯1, πβπ, πβ β
, π, Thm 1.1 : (a) π π π’π β π ππ’π‘ , and there exist examples for which the inclusion is strict. (b) π ππ’π‘ can have fractional extreme points. Integer Programming 2017
3
It can be shown that LP relaxation of subtour elimination formulation gives integer optimal solutions. (polymatroid) Why consider IP formulation although there exist good algorithms (e.g., Kruskal, Prim)? Algorithms may fail if problem structure changed a little bit: degree constrained spanning tree problem, Shortest total path length spanning tree problem, Steiner tree problem, capacitated spanning tree problem, β¦ Formulation of a basic problem may be used as part of a formulation for a larger complicated problem. Theoretical analysis, e.g. strength of 1-tree relaxation of TSP. Integer Programming 2017
4
The traveling salesman problem
πΊ=(π,πΈ) undirected graph. Every edge πβπΈ has cost π π . Find a tour (a cycle that visits all nodes exactly once) of minimum cost. Cutset formulation minimize πβπΈ π π π₯ π subject to πβπΏ( π ) π₯ π =2, πβπ πβπΏ(π) π₯ π β₯2, πβπ, πβ β
, π, π₯ π β 0,1 . Subtour elimination formulation πβπΈ(π) π₯ π β€ π β1, πβπ, πβ β
, π, LP relaxations of both formulations give the same solution set. Integer Programming 2017
5
Remarks For directed version of the problem, the following formulation is possible, which is smaller in size. But it is a bad formulation. (refer exercise 1.21 in text page 32) π’ π β π’ π +π π¦ ππ β€πβ1, π,π βπ΄, π,πβ 1, π:(π,π)βπ΄ π¦ ππ =1, πβπ π:(π,π)βπ΄ π¦ ππ =1, πβπ π¦ ππ β 0,1 , π,πβπ Note that, π’ π β²π are continuous variables in the above formulation. Undirected TSP is a special case of directed case, we may replace each edge by two directed arcs with opposite direction and having the same costs as the edge. Integer Programming 2017
6
Is the formulation correct?
The formulation has π’,π¦ variables. If ( π’ β , π¦ β ) feasible, we only read π¦ β values ( projection of ( π’ β , π¦ β ) to π¦ space) We need to show that (1) any tour solution π¦ β satisfies the constraints and (2) any non-tour solution does not satisfy the constraints. (1) For any tour π¦ β , if node π is πβth node in the tour, assign π’ π =π. (2) If π¦ β is 0,1 and satisfies degree constraints, it is either a tour or consists of subtours. If subtours exist, there is one that does not include node 1. Add the constraints π’ π β π’ π +π π¦ ππ β€πβ1 along the arcs in the subtour. Integer Programming 2017
7
Comparing the LP relaxation of the cutset formulation (A) (in directed case version) and the LP relaxation of the previous formulation (B): It can be shown that the projection of the polyhedron B onto y space gives a polyhedron which completely contains A (the inclusion can be strict), hence cutset formulation (or subtour elimination formulation) is stronger. Although the previous formulation is not strong, it can be an alternative to use if you only have a generic IP software to use, not the sophisticated one to handle the cutset constraints. Integer Programming 2017
8
How to Solve the LP relaxation of the Cut-Set Formulation? (many constr.)
Solve LP relaxation (w/o cut-set constraints) If y* tour, stop. O/w find violated cut-set Solve LP after adding the Cut-set constraint. ο€ violated cut-set? Y N Stop Integer Programming 2017
9
Branch-and-cut approach ( cutting plane alg.)
If the obtained solution is not a tour, branch and apply the same procedure again. Choose the best solution Branching : If π¦ ππ β β 0,1, solve two subproblems after setting π¦ ππ =0, and π¦ ππ =1. Branch-and-cut approach ( cutting plane alg.) Ideas for TSP formulation can be used for various routing, sequencing problems. Branch-and-cut Ideas useful to solve many difficult IP problems. What can we do for the LP with many variables? For the LP with many vars. and constraints? TSP site: Integer Programming 2017
10
The perfect matching problem
Match π persons into pairs perfectly. Cost π π , π={π,π}, if person π is matched with person π. Construct graph πΊ=(π,πΈ) with edge cost π π ,π={π,π} for all πβπΈ. If {π,π}βπΈ, π and π cannot be matched. minimize πβπΈ π π π₯ π subject to πβπΏ( π ) π₯ π =1, πβπ π₯ π β 0,1 . π ππππππ β ππππ£(πΉ) (see Fig 1.7) Add πβπΏ(π) π₯ π β₯1, πβπ, πβ π, π odd or πβπΈ(π) π₯ π β€( π β1)/2, πβπ, πβ π, π odd Both have π πππ‘πβπππ =ππππ£(πΉ). Integer Programming 2017
11
Cut covering problems General problem class that includes many problems on networks and graphs πΊ= π,πΈ , π =π, undirected graph π: 2 π β π + , π·βπ, costs π π β₯0 for πβπΈ Cut covering problems minimize πβπΈ π π π₯ π subject to πβπΏ( π ) π₯ π =π π , πβπ·βπ, πβπΏ(π) π₯ π β₯π π , πβπ, π₯ π β 0,1 for all πβπΈ. There exists an optimal solution which is minimal w.r.t. inclusion. ( π π β₯0 ) Integer Programming 2017
12
subject to πβπΏ( π ) π₯ π =π π , πβπ·βπ, πβπΏ(π) π₯ π β₯π π , πβπ,
minimize πβπΈ π π π₯ π subject to πβπΏ( π ) π₯ π =π π , πβπ·βπ, πβπΏ(π) π₯ π β₯π π , πβπ, π₯ π β 0,1 . The minimum spanning tree π·=β
, π π =1, for all πβ β
, π The traveling salesman problem π·=π, π π =2, for all πβ β
, π The perfect matching problem π·=π, π π =1, for all πβ β
, π with π odd The Steiner tree problem πβπ needs to be connected by a tree possibly using nodes in πβπ. π·=β
, π π =1, for all π with πβ©πβ β
, π =0, otherwise Integer Programming 2017
13
The survivable network design problem Costs π π , for all πβπΈ,
requirements π ππ for every pair of nodes π,πβπ Select a set of edges from πΈ at minimum cost, so that between every pair of nodes π and π there are at least π ππ paths that do not share any edges ( π ππ edge-disjoint paths) π·=β
, π π = max πβπ, πβπβπ π ππ , πβ β
, π The vehicle routing problem Integer Programming 2017
14
Dircted vs. undirected formulations
Steiner tree problem minimize πβπΈ π π π₯ π subject to πβπΏ(π) π₯ π β₯1, β πβπ, πβ©πβ β
, π, (1.8) π₯ π β 0,1 . (a) π π β©πβ β
, π=1,β¦,π. (b) π π β© π π =β
, π,π=1,β¦,π, πβ π. (c) π=1 π π π =π Let πΏ( π 1 ,β¦, π π ) be the set of edges, whose endpoints lie in different π π . minimize πβπΈ π π π₯ π subject to πβπΏ( π 1 ,β¦, π π ) π₯ π β₯πβ1, ( π 1 ,β¦, π π ) satisfying (a)-(c) π₯ π β 0, (1.9) Integer Programming 2017
15
( π,π βπΈ β π‘π€π ππππ π,π , (π,π)βπ΄, π ππ = π ππ β₯0)
Directed version πΊ= π,πΈ β πΊ=(π,π΄) ( π,π βπΈ β π‘π€π ππππ π,π , (π,π)βπ΄, π ππ = π ππ β₯0) Find a minimum cost directed subtree that contains a directed path between some given root vertex 1 (1βπ), and every other terminal in π. minimize (π,π)βπ΄ π ππ π¦ ππ subject to (π,π)β πΏ + (π) π¦ ππ β₯1, β πβπ, 1βπ, πβπβ β
, (1.10) π¦ ππ + π¦ ππ β€1, π= π,π βπΈ, π¦ ππ β{0,1}. can recover π₯ by setting π₯ π = π¦ ππ + π¦ ππ , for all π= π,π βπΈ, π π π‘πππππ (π)β€ π ππππ‘ππ‘πππ (π)β€ ππ· π π‘πππππ (π) (for linear relaxations) Integer Programming 2017
16
Assume that the root vertex 1β π 1 , and consider
(1.8) is a special case of (1.9) with π=2. βΉ π π π‘πππππ (π)β€ π ππππ‘ππ‘πππ (π) Assume that the root vertex 1β π 1 , and consider (π,π)β πΏ + (πβ π π ) π¦ ππ β₯1, π=2,β¦,π. Add above together with π¦ ππ β₯0 for πβ π π , π=2,β¦,π and πβ π 1 ,(π,π)βπΈ βΉ πβπΏ( π 1 ,β¦, π π ) ( π¦ ππ + π¦ ππ ) β₯πβ1. setting π₯ π = π¦ ππ + π¦ ππ , we get feasible π₯ for the linear relaxation of (1.9) βΉ π ππππ‘ππ‘πππ (π)β€ ππ· π π‘πππππ (π) There are examples such that π π π‘πππππ π < ππ· π π‘πππππ (π) For TSP, directed formulation has the same strength Integer Programming 2017
17
1.4 Modeling with exponentially many variables
Column generation method Enumerate partial feasible solutions and represent their interactions in the master model. (Decomposition) Important modeling tool in applications The cutting stock problem Large rolls of paper of width π (raw). Customer demand π π rolls of width π€ π (final), π=1,β¦,π. ( π€ π β€π) Minimize the number of large rolls used while satisfying customer demand. Cutting pattern π, π 1π ,β¦, π ππ : produce π ππ rolls of width π€ π in πβth cutting pattern (number of possible cutting patterns can be enormous) A feasible cutting pattern π must satisfy π=1 π π ππ π€ π β€π and π ππ is nonnegative integer. (integer knapsack constraint) Integer Programming 2017
18
subject to π=1 π π ππ π₯ π = π π , π=1,β¦,π, π₯ π β π + , π=1,β¦,π.
Formulation minimize π=1 π π₯ π subject to π=1 π π ππ π₯ π = π π , π=1,β¦,π, π₯ π β π + , π=1,β¦,π. π₯ π is the number of rolls of width π (raw) cut by cutting pattern π. LP relaxation can be solved by column generation. Fractional optimal solution may be rounded down and a few more raws may be used to produce additional finals. (close to optimal) Integer Programming 2017
19
Combinatorial auctions
π: set of bidders, π: set of items being auctioned π π (π) : bid that bidder π is willing to pay for πβπ Assume that if πβπ=β
, π π π + π π (π)β€ π π (πβͺπ) Bidders are allowed to bid on combinations of different items. Let π π = max πβπ π π (π) maximize πβπ π(π) π₯ π subject to π:πβπ π₯ π β€1, πβπ, π₯ π β 0,1 , πβπ Integer Programming 2017
20
The vehicle routing problem
transportation network: πΊ= π,πΈ , undirected, cost π π , πβπΈ. Node 0 is central depot. Node πβπ represents customers with demand π π . Company has π vehicles with capacities π π , π=1,β¦,π Assume demand of each customer cannot be divided into several vehicles. Let π₯ π =1 if partial tour π is used, and zero, otherwise (π=1,β¦,π) π ππ : equals one if node π is visited in partial solution π. π π : cost of tour π minimize π β² π₯ subject to π΄π₯=π π₯β 0,1 π . (may have additional constraint, π₯ π β€π ) Integer Programming 2017
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.