23
Branch and Cut Technique Discrete Optimization IME 960 Abhishek Singh

Branch and Cut Algorithm IME 960 Project

Embed Size (px)

Citation preview

Branch and Cut TechniqueDiscrete OptimizationIME 960Abhishek in!hBranch"and"cut methods# are e$act a%!orithms consistin! o& a combination o& a cuttin! p%ane method 'ith a branch"and"bound a%!orithm( These methods 'ork b) so%*in! a sequence o& %inear pro!rammin! re%a$ations o& the inte!er pro!rammin! prob%em( Cuttin! p%ane methods impro*e the re%a$ation o& the prob%em to more c%ose%) appro$imate the inte!er pro!rammin! prob%em( Branch"and"bounda%!orithms proceed b) a sophisticated di*ide and conquer approach to so%*e prob%ems(Introduction Branch + Cut a%!orithms modi&) the basic Branch + Bound strate!) b) attemptin! to stren!then the %inear pro!rammin! re%a$ation,-./0 o& an I. 'ith ne' inequa%ities be&ore branchin! a partia% so%ution( Basica%%)# Branch + Cut 1 Branch + Bound 2 Cuttin! .%anes .ure Branch + Bound can be considerab%) sped up b) emp%o)in! cuttin! p%anes either at the top o& a Branch + Bound tree or at e*er) node o& the tree# because cuttin! p%anes considerab%) reduce the size o& the tree( Branch + Cut can be used in con3unction 'ith heuristics to obtain a %o'er bound on the optima% *a%ue# usin! the Branch + Bound a%!orithmConcept o& Branch and Cut Branch"and"cut methods ha*e a%so been used to so%*e other combinatoria% optimization prob%ems# a!ain throu!h the e$p%oitation o& stron! cuttin! p%anes arisin! &rom po%)hedra% theor)( .rob%ems attacked recent%) 'ith cuttin! p%ane or branch"and"cut methods inc%ude4 The %inear orderin! prob%em Ma$imum cut prob%ems chedu%in! prob%ems 5et'ork desi!n prob%ems .ackin! prob%ems etc( A pure branch"and bound approach can be sped up considerab%) b) the emp%o)ment o& a cuttin! p%ane scheme# either 3ust at the top o& the tree# or at e*er) node o& the tree because the cuttin! p%anes %ead to a considerab%e reduction in the size o& the tree(T)pes o& .rob%ems o%*ed6e re!ard the mi$ed inte!er %inear pro!rammin! prob%em 6here $ and c are n"*ectors b is an m"*ector A is an m 7 n matri$( The 8rst p *ariab%es are restricted to be inte!er# and the remainder ma) be &ractiona%(A%!orithm Branch and Cut - is the set o& acti*e nodes in the branch"and"cut tree( The *a%ue o& the best kno'n &easib%e point &or ,I-.0is 9z# 'hich pro*ides an upper bound on the optima% *a%ue o& ,I-.0 z% is a %o'er bound on the optima% *a%ue o& the current sub prob%em under consideration( The *a%ue o& the -. re%a$ation o& the sub prob%em can be used to update z%A%!orithm Branch and CutInitia% so%ution to re%a$ation4 I& the a%!orithm sp%its on $:# t'o ne' prob%ems are obtainedE$amp%e to i%%ustrate Branch and Cut a%!orithm;eneratin! Cuttin! .%ane Cha*ata%";omor) Take a 'ei!hted combination o& the inequa%ities &rom the current -./ E$p%oit the &act that *ariab%es must be inte!ra%# process kno'n as inte!er roundin! Cuttin! p%anes !enerated in this 'a) are ca%%ed Ch*ata%";omor)cuttin! p%anes( E$amp%e4 The 8rst step is to take a 'ei!hted combination o& the inequa%ities( :?::0 2 @,"$:2 >$> ?@0 !i*es:$:2 $> ?= :: -A o& the inequa%it) is rounded do'n# 'hich !i*es $> ?= :: In an) &easib%e so%ution to an I.# the -A must take an inte!er *a%ue# so the /A is rounded do'n( Bina%%) 'e ha*e the *a%id inequa%it) 4 $> ?=;eneratin! Cuttin! .%ane;omor) ori!ina%%) deri*ed constraints o& this &orm direct%) &rom the optima% simp%e$ tab%eau( ;omor) ori!ina%%) deri*ed constraints o& this &orm direct%) &rom the optima% simp%e$ tab%eau(ince $: and $> are constrained to be inte!er# it &o%%o's that z# $=# and $C must a%so a%% be inte!er(Bor each ro'# the &ractiona% parts o& the %e&t hand side and the ri!ht hand side must be equa%(Thus# the ob3ecti*e &unction ro' o& this tab%eau indicates that the constraint(This constraint can be added to the tab%eau and the modi8ed re%a$ation so%*ed usin! the dua% simp%e$ method( The constraint can be 'ritten in terms o& the ori!ina% *ariab%es4Cuttin! .%ane The constraints added b) the cuttin! p%ane must be a *a%id inequa%it)( 6hich means4 It is satis8ed b) e*er) inte!ra% point that is &easib%e in the sub prob%em This inequa%it) is *io%ated b) the optima% so%ution o& the sub prob%em(6hen the inequa%it) !enerated satis8es the abo*e condition then it is a cuttin! p%ane(E$amp%e to i%%ustrate Branch and Cut a%!orithm cont(E$amp%e to i%%ustrate Branch and Cut a%!orithm cont(Impro*in! the per&ormance o& a branch"and"cut code( Dsin! reduced costs to e%iminate *ariab%es( 6orkin! 'ith a subset o& the *ariab%es and then addin! in the omitted *ariab%es %ater i& necessar)( Dsin! prima% heuristics to !enerate !ood so%utions so that nodes can be pruned b) bounds( .reprocessin! the prob%em ,simp%i&) prob%em0 Maintainin! an appropriate ba%ance bet'een cuttin! and branchin! tren!thenin! cuts throu!h %i&tin! Man) re8nements to the basic a%!orithm are necessar) to !et the best possib%e per&ormance out o& a branch"and"cut code( These inc%ude4O-EI5; A T/DCF DI.ATCAI5; CAEDD-I5; ./OB-EMDI5; B/A5CA"A5D"CDT /OBE/T E( BIGBH This paper presents a branch"and"cut a%!orithm &or a structured 0