整数规划问题

题目描述

某连锁超市经营企业为了扩大规模,新租用五个门店,经过装修后再营业。现有四家装饰公司分别对这五个门店的装修费用进行报价,具体数据如表2.2所示。为保证装修质量,规定每个装修公司最多承担两个门店的装修任务。则为节省装修费用,该企业该如何分配装修任务?   表2.2  装修费用表(单位:万元)

代码

1)模型假设:指派问题(每个门店的装修工作只能由一个装修公司单独完成)

2)符号说明

设 i=1,2,3 ,4分别表示 A、 B、C、D四家装修公司,c i j 表示

第i( i = 1 , 2 , 3 , 4 )  家装修公司对第 j ( j = 1 , 2 , 3 , 4 , 5 ) 个门店的装修任务的报价。引入0-1变量

3)模型建立:该问题的目标函数为总的装修费用最小,即

4)约束条件:

1、每个门店得装修任务必须有一个而且只能有一个装修公司承担,即

2 、每个装修公司最多承担两个门店的装修任务,即

则该问题的 0-1 整数规划模型为:

5)代码:

c = load("data2_6.txt");

prob = optimproblem;

x = optimvar('x', 4, 5, 'Type', 'integer','LowerBound', 0, 'UpperBound', 1);

prob.Objective = sum(sum(c.* x));  % 目标函数

prob.Constraints.con1 = sum(x,1) == 1;

prob.Constraints.con2 = sum(x,2) <= 2;

[sol, fval, flag] = solve(prob);

sol.x

Fval

代码运行窗口如图

我的总结

1.从决策变量的取值范围来看,整数规划通常可以分为以下几种类型:
(1)纯整数规划:全部决策变量都必须取整数值的整数规划模型;
(2)混合整数规划:决策变量中有一部分必须取整数值,另--部分可以不取整数值的整数规划模型;
(3)0-1 整数规划:决策变量只能取0或1的整数规
划。

2.蒙特卡洛方法

也称为计算机随机模拟方法,它源于世界著名的赌城一摩纳哥的 Monte Carlo (蒙特卡洛)。它是基于对大量事件的统计结果来实现一些确定性问题的计算。使用蒙特卡洛方法必须使用计算机生成相关分布的随机数,MATLAB给出了生成各种随机数的命令

3.非线性整数规划求解思想

搜索 (穷举)问题

规模小一整数解是有限个,于是为枚举法提
供了方便。
自变量维数很大和取值范围很宽一-在一定计算量的情况下,用蒙特卡洛法完全可以得出一个满意解。
神经网络
现代优化算法
(1)遗传算法
(2)模拟退火算法
(3)粒子群算法 (蚁群、鱼群、鸟群)

4.估计可信度
不失一般性,假定一个整数规划的最优点不是孤立的奇点。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值