一般的整数规划模型的建立与求解.pptVIP

  • 39
  • 0
  • 约3.81千字
  • 约 24页
  • 2017-06-23 发布于天津
  • 举报
一般的整数规划模型的建立与求解

* 数学建模理论与实践 —— 基于整数规划的数学建模 * 基于整数规划的数学建模 一、一般的整数规划模型的建立与求解 二、0-1规划模型的建立与求解 三、指派模型的建立与求解 * 一、一般的整数规划模型的建立与求解 问题的提出: 一般的整数规划是指线性规划中的一类特殊的问题,其特点是决策变量只取整数。 建立整数规划模型如同建立一般线性规划模型一样,要确定决策变量、目标函数和约束条件。所不同的是,这里的可行解中各变量只取整数。如果只有两个决策变量,可行解只可能是平面上坐标是整数的点。因而在各决策变量有界的条件下,可行解只可能是有限多个。这个特点使我们有可能用一些特殊方法求解整数规划模型。 特别说明:对比整数规划问题,非整数规划问题的可行解通常构成平面上的一个多边形,可行解有无穷多个。 * 一、一般的整数规划模型的建立与求解 解下列整数规划模型: * 一、一般的整数规划模型的建立与求解 (一)模型解法之一:使用线性松弛模型 (二)模型解法之二:穷举法 (三)模型解法之三:割平面法 (四)模型解法之四:分支定界法 * 一、一般的整数规划模型的建立与求解 (一)模型解法之一:使用线性松弛模型 线性松弛模型的定义: 去掉整数规划中的整数要求后得到的非整数规划问题称为原整数规划的线性松弛模型。 注意,这里线性松弛模型的可行解的区域(多边形)包含了整数规划的可行解的集合(多边形内的整数点),因而线性松弛模型的解要优于整数规划的解。 * 一、一般的整数规划模型的建立与求解 整数规划模型: 松弛模型: 解为(2.5,2) X * 一、一般的整数规划模型的建立与求解 整数规划模型: 松弛模型: 解为(2.57,2.71) 解为(5,2) X 下面的一个反例,说明此路不通! * 一、一般的整数规划模型的建立与求解 (二)模型解法之二:穷举法 先忽略整数的限制,求解其松弛模型。自然要求松弛模型的可行解是一个有界区域;否则没办法进行穷举求解。 如同求解一般线性规划,先画出由诸不等式约束确定的多边形。但是这里的可行解由在该多边区域内的有限多个整数点构成。 * 一、一般的整数规划模型的建立与求解 * 一、一般的整数规划模型的建立与求解 整数规划的可行解应该含在松弛模型的可行解内部,并仅仅由在该多边区域内的有限多个整数点构成。 图中显示,共有12个可行解,依次代入目标函数,得到一系列函数值: 整数点 (0,0) (0,1) (0,2) (0,3) (1,0) (1,1) 目标函数值 0 4 8 12 6 10 整数点 (1,2) (2,0) (2,1) (2,2) (3,0) (3,1) 目标函数值 14 12 16 18 18 22 A、B两种机器分别购买3台和1台,产值最多增加22万元。 * 一、一般的整数规划模型的建立与求解 (三)模型解法之三:割平面法 割平面法的思想及过程:在整数规划对应的线性松弛模型中逐次增加一个新约束(即割平面),割去原可行域中一部分不含整数解的区域,逐次切割直至最终得到松弛问题可行域的一个最优解顶点为整数解为止。 特别说明:由线性规划的特点,最优解一定能在可行解区域的某个顶点达到。 新增约束必须满足的条件: (1) 不能割去满足条件的整数点; (2) 必须将前一次模型的最优解割去。 * 一、一般的整数规划模型的建立与求解 整数规划模型: 松弛模型: * 一、一般的整数规划模型的建立与求解 (四)模型解法之四:分支定界法 详细参见文件:分支定界法原理简介.pdf 分支定界法是一种广义搜索算法,人工使用非常繁琐,但由于计算机的运算速度快的特点,这种算法十分适合计算机进行。分支定界法是计算机最擅长的广义搜索穷举算法。 * 一、一般的整数规划模型的建立与求解 三种方法(穷举法、割平面法、分支定界法)小结与对照如下: 1、穷举法解整数规划问题的原理及算法:求出所有的可行解,代入目标函数比较求得最优解。 2、割平面法的思想及过程:在整数规划的线性松弛模型中逐次增加一个新约束(即割平面),割去原可行域中一部分不含整数点的区域。逐次切割直至最终所得线性松弛模型可行域的一个最优解顶点为整数解为止。 新增约束必须满足的条件: (1) 不能割去满足条件的整数点; (2) 必须将前一次松弛模型的最优解(非整数解)割去。 * 一、一般的整数规划模型的建立与求解 三种方法(穷举法、割平面法、分支定界法)小结与对照如下: 3、分支定界法的一般原理及基本步骤: 分支定界法思想就是不断降低上界,提高下界,最后使得上下界相等,即求得最优解。 基本步骤: ⑴ 寻找替代问题并求解(放宽或取

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档