多目标优化设计方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基本思想:在理想点法的基础上引入权数 i 构造评价函数。
目标函数:
X (x1, x2 ,..., xn )T
L
min f ( X ) i[ fi ( X ) fi*]2
i 1
s.t. gi ( X ) 0 (i 1, 2,..., m)
hj ( X ) 0 ( j 1, 2,..., k)
求: X [x1, x2,..., xn )T
n维欧氏空间的一个向量
min F( X ) [ f1( X ), f2 ( X ),..., fL ( X )]T s.t. gi ( X ) 0, (i 1, 2,..., m)
hj ( X ) 0, ( j 1, 2,..., k)
向量形式的目标函数
c=[];
%所有非线性不等式约束
(3)运行结果
Optimization terminated successfully: xopt =
0.7071 0.7071 fopt = 0.5000 -0.0589
%矩形截面梁两目标优化设计
x0=[1;1];
lb=[0;0];
ub=[1;1];
[xopt,fopt]=fminimax(@JXL_2mb_MB,x0,[],[],[],[],lb,ub,@JXL_2mb_YS)
[x,fval,exitflag,output, grad,hessian]=
fminimax(@fun,x0, A[ ,b[,A[e]q,,b[e]q,,Lb,Ub,’Nlc’,options,P1,P2…)
], ],
7.4 功效系数法
基本思想:
先按各子目标值的“优”或“劣”(即“功 效”)分别求出与其对应的功效函数,然后再由 各个功效函数构造出问题的评价函数进行求解。
一、多目标优化及数学模型 设计车床齿轮变速箱时,要求:
各齿轮体积总和 f1(X) 尽可能小
降低成本
各传动轴间的中心距总和 f2 (X) 尽可能小 使变速箱结构紧凑。
合理选用材料
使总成本 f3(X) 尽可能小。
传动效率尽可能高
机械耗损率 f4(X) 尽可能小。
在优化设计中同时要求几项指标达到最优值的 问题称为多目标优化设计问题。兼顾多方面的要求 ,则称为多目标优化问题。
二、多目标优化问题的特点及解法(续) 2、解法:
将多目标优化问题转化为单目标优化问题 (统一目标函数法) 解法
将多目标优化问题转化为一系列单目标优化问题
7.2 统一目标函数法(综合目标法)
一、基本思想
统一目标函数法就是设法将各分目标函数 f1(X),f2(X),…,fl(X) 统 一 到 一 个 新 构 成 的 总 的 目 标 函 数 f(X), 这样就把原来的多目标问题转化为一个具有统— 目标函数的单目标问题来求解.
则应用Matlab求解的程序为:
f=-[1 1]; A=[5 3;-1 -1;-1 0]; b=[70;-15;-5]; xl=[0;0]; [x,f,exitflag]=linprog(f,A,b,[ ],[ ],xl)
最优解为: X*=[5 15]
f1( x) 70元
f
2
(
x)
20kg
解:取权系数(1)w1=0.5 ,w2=0.5 ;(2)w1=0.2 ,w2=0.8 相应的MATLAB计算程序如下:
即:
minF (X ) minF ( f1(X ), f2(X ),..., fl (X ))
X D
X D
D为可行域,f1(X),f2(X),…,fl(X)为各个子目 标函数。
7.2 统一目标函数法(续)
二、统一目标函数的构造方法 1、线性加权和法(线性加权组合法)
根据各子目标的重要程度给予相应的权数,然后 用各子目标分别乘以他们各自的权数,再相加即构成 统一目标函数。
设f2(X)为主要目标函数,则优化的数学模型为:
X (x1, x2 ,..., xn )T min f2 ( X ) s.t. gi ( X ) 0 (i 1, 2,..., m)
hj ( X ) 0 ( j 1, 2,..., k) ft ( X ) ft0 (t 1, 2,..., L)
function f1f2=fun_obj(x,ww) f1f2=ww(1)*(5*x(1)+3*x(2))-ww(2)*(x(1)+x(2));
(1)取权系数w1=0.5 ,w2=0.5 时最优解为
X*=[5 10],
f
1
(
x)
55元
f2 ( x) 15kg
(2)取权系数w1=0.2 ,w2=0.8时最优解为
例: 现有现金70元,可用来可用来购买菠萝和苹果 。 菠 萝 5 元 /kg , 苹 果 3 元 /kg , 要 求 总 斤 数 不 少 于 15kg,菠萝不少于5kg。 问:(1) 购买菠萝和苹果各多少斤,才能在满足要求 的条件下花钱最少?(2) 购买菠萝和苹果各多少斤, 才能在满足要求的条件下所买的菠萝和苹果最多?
x1x
2 2
/
6
③约束条件:含性能约束和边界约束
性 能 约 束 h(X) x12 x22 1
等式约束
g1(X) x1 0 g3(X) x2 0
边 界 约 束 g2(X) x1 1 0 变量x1的上下限
g4 (X) x2 1 0 变量x2的上下限
(2)编制优化设计的M文件
%矩形截面梁两目标优化设计的目标函数文件
ft0 (t 1, 2,..., L) ——原问题第t个目标函数的上限值。
7.4极大极小法 MATLAB:函数fminimax
一、多目标优化问题数学模型 各分目标函数
min max {f1,f2,…,f3}
s.t. AX≤b
(线性不等式约束)
AeqX=beq (线性等式约束)
C(X)≤0
(非线性不等式约束条件)
目标函数在最优解的海色矩阵
fminimax(@fun,x0, A,b,Aeq,beq,Lb,Ub,’Nlc’,options,P1,P2…)
目标函数文件名
初始点
线性不等式约束的常数向 量
线性不等式约束的系数矩
无定义时以空矩阵 符号“[ ]”代替
附加参数 设置优化选项参数 非线性约束条件的函数名 设计变量的下界和上界 线性等式约束的常数向量 线性等式约束的系数矩
x R2
%li9_1 f=[5 3]; A=[5 3;-1 -1;-1 0]; b=[70;-15;-5]; xl=[0;0]; [x,f,exitflag]=linprog(f,A,b,[ ],[ ],xl) 最优解为:
X*=[5 10],
f
பைடு நூலகம் 1
(
x
)
55元
f2 ( x) 15kg
(2)如果只考虑目标函数 max f2 (x) x1 x2 x R2
i 满足归一性和非负性条件
L
i 1
i 1
i 0 (i 1, 2,..., L)
7.3 主要目标函数法 基本思想:从所有L个子目标函数中选出一个设
计 者 认 为 最 重 要 的 作 为 主 要 目 标 函 数 , 而 将 其 余 L-1 个子目标限制在一定的范围内,并转化为新的约束条 件,将多目标优化问题转化为单目标优化问题。
三、例题
已知直径为1单位长度的圆柱梁,要求将它制成矩形截面梁,满足重量最轻
和强度最大的条件,试确定矩形截面尺寸。
解:(1)建立优化设计的数学模型
①设计变量:
矩形截面的宽和高
x2
X=[x1,x2]T
②目标函数:
x1
重量→截面积:minf1(X)=x1x2
弯曲强度→ 矩形截面矩量:
min
f2
(X)
L
min f ( X ) i fi ( X ) i 1
s.t. gi ( X ) 0 (i 1, 2,..., m) hj ( X ) 0 ( j 1, 2,..., k)
注意:
1、建立这样的评价函数时,各子目标的单位已经脱 离了通常的概念。
2、权数(加权因子)的大小代表相应目标函数在优 化模型中的重要程度,目标越重要,权数越大。
设计变量应满足的所 有约束条件
多目标问题是现实世界中普遍遇到的一类问题 ,其中希望(或必须)考虑多个相互矛盾目标的影 响。
例如证券投资问题中我们希望利润最大而风险 最小,生产销售问题中我们希望费用较少而获利很 大,等等。
例:车间计划生产甲、乙两种产品,每种产品均需经 过A、B、C三道工序加工。工艺资料如表一所示。
X*=[5 15]
f1( x) 70元
f
2
(
x
)
20kg
权因子的确定方法:
在确定权因子前,应先将各子目标函数进行 无量纲化,处理的方法是:
fi
(X
)
fi'(X ) min fi' ( X
)
X D
fi' ( X ) 是多目标问题中某个带量纲的子目标;
fi ( X ) 是作了无量纲处理后的第i个子目标函数
解:通俗地说,这是一个如何安排资金,少花钱多
办事的问题。设购买菠萝x1 kg,苹果x2 kg。可以 列出如下的优化数学模型:
min f1(x) 5x1 3x2 max f2 (x) x1 x2
x R2 x R2
s.t. 5x1 3x2 70
x1 x2 15
x1 5
x2 0
(1)如果只考虑目标函数 min f1(x) 5x1 3x2 则应用Matlab求解的程序为:
function f=JXL_2mb_MB(x)
f(1)=x(1)*x(2);
%f1:梁的截面积
f(2)=-x(1)*x(2)^2/6;
%f2:梁的截面矩量
%矩形截面梁两目标优化设计的约束函数文件
function [c,ceq]=JXL_2mb_YS(x)
ceq=x(1)^2+x(2)^2-1;
%非线性等式约束
例如,在机械加工时,对于用单刀在一次走刀中将 零件车削成形,为选择合适的切削速度和每转给进量, 提出以下目标:
机械加工成本最低; 生产率最高; 刀具寿命最长。
还应满足的约束条件是: 进给量小于毛坯所留最大加工余量 刀具强度等
对于一个具有L个目标函数和若干个约束条件的多 目标优化问题,其数学模型的表达式可写为:
Ceq(X)=0 (非线性等式约束)
Lb ≤X ≤Ub (边界约束条件)
函数fminimax
二、优化函数使用格式
返回目标函数的最优解 返回目标函数的最优值
返回算法的终止标志 优化算法信息的一个数据结构
返回目标函数在最优解的梯度
[x,fval,exitflag,output, grad,hessian]=
L
即评价函数为: f (X ) i fi (X ) i 1
f1(X ), f2(X ),..., fL(X ) ——各子目标函数
1,2,...,L ——权数
L
i 应满足归一性和非负性条件
i 1
i 1
i 0 (i 1, 2,..., L)
优化的数学模型为
X (x1, x2 ,..., xn )T
X (x1, x2 ,..., xn )T
1
min
f
(
X
)
L
[ fi (X )
fi*
]2
2
i1
s.t. gi ( X ) 0 (i 1, 2,..., m)
hj ( X ) 0 ( j 1, 2,..., k)
7.2 统一目标函数法(续)
二、统一目标函数的构造方法(续)
3、平方和加权法
clc; clear all; A=[5 3;-1 -1;-1 0]; b=[70;-15;-5]; xl=[0,0];x0=[0,0]; w(1,1)=0.5;w(1,2)=0.5; w(2,1)=0.2;w(2,2)=0.8; for i=1:2 [x,f,exitflag]=fmincon(@(x)fun_obj(x,w(i,:)),x0,A,b,[ ],[ ],xl) f1=5*x(1)+3*x(2) f2=x(1)+x(2) end
(1) 专家评判法(老手法)
凭经验评估,并结合统计处理来确定权数的方法。 特点:方法实用,但要求专家人数不能太少。
(2)容限法
若已知子目标函数fi(X)的变动范围为:
i fi (X ) i , i 1, 2,..., L
则称
fi ( X
)
i
i
2
(i
1,
2,...,
L)
为该目标函数的容限
这时权数可取为:i 1 fi (X )2 ,i 1, 2,..., L
目的:在目标函数中使各子目标在数量级上达到 统一平衡。
7.2 统一目标函数法(续)
二、统一目标函数的构造方法(续)
2、理想点法
基本思想:使各个目标尽可能接近各自的最优值, 从而求出多目标函数的较好的非劣解。
步骤:先用单目标优化方法求得各子目标的约束最 优值和相应的最优点,然后构造目标函数。
目标函数: