测品娱乐
您的当前位置:首页全国大学生数学建模竞赛题目A题

全国大学生数学建模竞赛题目A题

来源:测品娱乐
1997年全国大学生数学建模竞赛题目

A题 零件的参数设计

一件产品由若干零件组装而成,标志产品性能的某个参数取决于这些零件的参数。零件参数包括标定值和容差两部分。进行成批生产时,标定值表示一批零件该参数的平均值,容差则给出了参数偏离其标定值的容许范围。若将零件参数视为随机变量,则标定值代表期望值,在生产部门无特殊要求时,容差通常规定为均方差的3 倍。 进行零件参数设计,就是要确定其标定值和容差。这时要考虑两方面因素:一是当各零件组装成产品时,如果产品参数偏离预先设定的目标值,就会造成质量损失,偏离越大,损失越大;二是零件容差的大小决定了其制造成本,容差设计得越小,成本越高。试通过如下的具体问题给出一般的零件参数设计方法。

粒子分离器某参数(记作y)由七个零件的参数(记作(x1,x2,x3,x4,x5,x6,x7))决定,经验公式为:

y174.42xx1(3)0.85x5x2x1x40.563x12.62[10.36()]2(4)1.16x2x2

x6x7(记作y0)为1.50。当y偏离y00.1时,产品为次品,质量损失为1000(元);y的目标值

当y偏离y00.3时,产品为废品,质量损失为9000(元);

零件参数的标定值有一定的容许变化范围;容差分为A、B、C三个等级,用与标定值的相对值表示,A等为1%,B等为5%,C等为10%.七个零件的参数标定值的容许范围,及不同容差等级的成本(元)如下表(符号/表示五此等级零件):

标定值容许范围 [0.075,0.125] [0.225,0.375] [0.075,0.125] [0.075,0.125] [1.125,1.875] C等 / 20 20 50 50 B等 25 50 50 100 / A等 / / 200 500 / x1 x2 x3 x4 x5 x6 x7 [12,20] [0.5625,0.935] 10 / 25 25 100 100 x20.3,现进行成批生产,每批产量1000个。在原设计中,七个零件参数标定值为x10.1,x30.1,x40.1,x51.5,x616,x70.75;容差均取最便宜的等级。

请你综合考虑y偏离y0造成的损失和零件成本,重新设计零件参数(包括标定值和容差),并与原设计比较,总费用降低了多少?

B题 截断切割

某些工业部门(如贵重石材加工等)采用截断切割的加工方式。这 里“截断切割”是指将物体沿某个切割平面分成两部分。从一个长方体中加工出一个已知尺寸、位置预定的长方体(这两个长方体的对应表面是平行的),通常要经过6次截断切割。 设水平切割单位面积的费用是垂直切割单位面积费用的r 倍,且当先后两次垂直切割的平面(不管它们之间是否穿插水平切割)不平行时,因调整刀具需额外费用e。 试为这些部门设计一种安排各面加工次序(称“切割方式”)的方法,使加工费用最少。(由工艺要求,与水平工作台接触的长方体底面是事先指定的) 详细要求如下: 1)需考虑的不同切割方式的总数。2)给出上述问题的数学模型和求解方法。3)试对某部门用的如下准则作出评价:每次选择一个加工费用最少的待切割面进行切割。4)对于e = 0的情形有无简明的优化准则。5)用以下实例验证你的方法:待加工长方体和成品长方体的长、宽、高分别为10、14.5、 19和3、2、4,二者左侧面、正面、底面之间的距离分别为6、7、9(单位均为厘米)。垂直切割费用为每平方厘米1元,r和e的数据有以下4组: a. r =1, e = 0; b. r =1.5, e =0; c. r =8, e =0; d. r =1.5; 2 <= e <= 15. 对最后一组数据应给出所有最优解,并进行讨论。

模型建立

一.符号说明

x0(x10,x20,,x70):产品零件参数的标定值;xi0:第i个零件的标定值;

