Python之建模规划篇

您所在的位置:网站首页 整数规划隐枚举法 Python之建模规划篇

Python之建模规划篇

2024-07-12 19:50| 来源: 网络整理| 查看: 265

Python之建模规划篇--整数规划 基本介绍整数规划的分类整数规划的特点求解方法分类0 - 1 型整数规划蒙特卡洛法 (随机取样法)整数线性规划的计算机求解分枝定界法Python 实现 (分支定界代码)

基本介绍

规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型中,变量限制为整数,则称为整数线性规划。目前所流行的求解整数规划的方法,往往只适用于整数线性规划。目前还没有一种方法能有效地求解一切整数规划。

整数规划的分类

如不加特殊说明,一般指整数线性规划。对于整数线性规划模型大致可分为两类:

变量全限制为整数时,称纯(完全)整数规划。变量部分限制为整数的,称混合整数规划。 整数规划的特点 原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况: ①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。 ②整数规划无可行解 在这里插入图片描述整数规划最优解不能按照实数最优解简单取整而获得。 求解方法分类 分枝定界法—可求纯或混合整数线性规划。割平面法—可求纯或混合整数线性规划。隐枚举法—求解“0-1”整数规划: ①过滤隐枚举法; ②分枝隐枚举法。匈牙利法—解决指派问题(“0-1”规划特殊情形)。蒙特卡洛法—求解各种类型规划。 0 - 1 型整数规划

0 −1型整数规划是整数规划中的特殊情形,它的变量 xj 仅取值0或1。这时xj 称为0−1变量,或称二进制变量。xj 仅取值0 或1 这个条件可由下述约束条件: 在这里插入图片描述 所代替,是和一般整数规划的约束条件形式一致的。在实际问题中,如果引入 0 −1变量,就可以把有各种情况需要分别讨论的线性规划问题统一在一个问题中讨论了。我们先介绍引入0 −1变量的实际问题,再研究解法。 比如有一些相互排斥的约束条件,就是一种0-1问题,如运输方式只能选择一种,用车或者用船等类似的 除此之外,还有关于固定费用的问题,在讨论线性规划时,有些问题是要求使成本为最小。那时总设固定成本为常数,并在线性规划的模型中不必明显列出。但有些固定费用(固定成本)的问题不能用一般线性规划来描述,但可改变为混合整数规划来解决

蒙特卡洛法 (随机取样法)

蒙特卡洛方法也称为计算机随机模拟方法,它源于世界著名的赌城一摩纳哥的Monte Carlo(蒙特卡洛)。它是基于对大量事件的统计结果来实现–些确定性问题的计算。使用蒙特卡洛方法必须使用计算机生成相关分布的随机数,Matlab和python等各种编程语言都给出了生成各种随机数的命令。 如,给个例子 在这里插入图片描述 前面介绍的常用的整数规划求解方法,主要是针对线性整数规划而言,而对于非线性整数规划目前尚未有一种成熟而准确的求解方法,因为非线性规划本身的通用有效解法尚未找到,更何况是非线性整数规划。 然而,尽管整数规划由于限制变量为整数而增加了难度;然而又由于整数解是有限个,于是为枚举法提供了方便。当然,当自变量维数很大和取值范围很宽情况下,企图用显枚举法(即穷举法)计算出最优值是不现实的,但是应用概率理论可以证明,在一定的计算量的情况下,完全可以得出一个满意解。 如 在这里插入图片描述 如果用显枚举法试探,共需计算(100)5 = 1010个点,其计算量非常之大。然而应用蒙特卡洛去随机计算106个点,便可找到满意解,那么这种方法的可信度究竟怎样 呢? 下面就分析随机取样采集106个点计算时,应用概率理论来估计一下可信度。 不失一般性,假定一个整数规划的最优点不是孤立的奇点。 假设目标函数落在高值区的概率分别为 0.01,0.00001,则当计算106个点后,有 任一个点能落在高值区的概率分别为 在这里插入图片描述 首先编写M 文件mente.m 定义目标函数f 和约束向量函数g,程序如下:

function [f,g]=mengte(x); f=x(1)^2+x(2)^2+3*x(3)^2+4*x(4)^2+2*x(5)-8*x(1)-2*x(2)-3*x(3)-... x(4)-2*x(5); g=[sum(x)-400 x(1)+2*x(2)+2*x(3)+x(4)+6*x(5)-800 2*x(1)+x(2)+6*x(3)-200 x(3)+x(4)+5*x(5)-200]

编写M文件mainint.m如下求问题的解

rand('state',sum(clock)); %初始化随机数发生器 p0=0; tic %计时开始 for i=1:10^6 x=randi([0,99],1,5); %产生一行五列的区间[0,99]上的随机整数 [f,g]=mengte(x); if all(g


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3