Generic branch and price

Almost every branch and price is ad hoc, i.e., problem specific.Therefore, using a branch-(cut-)and-price algorithm usually comes along with a much higher implementational effort.

  • How can a solver ideally detect the structure of a problem, perform the decomposition|if promising|and solve the problem without further user interaction? Cplex 能做到哪种程度?

  • Generic branch and price 是干什么的?有什么作用?

    • provides possibility to solve a problem without any implementation and help researchers to test new ides.
    • it ideally incorporates sophisticated acceleration strategies and other expert knowledge that would be missing in a basic problem specific implementation and that can partially compensate the disadvantage due to the generic approach.

总的来说,提供了一个框架,并且总结了在框架中的每一个部分可以用的一些技术。这样让researchers 可以不用试探,先从理论的角度对比各种技巧的效果。
这个框架的商业应用:
develop 一个 solver,GCG。新的solver在原有的SCIP Solver 的基础上进行改进,然后做成一个支持branch and price 的求解器。

站在用户的角度,那么如何利用这个framework/框架呢?

因为在implement branch and price 的时候,用户需要提供的是pricing problem 和 branching strategy.首先使用这个框架,如果在默认设置的情况下,branch and price work on the specific problem, then researchers can further to replace generic functionalities by problem speci c ones to speed up the solving process.

framework forimplementing decomposition-based bounding algorithms for use in solving large-scale discrete optimization problems: COIN-OR, 2009.

下面,我们来看看一个BP框架到底是什么样的

一些术语
  • original problem(OP):其中 X k X_k Xk是每个 x k x_k xk单独的定义域,不包括connecting constraints(AX = B)

  • extended problem (EP): 用 x k = λ k t ∗ x k t x_k=\lambda_k^t*x_k^t xk=λktxkt 表示,换元后得到的model,其实在执行D-W分解的步骤。

    • linking/coupling constraints: x k = λ k t ∗ x k t x_k=\lambda_k^t*x_k^t xk=λktxkt 这一系列约束,其实是表达了整数约束在新的变量 λ k t \lambda_k^t λkt上.
  • master problem(MP) : master problem (MP) is a relaxation of the extended formulation. relax the intergraty on EP 后的model,D-W&relaxation之后的model.

  • restricted master problem(RMP): subset of the domain X k X_k Xk in [MP].

步骤
  • step1: preprocessing
    D-W decomposition and integrality relaxation.

  • step2: primal feasibility (一般是heuristic primal?)

  • node selection

  • domain propogation

  • new LP relaxation model to be solved to optimality

    • RMP + CG
    • if optimal is integer, then OP is solved
    • otherwise, go branching
  • branching, go to step3.

Decompostion

T. K. Ralphs and M. V. Galati. Decomposition and dynamic cut generation in integer linear programming. Mathematical Programming, 106(2):261-285, 2006.

D-W decomposition OP

  • compact formulation:
    简单的说,就是把变量都写成向量形式。比如,定义域写成集合X = {},然后每次提及定义域就只用说BIG X.

two approaches to conduct decomposition

1. convexification
2. discreterization

这两种方式的model方面有不同,主要体现在定义域上:方式2的定义域要求lamda为整数,x_k 的定义域也是离散的整数点。关于如何由X_k的整数约束推到出lamda的整数约束,详见文中证明。
但是两种model的LP relaxation 是一模一样的,定义域和objective function都是一样的

CG:

  • RMP : solve one RMP, then use CG to solve the pricing problem, until no colunms can be added, then it is solved to optimality. (pricing problem infeasible 说明什么?)

  • Then MP is solved to optimality until no cols can be added.

  • Why we need Farkas pricing?

  • How the branching results in infeasibility?

  • existing accelerating technique for pricing problem

  • existing branching strategies
    The combination used in an example work by 2013 TS.

Column generation

motivation for CG
对称的坏处:pivoting的时候,踢出去一个 x i x_i xi,可能再下次选进basic里的是另一个跟它对称的x, 这样对于原问题来说没有任何改进。
在这里插入图片描述

pricing problem

  • cutting stock 的 pricing problems are knapspack problems.
  • vertex coloring 的 pricing problems are maximum weighted independent set problems(最大独立集问题).

branching

  • branching on the original variables in the pricing problems
  • note the changes happened in the RMP. eg. a binary variable is set to 0, remember to remove all generated path containing that variable/arc. this could result in infeasible RMP.
    branch on the pricing problems
    在这里插入图片描述
    More branching rules can be found in the Ryan and Foster (1981) for a set partition MP.

The relationship between Lagrangian relaxation and CG

在这里插入图片描述

the lagrangian bound provides lower bound to the OP, so we care about the max L ( p i ) L(pi) L(pi).
Lr AND cg

  • to avoid long tail effect:
    monitor the gap between LB(lagarangian bound) and RMP, when the gap is less than, eg. 10% begin the branching.

  • the LB is easy to obtain. After solving each RMP, we have the values of dual variables, then use the expression in the last picture to monitor the value of LB. 在这里插入图片描述
    restricted master problem objective function value and the Lagrangian dual function, that they finally meet.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值