ai,bi:第i个零件的标定值xi0取值的上、下界; x(x1,x2,,x7):产品零件参数的实际值; y0(1.5):产品性能参数的目标值;

f(x1,x2,,x7):产品性能参数的经验公式;即

yf(x1,x2,,x7)174.42xx1(3)0.85x5x2x1x40.563x12.62[10.36()]2(4)1.16x2x2 x6x7yf(x10,x20,,x70):产品性能参数的平均值;

yf(x1,x2,,x7):产品性能参数的实际值;

ri(0.01,0.05或0.10):第i个零件的相对容差(绝对值);

xi:第i个零件的容差,xixi0ri;

cij: 第i个零件参数取第j个容差等级时所需成本,i1,2,,7;j1,2,3

~~ 第1,2,3个容差分别表示C,B,A等级;

dij:01变量,i1,2,,7;j1,2,3, 如果第i个零件参数取第j个容

差等级时dij取值1,否则为零;

i:第i个零件参数(的实际值)xi的均方差;

y:产品质量性能参数yf(x1,x2,,x7)(的实际值)的均方差;

C(y):产品yf(x1,x2,,x7)的生产成本; L(y):产品yf(x1,x2,,x7)的损失费用;

M(y):产品yf(x1,x2,,x7)的生产成本与损失费用之总和。

二.关于零件参数的假设

在第i个零件取定其标定值为xi0后,由于在加工过程中存在许随机因素,刀具磨损,测量的误差等,因此,由中心极限定理知零件参数的实际值xi可看成是服从正态分布的随机变量,即

xi~N(xi0,i)

并且设七个零件的加工过程是相互的。

概率统计学告诉我们,如果某个随机变量服从正态分布

x~N(x0,2)

2则由“3”原则,有

P(|Xx0|3)0.9971

0.140.120.10.080.060.040.02

0-15-10-5051015

所以,当要求第i个零件取定其标定值为xi0,第i个零件的容差为

xixi0ri,则意味着

xixi0ri3i

~~于是

ixixi0ri 33~即当第i个零件的标定值xi0,容差等级(C,B,A,既第i个零件的相对容差)

ri(0.01,0.05或0.10))确定后,第i个零件参数的实际值xi所服从的正态分布

就完全确定了。

三.关于产品参数y的分布

当七个零件的标定值x0(x10,x20,,x70),容差等级(C,B,A,即每个零件的相对容差)ri(0.01,0.05或0.10))确定后,为确定产品性能参数

y(f(x1,x2,,x7))的分布规律与求产品质量的损失费用L(y),现在讨论y的

分布情况。

由于产品性能参数的经验公式

yf(x1,x2,,x7)

174.42xx1(3)0.85x5x2x1x40.563x12.62[10.36()]2(4)1.16x2x2 x6x7非常复杂,直接得出y的精确分布有困难。

对此有两种办法: ① 用随机模拟的方法

在零件参数标定值的允许范围内任意取一组值x0(x10,x20,,x70)和任意一组容差等级r,产生n组相互的正态分布随机数xj(x1j,x2j,,x7j),

j1,2,,n, 其中七个零件参数x(x1,x2,,x7)中的每个 xij 都是服从正态

分布

xij~N(xi0,i2), i的随机数。

xixi0ri 33~由经验公式得到产品性能参数y的n组(n很大)对应的样本值 yjf(x1j,x2j,,x7j), j1,2,,n

画出直方图,并用2检验法检验y是否服从正态分布,并确定y的分布的有关特征数字。

例如,取n = 10000时, y的直方图与y是否服从正态分布的检验

18001600140012001000800600400200011.11.21.31.41.51.61.71.81.92

Normal Probability Plot0.9990.9970.99 0.98 0.95 0.90 Probability0.75 0.50 0.25 0.10 0.05 0.02 0.01 0.0030.0011.11.21.31.41.51.6Data1.71.81.92

具体见 ytest1 和 ytest2。

