数模整数规划实例
2017-08-06 21:48
267 查看
非线性规划习题
之前的非线性规划的练习题
题目
1.
2.
3.
解答
这里利用
并且利用
和之前的约束条件形成一个3个变量的线性的0-1规划问题
这是一个线性的0-1规划问题
设置备选校址对应的为:
对应着8个居民小区会有这8个不同条件的约束
如第一个:
以此类推可以得出:
这里就是一个24个不同变量分配的问题,典型的机器-工人分配问题,直接用相关算法即可;
其中
之前的非线性规划的练习题
题目
1.
2.
3.
解答
这里利用
y = x1*x2可以去进行替换
并且利用
x的取值的特性可以得到新的条件:
x1 + x2 - 1 <= y <= x1 x1 + x2 - 1 <= y <= x2 y = 0 或 1
和之前的约束条件形成一个3个变量的线性的0-1规划问题
这是一个线性的0-1规划问题
设置备选校址对应的为:
x1,x2,x3,x4,x5,x6
对应着8个居民小区会有这8个不同条件的约束
如第一个:
x1 + x2 + x3 >= 1
以此类推可以得出:
f = [1,1,1,1,1,1]; Aeq = [-1 -1 -1 0 0 0; 0 -1 0 -1 0 0;0 0 -1 0 -1 0; 0 0 0 -1 0 0; -1 -1 -1 0 0 0;0 0 0 0 -1 -1;-1 0 0 0 0 0;0 -1 0 -1 0 -1]; beq = [-1;-1;-1;-1;-1;-1;-1;-1]; [x,y] = intlinprog(f,ones(6,1),Aeq,beq,[],[],zeros(6,1)); y
x = 1 0 0 1 1
这里就是一个24个不同变量分配的问题,典型的机器-工人分配问题,直接用相关算法即可;
其中
link集合中
x表示所求企业分配,
c表示分配利润
@for为约束条件
model: sets: machine/1..6/; company/1..4/; link(machine,company):c,x; endsets data: c = 4 2 3 4 6 4 5 5 7 6 7 6 7 8 8 6 7 9 8 6 7 10 8 6; enddata max = @sum(link:c*x); @for(company(j):@sum(machine(i):x(i,j)) >= 1); @for(machine(i):@sum(company(j):x(i,j)) = 1); @for(link:@bin(x)); end
相关文章推荐
- js验证整数加保留小数点的简单实例
- 动态规划实例(七):01背包问题最大价值
- 安全测试之整数溢出的一个实例
- 郑轻OJ 1090: 整数幂(多实例测试)
- 动态规划实现:给定整数m , 取若干个1到n的整数可求和等于整数m,编程求出所有组合的个数。
- JavaScript正则表达式校验非零的正整数实例
- 动态规划实例
- C++实现矩阵链乘法利用动态规划及运行实例结果
- python列表解析实例(整数操作、字符操作、矩阵操作)
- 城市景观生态规划的实例(三个实例)
- 关于误差,想到一个 整数规划问题
- 三、实例制作剖析 实例网站结构规划
- 轻院 1090 整数幂(多实例测试)
- 结合企业实例谈IT规划过程
- 数学建模中的整数规划总结及姜启源第4章(1-3)的解析
- Python解决两个整数相除只得到整数部分的实例
- 整数转换成字符型的两种方法c++代码实例及运行结果
- C++实现矩阵链乘法利用动态规划及运行实例结果
- Python字符串、整数、和浮点型数相互转换实例
- 整数的划分—动态规划