数学建模组合优化实验

发布 2023-05-17 21:31:28 阅读 2552

第四章组合优化实验。

第一题:最短路问题的应用-设备更新问题。解:解:

用五个点(1,2,3,4,5)代表各年的开始,各点之间的连线表示从边左端点到右端点结束所花费的费用,用cij表示从第i年开始到第j-1年结束所花费的费用。

model:

sets:nodes/1..5/;

arcs(nodes, nodes)|&1 #lt# &2: c, x;

endsets

data:c = 0.8, 1.7, 2.8, 4.2, 0.9, 1.8, 2.9, 1.1, 2, 1.4;

enddata

n = size(nodes);

min = sum(arcs: c * x);

@for(nodes(i)| i #ne##and# i #ne# n:

@sum(arcs(i,j): x(i,j)) sum(arcs(j,i): x(j,i)))

@sum(arcs(i,j)| i #eq# 1 : x(i,j)) 1;

end结果:

global optimal solution found.

objective value3.700000

total solver iterations0

variablevalue reduced cost

x( 1, 2) 1.0000000.000000

x( 2, 5) 1.0000000.000000

从以上运行结果可知,该设备应该从第一年初**,第一年末卖出,第二年初**,第四年末卖出总费用最小,总费用为3.7万元。

第二题:生产计划与库存管理。

四个季度的生产量为: 14 15 15 8

a生产量。b表示订货量。

c表示成本。

x为结果。global optimal solution found.

objective value292.0000

total solver iterations4

variablevalue reduced cost

a( 1) 14.000000.000000

a( 2) 15.000000.000000

a( 3) 15.000000.000000

a( 4) 13.000000.000000

b( 1) 10.000000.000000

b( 2) 14.000000.000000

b( 3) 20.000000.000000

b( 4) 8.0000000.000000

c( 1, 1) 5.0000000.000000

c( 1, 2) 6.0000000.000000

c( 1, 3) 7.0000000.000000

c( 1, 4) 8.0000000.000000

c( 2, 2) 5.0000000.000000

c( 2, 3) 6.0000000.000000

c( 2, 4) 7.0000000.000000

c( 3, 3) 6.0000000.000000

c( 3, 4) 7.0000000.000000

c( 4, 4) 6.0000000.000000

x( 1, 1) 10.000000.000000

x( 1, 2) 4.0000000.000000

x( 1, 3) 0.0000000.000000

x( 1, 4) 0.0000002.000000

x( 2, 2) 10.000000.000000

x( 2, 3) 5.0000000.000000

x( 2, 4) 0.0000002.000000

x( 3, 3) 15.000000.000000

x( 3, 4) 0.0000002.000000

x( 4, 4) 8.0000000.000000

row slack or surplus dual price

obj 292.00001.000000

sup( 1) 0.0000000.000000

sup( 2) 0.0000001.000000

sup( 3) 0.0000001.000000

sup( 4) 5.0000000.000000

dem( 1) 0.0000005.000000

dem( 2) 0.0000006.000000

dem( 3) 0.0000007.000000

dem( 4) 0.0000006.000000

第三题:指派问题。

依据题目时间表可知:

lingosets

person/jia,yi,bing,ding/;

task/a,b,c,d,e/;

assign(task,person):t,x;

endsets

data:t=25 29 31 42 37

endata

obj]min@sum(assign:t*x);

for(task(i):[p]

@sum(person(j):x(i,j))=1);

for(person(j):[s]

@sum(task(i):x(i,j))<2);

for(person(j):[k]

@sum(task(i):x(i,j))>1):

运行结果如下:

由以上运行结果可知,乙完成a任务,丁完成b任务,甲完成c任务,丁完成d任务,丙完成e任务,完成时间最少,时间为了122。

数学建模优化实验课件

用matlab优化工具包求解无约束非线性规划时必须先化为如下形式 min f x nlp 求解程序名为fminunc,其最简单的调用格式为 x fminuncn fun x0 其最复杂的调用格式为 x,fval,exitflag,output,grad,hessian fminunc f,x0,op...

数学建模优化类型题

某厂生产的某种产品有甲 乙两个型号,假设该工厂的产品都能售出,并等于市场上的销量。工厂的利润既取决于销量和 单件 也依赖于产量和 单件 成本,按照市场经济规律,甲的 会随其销量的增长而降低,同时乙的销量的增长也会使甲的 有一定的下降 乙的 遵循同样的规律。而甲 乙的成本都随其各自产量的增长而降低,且...

数学建模实验

实用数学建模与软件应用实验报告。学院名称 理学院专业年级 信计142班姓名 高梓涵学号 2014014515 课程 实用数学建模与软件应用报告日期 2016.11.9 问题重述 设某团体有n个单位,每个单位有人数a,总席位为s 现有席位p个待分配。问 各单位分配多少个席位是公平的?这就是席位公平分配...