② 用理论方法推导

在零件参数标定值的允许范围内任意取一组值x0(x10,x20,,x70)和一组容差等级r,记 yf(x10,x20,,x70),表示产品性能参数的平均值。产生零件参数的实际值x(x1,x2,,x7),由经验公式得到产品性能参数y的一组对应的值

yf(x1,x2,,x7)

因为

xixi0xi~N(0,i), i1,2,,7

2所以

yf(x1,x2,,x7)f(x0x)

f(x0)i17fxixi

xx0yy

即

yyyi17fxixi

xx02因为xi,i1,2,,7服从相互的正态分布N(0,i),所以y也服从正态分布N(0,y),并且对上式两边取方差,得

y[2i172fxi]2i

xx02于是产品性能参数y也近似服从正态分布,即

yyy~N(y,y2)

N(f(x10,x20,,x70),i17f[xixx0xr]i0i)

9222至于近似服从正态分布的误差有多大? 我们后面再讨论。

三.目标函数

由原问题要求,建模的目标函数M(y)应包括产品yf(x1,x2,,x7)零件的的生产成本与质量损失费用两部分。

① 生产成本

当零件的标定值x0(x10,x20,,x70)与零件的容差xixi0ri确定以后,零件的的生产成本就完全确定了,为

C(y)cijdij

i1j173~其中cij是第i个零件参数取第j个容差等级时所需成本, i1,2,,7;j1,2,3,第1,2,3个容差分别表示C,B,A等级;而dij为01变量,如果第i个零件参数取第j个容差等级时dij取值1,否则为零,并且

i1,2,,7,dij1

j13还要注意到对每个i1,2,

② 质量损失费用 质量损失函数为

,7,对容差等级dij来说,j1,2,3不一定都能取到;

0L(y)10009000y01.5。

|yy0|0.10.1|yy0|0.3

|yy0|0.3由上一段,y服从正态分布,即

y~N(y,y)

N(f(x10,x20,2,x70),i17f[xixx0xi02ri2])

92其密度函数为

(y)所以(y01.5)

12y(yy)22y2e

y00.1正品的概率 p1P{|yy0|0.1}y00.1y00.1y00.3(y)dy;

次品的概率 p2P{0.1|yy0|0.3}y00.3(y)dyy00.1(y)dy;

y00.3废品的概率 p3P{|yy0|0.3}y00.3(y)dy(y)dy。

2再由标准正态分布N(0,1)分布函数(y)与一般正态分布N(y,y)分布函数分布函数(y)之间的关系:

~(y)(有

y00.1~yy) y p1P{|yy0|0.1}y00.1(y)dy(y00.1)(y00.1)

~~((y00.1)yy)((y00.1)yy)

(同理

1.6y1.4y)() yyy00.1y00.3p2P{0.1|yy0|0.3}~~y00.3~(y)dyy00.1~(y)dy

[(y00.1)(y00.3)][(y00.3)(y00.1)]

(和

1.4y1.2y1.8y1.6y)()()() yyyyy00.3p3P{|yy0|0.3}~~y00.3~(y)dy~(y)dy

[()(y00.3)][(y00.3)()]

1(1.8y1.2y)() yy从而1个产品的平均质量损失费用

L(y)1000p29000p3

1000[(1.4y1.2y1.8y1.6y)()()()] yyyy1.8y1.2y)()] yy9000[1(其中(y)为标准正态分布N(0,1)分布函数。

于是整个优化问题模型为

minM(y)1000{C(y)L(y)} (1.1)

1000{cijdij

i1j1731000[(1.4y1.2y1.8y1.6y)()()()]yyyy1.8y1.2y )()]}yy 9000[1(s.t.

aixi0bi i1,2,,7

dij1,dij0或1,

j13i1,2,,7,j1,2,3

并且其中

yf(x10,x20,,x70)

ri0.01,0.05或0.10

i2xixi0ri i1,2,,7 337~ y[i1fxi]2i。

xx02

注记:模型中的函数(y)是标准正态分布N(0,1)分布的分布函数。严格地说,这是带变量上下界约束与部分整数变量的、目标函数高度非线性的非线性规划问题。

模型求解

一.模型I计算思想

minM(y)1000{C(y)L(y)} (1.1)

1000{cijdij

i1j1731000[(1.4y1.2y1.8y1.6y)()()()] yyyy1.8y1.2y)()]} yy9000[1(s.t.

aixi0bi i1,2,,7

dij1,dij0或1,i1,2,,7,j1,2,3

j13并且 d11d13d21d51d52d730 其中

yf(x10,x20,,x70)

ri0.01,0.05或0.10

i2xixi0ri i1,2,,7 337~ y[i1fxi]2i。

xx02

模型中的函数(y)是标准正态分布N(0,1)分布的分布函数。

这个带变量上下界约束与整数变量的、目标函数高度非线性的非线性规划问题怎样求解呢?

注意到(1.1)中,一当第i个零件的相对容差ri(0.01,0.05或0.10)或第i个零件的容差xi:xixi0ri确定以后,零件的生产成本就确定了,即这时不论零件的标定值x0(x10,x20,,x70)在标定值取值范围中怎么取,生产成本都是不变的,为cijdij。

i1j173~~全部七个零件的相对容差只有1232132108种组合。对所有108种情况可以逐次去计算;

实则上108种情况可以再简化。从零件参数的标定值及不同容差等级的成本(元)如下表(符号/表示五此等级零件):

x1 x2 x3 x4 x5 x6 x7 标定值容许范围 [0.075,0.125] [0.225,0.375] [0.075,0.125] [0.075,0.125] [1.125,1.875] [12,20] [0.5625,0.935] C等10% / 20 20 50 50 10 / B等为5% 25 50 50 100 / 25 25 A等为1% / / 200 500 / 100 100 容差分为A、B、C三个等级,用与标定值的相对值表示,A等为1%,B等为5%,C等为10%.七个零件的参数标定值的标定值有一定的容许变化范围;

可见,A等(为1%)是不可能取到的。用模拟的方法也可以确定,平均每个产品的生产成本一般在200-300之间,而损失费用为150上下。如此,A等成本费用中200与500的费用太高,所增加的成本费用是损失费用无法弥补的,从而是不可能取到的。于是容差等级总共不超过122213248种。考虑到100费用仍然也是难以弥补的,事实上,还应该是

122212116

种情况。

确定了一种容差方案后,上述问题实质上化为

minL(y) (1.2)

1000[(1.4y1.2y1.8y1.6y)()()()] yyyy1.8y1.2y)()]} yy9000[1(s.t.

aixi0bi i1,2,,7

yf(x10,x20,,x70)f(x0)

其中

ri0.01,0.05或0.10

y2i17f[xixx0xr]i0i, i1,2,,7。

9222已经确定。

二、编程实现技术细节

1. 容差等级、生产成本 与 标定值区间

R=[0.10 0.05]; % 容差等级,最贵的一种舍去! cost=[inf 25 % 选定容差以后的生产成本费用

20 50 20 50 50 100 50 inf 10 25 inf 25];

A=[0.075 0.125 0.225 0.375 0.075 0.125 0.075 0.125 0.125 1.875 12 20

0.5625 0.9375]; % 标定值区间

2. 怎么选定容差等级

用i1,i2,i3,i4,i5,i6,i7表示选定的容差等级,值都在1,2中选择,并且i1=2,i5=1,i7=2。 于是全部容差等级的循环是4重循环。

从而选定的第k个零件的容差等级为

r(ik)= R(ik)

而对应的成本费用为

cost(k,ik)

所以,这个产品的生产成本为

Cy = cost(1,i1) + cost(2,i2) + cost(3,i3) + cost(4,i4) +

cost(5,i5) + cost(6,i6) + cost(7,i7)

3. 损失费用的最小化计算

当标定值x与容差等级r取定后,损失费用是个最小值优化问题。其目标函数 与 约束条件是:

minL(y) (1.2)

1000[(1.4y1.2y1.8y1.6y)()()()] yyyy9000[1(s.t.

1.8y1.2y)()]} yyaixi0bi i1,2,,7

yf(x10,x20,,x70)f(x0)

其中

ri,i1,2,,7已确定,而标定值 x0 是优化变量

y2i17f[xixx0xr]i0i, i1,2,,7。

9222已经可以计算。其中已经没有零件参数的实际随机值 x 了。

1.4y目标函数中的 (Matlab中有现成) 是正态分布N(0,1)的分布函数,

y的函数 normcdf 可以调用(比较 normpdf )。

4. 多元函数的偏导数(或梯度)怎么计算

多元函数的偏导数(或梯度)与 海森矩阵 怎么计算,Matlab中有现成的函数 jacobian 可以调用,具体见 objgrad.m。

5. 当时的计算程序编写方法

(1).计算方法一:用Matlab中函数Fmincon来计算 见 mydesign1 求解结果: 零件参数标定值: x = 0.0750 0.3750 0.1106 0.1200

1.1309 12.0100 0.7977 相应的容差等级: r = 0.0500 0.0500 0.0500 0.1000 0.1000 0.0500 0.0500

零件总费用(成本+损失): My =

4.2136e+005 每个零件成本与损失: Cy = 275 Ly = 146.3603

程序求解运行时间: T = 16.0051

(2). 计算方法二:用网格搜索方法

(3).计算方法三:用随机模拟的方法

(4).计算方法四:用模拟退火算法

(5).计算方法五:用遗传算法

二.初始方案费用计算

1.原设计方案费用计算----用Matlab 见 mydesign2 零件参数标定值:

x = 0.1000 0.3000 0.1000 0.1000 1.5000 16.0000 0.7500

相应的容差等级: r =0.0500 0.1000 0.1000 0.1000 0.1000 0.1000 0.0500

零件总费用(成本+损失): My =

3.0748e+003

零件成本与损失:

Cy = 200 Ly =

2.8748e+003 计算运行时间: T =0.6351

2.原设计方案费用计算----用随机模拟

见 mydesign3

用随机模拟法(n=10000次随机试验)开始求原设计方案费用。请稍候--- 零件参数标定值: x = 0.1000 0.3000 0.1000 0.1000 1.5000 16.0000 0.7500 相应的容差等级: r = 0.0500 0.1000 0.1000 0.1000 0.1000 0.1000 0.0500

产品性能指标参数y分布的统计标准差: sigmay =

0.1113 产品统计正品率: p1 = 0.1154 产品统计次品率: p2 =0.6242 产品统计费品率: p3 =0.2604

零件总费用(成本+损失): My =

3.1678e+003 零件成本与损失: Cy = 200 Ly =

2.9678e+003 计算运行时间: T = 4.0799

模型检验与误差分析

对建模的结果,我们往往要作结果检验与敏感性分析和误差分析等,以提高论文的完整性和理论层次(可以参考上海交通大学与中国科大的获奖论文)。

1、敏感性分析

首先,在最优标定值点x0处,因为实际参数值

xixi0xi~N(0,i), i1,2,,7

2所以

yf(x1,x2,,x7)f(x0x)

f(x0)i17fxixi

xx0yy

即

yyyi17fxixi

xx0从而

7yyy[yyi1fxixx0yxi]xi xi即目标函数的梯度(绝对敏感性系数),除以函数均值y,乘上每个参数xi的当前标定值,即为误差传递的敏感性系数。从而第i个参数的相对敏感性系数为

fxisixx0yxi,i1,2,,7

grad_y = [24.1992 -3.3932 11.5039 -2.96 -1.3243 -0.0623 -0.9385]

或 敏感系数 1 2 3 4 5 6 7 估计值 1.2125 0.8501 0.8500 0.2124 1.0000 0.5000 0.5000

其次,在最优标定值点处,固定六个参数,仅让其中一个参数改变,由此得到的函数值的改变情况比较图形为:

30y(x1)y(x2)y(x3)y(x4)y(x5)y(x6)y(x7) 2520151050-5 -0.25-0.2-0.15-0.1-0.0500.050.10.150.20.25

同样可见,函数y值的变化对参数x1,x3比较最为敏感,其次是x2,x4,x5,x7,而对x6是最不敏感的。 2、误差分析

(1)关于函数y的值的误差估计。当标定值确定以后,由于零件实际的参数值带有随机性,因而函数 y 的值与均值yf(x10,x20,,x70)也有一定随机性误差。则对y取值的相对误差,也有用

yyi17[fxi]2i2xx0y 其中

xixi0ri,i1,2,,n 33~i来表示的。

由此可以估计出当标定值、容差等级确定后,产品的性能指数函数值有多大的随机性波动。

(2)关于函数y的值的非线性误差,以及所带来的对函数值y的分布误差的影响是不是会很显著的问题,可以见程序myhess 。当标定值达到允许的最大误差时,函数 y 的值的非线性误差为

Error非线性(xx0)H(x0)(xx0) = 0.0338

其中H(x0)是函数y在最优标定值点x0处的海森矩阵(即二阶导数矩阵)。而非线性误差的相对值为

RatioError非线性y = 2.26%。

所以,说经验函数值近似服从正态分布,其误差是很小的,即近似度是很高的。

模型改进

-----模型II建立

前面的优化问题模型

minM(y)1000{C(y)L(y)} (1.1)

1000{cijdij

i1j1731000[(1.4y1.2y1.8y1.6y)()()()] yyyy9000[1(s.t.

1.8y1.2y)()]} yyaixi0bi i1,2,,7

dij1,dij0或1,i1,2,,7,j1,2,3

j13其中

yf(x10,x20,,x70)

ri0.01,0.05或0.10

i2xixi0ri i1,2,,7 337~ y[i1fxi]2i。

xx02

模型中的函数(y)是标准正态分布N(0,1)分布的分布函数。另外,用到质量损失函数

0L(y)10009000|yy0|0.10.1|yy0|0.3

|yy0|0.3y01.5。 因而这使得该问题的目标函数高度非线性,以至于非线性规划问题

怎样求解困难!

实际上,从另外一个角度来看,就是从产品的社会效用来说,性能指标差|y-y0| 越接近于0.1的产品,其接近于正品,因而应该几乎没有什么损失;另一方面,性能指标差|y-y0| 越接近于0.3的产品,其接近于废品,因而损失应该几乎等同于废品,即它的损失费用应该接近于9000,而不是恒定在1000;

我们可以凭经验,合理地假设损失函数是y-y0的二次函数,即

L(y)K(yy0)2

由|y-y0|=0.1时,L(y) = 1000,|y-y0|=0.3时,L(y) = 9000可得K=105。于是平均质量损失

E[L(y)]105E[(yy0)2] 105E[(YEY)(EYy0)]2

2105[2(EYy)] y0

2105[2(yy)] y0其中yf(x0),即标定值对应的产品质量性能指标的平均值,y01.5。而

y2i17f[xi]2ixx02

所以对应的修改优化模型是

minM(y)1000{C(y)E[L(y)]} (1.2)

21000{cijdij105[2y(yy0)]}

i1j173s.t.

aixi0bi i1,2,,7

dj13ij1,dij0或1,i1,2,,7,j1,2,3

其中

yf(x10,x20,,x70)

ri0.01,0.05或0.10 i1,2,,7

i2xixi0ri i1,2,,7 337~ y[i1fxi]2i。

xx02

这个优化问题是个确定性的,混合整数规划问题。与分布函数没有关系。求解稍简单一些。

求解结果见程序(model II)。

因篇幅问题不能全部显示,请点此查看更多更全内容