Upload
uriah-reilly
View
54
Download
0
Embed Size (px)
DESCRIPTION
最优化计算初步. 郑伟诗 Wei-Shi Jason Zheng [email protected] http://sist.sysu.edu.cn/~zhwshi/. 晴天. 阴天. 下雨. …………. X 1. X 2. X T. …………. O 1. O 2. O T. 简要复习第三讲:统计分析进阶. 马尔可夫模型. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. •. - PowerPoint PPT Presentation
Citation preview
Wei-Shi [email protected]
04/19/23, Page 1
郑伟诗
Wei-Shi Jason Zheng
[email protected]://sist.sysu.edu.cn/~zhwshi/
最优化计算初步
Wei-Shi [email protected]
04/19/23, Page 3
简要复习第三讲:统计分析进阶
主成分分析:使数据分布更易于解释
•
2x
1x
1F
2F
••• •
••
••• ••
• •
•••
•••
• •••
••
••
• ••
•
••••
• •
2x
1x
1F
2F
•••••
•
•
•• •••
••
•
•
••
•
•
••
•
•••••
••
•
••
••
••
Wei-Shi [email protected]
04/19/23, Page 4
最优化计算初步
课程安排 最优化解决什么类型的问题? 无约束情况下的最优化计算 约束情况下的最优化计算 一般约束情况下的最优化计算 基于多层次分析法的最优化计算 关于计算机视觉的几个例子
作业:发至 [email protected] 作业截止时间: 9 月 18日 ,2013
PPT 下载地址: http://www.eecs.qmul.ac.uk/~jason/sysu/course/maths_model
Wei-Shi [email protected]
04/19/23, Page 7
例子:生产计划的编制 产品 资源 A B C 企业
现有资源
钢材(吨/只) 3 4 2 600
木材 (立方米/只)
2 1 2 400
人工 (千小时/只)
1 3 3 300
机床(台/只) 1 4 4 200
收益 (千元/只)
2 4 3
问:企业应如何安排生产,能使总收益最大?
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 8
决策目标: A 、 B 、 C 产品各生产多少台使企业 总收益最大?• 决策变量:设• 目标函数:• 约束条件:
•非负条件:
1 2 3, , , ,x x x A B C为生产 三种产品的数量。
1 2 3max 2 4 3x x x
1 2 3
1 2 3
1 2 3
1 2 3
3 4 2 600
2 3 400
3 3 300
4 4 200
x x x
x x x
x x x
x x x
1 2 3, , 0x x x
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 9
合理下料问题:现要用长 7.4 米的圆钢截取长 2.9 米、 2.1米和 1.5 米的材料各 100 根,应如何下料,才能使用料最省?
1 、各种取料方式下料方式 2.9米根数 2.1米根数 1.5米根数 余 料
1 1 0 3 0
2 2 0 1 0.1
3 0 2 2 0.2
4 1 2 0 0.3 5 0 1 3 0.8 6 1 1 1 0.9
2.9 2.1 1.5 0.9
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 10
决策目标:如何取料使所用原料最少 (1) 决策变量:设第 j 种下料方式所用的原料根数为xj(2) 目标函数:(3) 约束条件:
(4) 非负条件:
2 3 4 5 6min 0.1 0.2 0.3 0.8 0.9x x x x x
1 2 4 6
3 4 5 6
1 2 3 5 6
2 100
2 2 100
3 2 3 100
x x x x
x x x x
x x x x x
0, , 1, 2, ,6jx j 整数
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 11
人力资源安排问题 某商场是个中型的百货商场,现在需要对营业员的工作时间作出安排,营业员
每周工作五天,休息两天,并要求休息的两天是连续的,问题归结为:如何安排营业员的作息时间,既能满足工作需要,又使配备的营业员人数最少?
1 、有关数据:对营业员的需求进行统计分析,营业员每天的需求人数如下表所示:时 间 所需营业员人数
星期日 28人
星期一 15人
星期二 24人
星期三 25人
星期四 19人
星期五 31人
星期六 28人
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 12
( 1,2, ,7)jx j j 决策变量:设 为第天开始休息的人数
1 2 3 4 5 6 7
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 1
5 6 7 1 2
6 7 1 2 3
7 1 2 3 4
1 2 3 4 5 6 7
min
28
15
24
25
19
31
28
, , , , , , 0,
x x x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x x x
目标函数:
约束条件:
整数
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 13
挑选球员问题:某篮球教练要从 8 名业余队员中挑选 3 名队员参加专业球队,使平均身高达到最高。队员的号码、身高及所擅长的位置如下。要求:中锋 1 人;后卫 1 人;前锋 1人,但 1 号、 3 号与 6 号队员中必须保留 1 人给业余队。
号码 身高(米) 位置 挑选变量 1 2 3 4 5 6 7 8
1.92 1.91 1.90 1.86 1.85 1.83 1.80 1.79
中锋 中锋 前锋 前锋 前锋 后卫 后卫 后卫
x1
x2
x3
x4
x5
x6
x7
x8
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 14
1 2 3 4
5 6 7 8
1 2 3 4 5 6 7 8
1 2
3 4 5
6 7 8
1 3 6
max 1.92 1.91 1.90 1.86
1.85 1.83 1.80 1.79
. . 3
1
1
1
2
0 1 1, 2, , 8i
x x x x
x x x x
s t x x x x x x x x
x x
x x x
x x x
x x x
x i
或
目标函数:
约束条件:
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 15
运输问题:要把某种货物从 m 个工厂运到 n 个商店去,其中每个工厂的库存量为 a1,a2,…,am, 各商店的需求量为 b1,b2,…,bn, 从工厂 i 到商店 j 的运费(每单位货物)为 cij, 确定从工厂 i 到商店 j 的运输量 xij(i=1,…,m,j=1,…,n), 使在满足供求的条件下,总的运费最小。
最优化的一般问题:例子
1 1
1
1
min
. . 1,2, ,
1, 2, ,
0 1,2, , 1, 2, ,
m n
ij iji j
m
ij ji
n
ij ijj
ij
c x
s t x b j n
x a i m
x i m j n
i
Wei-Shi [email protected]
04/19/23, Page 16
选址问题:设有 n 个市场,第 j 个市场的位置为 (aj,bj) ,对某种货物的需要量为 qj, j=1,…,n, 现计划建立 m 个仓库,第 i个仓库的容量为 ci,i=1,…,m, 试确定仓库的位置,使各仓库到各市场的运输量与路程乘积之和最小.
解:设第 i 个仓库的位置为 (xi,yi) ,运输量为 wij.2 2
1 1
1
1
min ( ) ( )
. . 1, 2, ,
1,2, ,
0 1,2, , 1, 2, ,
n m
ij i j i jj i
n
ij ij
m
ij ji
ij
w x a y b
s t w c i m
w q j n
w i m j n
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 17
数据拟合问题:在实验数据处理或统计资料分析中常遇到如下问题:设两个变量 x和 y ,已知存在函数关系,但其解析表达式或者是未知的、或者虽然为已知的单过于复杂。设已取得一组数据,
(xi, yi), i=1,2,…,m
根据这组数据导出函数 y=f(x) 的一个简单而近似的解析表达式。取一个简单的函数序列 g0(x), g1(x),…,gn(x)
2
1 1
minm n
i j j ii j
y g x
最优化的一般问题:例子
Wei-Shi [email protected]
04/19/23, Page 18
1.组合投资的马库维茨模型
1952年Markowitz发表了《资产选择:投资的有效分散化》
一文,奠定了资产组合的理论基础,从而推动了基金业的发展.
Markowitz 最早采用风险资产的期望收益率和用方差代表
的风险来研究资产的选择和组合问题.
Markowitz 的证券组合投资模型是现代证券投资理论的基
石.
它解决了持有一定数量资本的投资者,怎样在选定的多种
风险证券投资上分配投资量,从而达到分散风险,取得尽可能
大的收益这样的投资问题.
1990年获得诺贝尔经济学奖!
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 19
模型的建立
设投资的期限是一年,可供选择的金融资产数为 n 。设此 n中
金融资产的年收益为随机变量 。由于我们
主要关心投资的分配比例,不妨设投资总数为 1 个单位,用
于第 j 中投资的资金比例为 , 令
,称为投资组合向量。显然应有。
1 2( , , , ) 'n
( 1, 2, , )jw j n
1 2( , , , ) 'nw w w w
1
1n
jj
w
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 20
投资一年的收益 也是一个随机变量,期望收益为
马库维茨建议用随机变量 (组合投资收益)的方差作为投资风险的度量,即
设随机向量的数学期望为 ,
自协方差矩阵为
'w
1 1 2 2( ' ) ( ) ( ) , , ( )n nE w E w E w E w
'w
2 2( ' ) (( ' ( ' )) )D w E w E w
E
( )( ) ' ( )ij n nD E E E
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 21
那么
投资者一般希望收益越大越好,风险越小越好。但收益大和风险小往往是两个有矛盾的目标,因此马库维茨将问题归结为:将风险控制在一定水平之下,选择投资组合使期望收益最大;或者在收益不低于某个水平前提下使投资的风险最小。这样就有以下两个马库维茨组合投资优化模型。
2 ' .w D w
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 22
1
max ( ' )
. . ( ' ) ( 0)
1, 0( 1,2, , )n
j jj
I E w
s t D w r
w w j n
其中 r 是预定的风险水平 .
第一个模型是控制风险 , 优化收益模型
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 23
第二个模型是控制收益,极小化风险的模型
2
1
min ( ' )
. . ( ' ) ( 0)
1, 0( 1,2, , )n
j jj
D w
s t E w a a
w w j n
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 24
还可将收益和风险指标进行加权平均,得到如下模型
其中, 是一个适当选取的常数 .
由于在 中包含了各分量的二次项,这三个模型均为二次规划模型 .
1
min ( ' ) (1 ) ( ' )
. . 1, 0( 1,2, , )n
j jj
c D w E w
s t w w j n
0 1
( ' )D w
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 25
2. 模式识别中的线性分类两类问题: 1 , -1 / 正,负 分类:找到一个决策平面把两类数据分开
二次规划的重要应用实例
Wei-Shi [email protected]
04/19/23, Page 26
SVM 是从线性可分情况下的最优分类面发展而来的 , 基本思想可用左图的两维情况说明 .
图中 , 方形点和圆形点代表两类样本 , H 为分类线 ,H1, H2 分别为过各类中离分类线最近的样本且平行于分类线的直线 , 它们之间的距离叫做分类间隔 (margin) 。 所谓最优分类线就是要求分类线不但能将两类正确分开 ( 训练错误率为 0), 而且使分类间隔最大 .
推广到高维空间,最优分类线就变为最优分类面。
二次规划的重要应用实例 :SVM
Wei-Shi [email protected]
04/19/23, Page 29
最优化问题的特点
• 目标函数用决策变量的线性(或非线性)函数来表示。按问题的不同,要求目标函数实现最大化和最小化。
最优化问题的共同特征:
• 每一个问题变量都用一组决策变量( x1, x2, …, x
n )表示某一方案,这组决策变量的值代表一个具体方案。
• 存在一定的约束条件,这些约束条件可以用一组线性(或非线性)等式或线性(或非线性)不等式来表示。
Wei-Shi [email protected]
04/19/23, Page 30
最优化理论初步
目的:了解基本的理论背景,更好地运用matlab
基本概念 基本理论
无约束条件的最优化 二次带约束条件的最优化 一般带约束条件的最优化
知识掌握要求: 宏观地了解各理论点 会用 matlab 工具建模
Wei-Shi [email protected]
04/19/23, Page 32
XfnEX
min
其中 1: EEf n
求解的基本思想 ( 以二元函数为例 )
1x
2x
)( 21 xxf
0
1x
2x
0
5
3 1
0X
1X
2X
)( 0Xf )( 1Xf )( 2Xf
连续可微
另外: XfnEX
max = - ][ min XfnEX
基本形式
Wei-Shi [email protected]
04/19/23, Page 33
Wei-Shi [email protected]
04/19/23, Page 34
多局部极小
298.0f
0f
298.0f
唯一极小( 全局极小 )
212221
2121 322)( xxxxxxxxf
Wei-Shi [email protected]
04/19/23, Page 35
搜索过程 21
221221 )1()(100)(min xxxxxf
最优点 (1 1)初始点 (-1 1)
1x 2x f
-1 1 4.00
-0.79 0.58 3.39
-0.53 0.23 2.60
-0.18 0.00 1.50
0.09 -0.03 0.98
0.37 0.11 0.47
0.59 0.33 0.20
0.80 0.63 0.05
0.95 0.90 0.003
0.99 0.99 1E-4
0.999 0.998 1E-5
0.9997 0.9998 1E-8
Wei-Shi [email protected]
04/19/23, Page 36
⑴ 给定初始点 nEX 0 ,允许误差 0 ,令 k=0;
⑵ 计算 kXf ;
⑶ 检验是否满足收敛性的判别准则:
kXf ,
若满足,则停止迭代,得点 kXX * ,否则进行⑷;
⑷ 令 kk XfS ,从 kX 出发,沿 kS 进行一维搜索,
即求 k 使得: kk
kkk SXfSXf
0
min ;
⑸ 令 kk
kk SXX 1 ,k=k+1返回⑵.
无约束优化问题的基本算法
最速下降法的优点是工作量小,存储变量较少 , 初始点要求不高;缺点是收敛慢,最速下降法适用于寻优过程的前期迭代或作为间插步骤,当接近极值点时,宜选用别种收敛快的算法 .
1 .最速下降法(共轭梯度法)算法步骤:
Wei-Shi [email protected]
04/19/23, Page 37
2 .牛顿法算法步骤:
(1) 选定初始点 nEX 0 ,给定允许误差 0 ,令 k=0;
(2) 求 kXf , 12 kXf ,检验:若 kXf ,则
停止迭代, kXX * .否则, 转向(3);
(3) 令 kkk XfXfS 12 ][ (牛顿方向);
(4) kkk SXX 1 , 1kk ,转回(2).
如果 f 是对称正定矩阵 A 的二次函数,则用牛顿法经过一次迭代就可达到最优点 , 如不是二次函数,则牛顿法不能一步达到极值点,但由于这种函数在极值点附近和二次函数很近似 ,因此牛顿法的收敛速度还是很快的 . 牛顿法的收敛速度虽然较快,但要求 Hessian 矩阵要可逆,要计算二阶导数和逆矩阵,就加大了计算机计算量和存储量 .
无约束优化问题的基本算法
Wei-Shi [email protected]
04/19/23, Page 38
3 .拟牛顿法
为克服牛顿法的缺点,同时保持较快收敛速度的优点,利用第k步和第k+1步得到的 kX, 1kX , )( kXf , )( 1 kXf ,构造一个正定
矩阵 1kG 近似代替 )(2 kXf ,或用 1kH 近似代替 12 ))(( kXf ,将牛顿方向改为: 1kG 1kS =- )( 1 kXf , 1kS =-
1kH )( 1 kXf
从而得到下降方向.
无约束优化问题的基本算法
Wei-Shi [email protected]
04/19/23, Page 39
通 常 采 用 迭 代 法 计 算 1kG , 1kH , 迭 代 公 式 为 :BFGS( Bor yden- F l et c her - Go l df ar b- Shanno) 公 式
kkTk
kTkkk
kTk
Tkkkk
xGx
GxxG
xf
ffGG
)(
)(
)(
)(1
kTk
Tkk
kTk
kkTkkk
xf
xx
xf
fHfHH
)(
)(
)(
)(11
kTk
TkkkkTkk
xf
xfHHfx
)(
)()(
无约束优化问题的基本算法
Wei-Shi [email protected]
04/19/23, Page 40
DFP(Davidon-Fletcher-Powell)公式:
kTk
Tkk
kTk
kkTkkk
Xf
ff
fX
XGXGG
)(
)(
)(
)(11
kTk
TkkkkTkk
fX
fXGGXf
)(
)()(
kkTk
kTkkk
kTk
Tkkkk
fHf
HffH
Xf
XXHH
)(
)(
)(
)(1
计算时可置 IH1 (单位阵),对于给出的1X利 用上面的公式进行递推.这种方法称为拟牛顿法.
无约束优化问题的基本算法
Wei-Shi [email protected]
04/19/23, Page 41
Matlab 优化工具箱简介(一)
类 型 模 型 基本函数名 一元函数极小 Mi n F(x)s. t. x1<x<x2 x=fmi nbnd( ‘F’, x1, x2)
无约束极小 Mi n F(X) X=fmi nunc( ‘F’, X0)
X=fmi nsearch( ‘F’, X0)
线性规划 Mi n XcT s. t . AX<=b
X=l i nprog(c, A, b)
二次规划 Mi n
2
1 xTHx+cTx
s. t. Ax<=b X=quadprog(H, c, A, b)
约束极小 (非线性规划)
Mi n F(X) s. t. G(X)<=0
X=fmi ncon(‘ FG’, X0)
达到目标问题 Mi n r
s. t. F(x)-wr<=goal X=fgoal attai n( ‘F’, x, goal , w)
极小极大问题 Mi n max {Fi(x)}
X {Fi (x)}
s. t. G(x)<=0 X=fmi ni max( ‘FG’, x0)
Wei-Shi [email protected]
04/19/23, Page 42
优化函数的输入变量变 量 描 述 调 用 函 数
f线 性 规 划 的 目 标 函 数 f * X 或 二 次 规 划 的 目 标 函
数 X ’ * H * X + f * X 中 线 性 项 的 系 数 向 量l i n p r o g , q u a d p r o g
f u n非 线 性 优 化 的 目 标 函 数 . f u n 必 须 为 行 命 令 对 象
或 M 文 件 、 嵌 入 函 数 、 或 M E X 文 件 的 名 称
f m i n b n d , f m i n s e a r c h , f m i n u n c ,f m i n c o n , l s q c u r v e fi t , l s q n o n l i n ,
f g o a l a t t a i n , f m i n i m a x
H二 次 规 划 的 目 标 函 数 X ’ * H * X + f * X 中 二 次 项 的 系
数 矩 阵q u a d p r o g
A , bA 矩 阵 和 b 向 量 分 别 为 线 性 不 等 式 约 束 :
bAX 中 的 系 数 矩 阵 和 右 端 向 量l i n p r o g , q u a d p r o g , f g o a l a t t a i n ,
f m i n c o n , f m i n i m a x
A e q , b e qA e q 矩 阵 和 b e q 向 量 分 别 为 线 性 等 式 约 束 :
beqXAeq 中 的 系 数 矩 阵 和 右 端 向 量l i n p r o g , q u a d p r o g , f g o a l a t t a i n ,
f m i n c o n , f m i n i m a x
v l b , v u b X 的 下 限 和 上 限 向 量 : v l b ≤ X ≤ v u bl i n p r o g , q u a d p r o g , f g o a l a t t a i n ,f m i n c o n , f m i n i m a x , l s q c u r v e fi t ,
l s q n o n l i nX 0 迭 代 初 始 点 坐 标 除 f m i n b n d 外 所 有 优 化 函 数
x 1 , x 2 函 数 最 小 化 的 区 间 f m i n b n do p t i o n s 优 化 选 项 参 数 结 构 , 定 义 用 于 优 化 函 数 的 参 数 所 有 优 化 函 数
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 43
优化函数的输出变量下表 :变量 描 述 调用函数
x由优化函数求得的值.若exi tfl ag>0,则x为解;否则, x不是最终解,它只是迭代制止
时优化过程的值所有优化函数
f val 解x处的目标函数值l i nprog, quadprog, fgoal attai n,fmi ncon, fmi ni max, l sqcurvefi t,
l sqnonl i n, fmi nbnd
exi tfl ag
描述退出条件: exi tfl ag>0,表目标函数收敛于解x处 exi tfl ag=0,表已达到函数评价或迭代
的最大次数 exi tfl ag<0,表目标函数不收敛
output
包含优化结果信息的输出结构. I terati ons:迭代次数
Al gori thm:所采用的算法 FuncCount:函数评价次数
所有优化函数
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 44
控制参数 options 的设置
(3) MaxIter: 允许进行迭代的最大次数 ,取值为正整数 .
Options 中常用的几个参数的名称、含义、取值如下 :
(1) Display: 显示水平 . 取值为’ off’时 , 不显示输出 ; 取值为’ iter’时 ,显示每次迭代的信息 ; 取值为’ final’时 ,显示最终结果 . 默认值为’ final’.
(2) MaxFunEvals: 允许进行函数评价的最大次数 ,取值为正整数 .
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 45
例: opts=optimset(‘Display’,’iter’,’TolFun’,1e-8) 该语句创建一个称为 opts 的优化选项结构 , 其中显示参数设为’ iter’, TolFun参数设为 1e-8.
(1) options=optimset(‘optimfun’) 创建一个含有所有参数名 ,并与优化函数 optimfun相关的默认值的选项结构 options.( 2 ) options=optimset(‘param1’,value1,’param2’,value2,...) 创建一个名称为 options 的优化选项参数 , 其中指定的参数具有指定值 , 所有未指定的参数取默认值 .(3)options=optimset(oldops,‘param1’,value1,’param2’, value2,...) 创建名称为 oldops 的参数的拷贝 , 用指定的参数值修改oldops 中相应的参数 .
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 46
1. 一元函数无约束优化问题: mi n f(x) 21 xxx
其中( 3 )、( 4 )、( 5 )的等式右边可选用( 1 )或( 2 )的等式右边。 函数 fminbnd 的算法基于黄金分割法和二次插值法,它要求目标函数必须是连续函数,并可能只给出局部最优解。
常用格式如下:( 1 ) x= fminbnd (fun,x1,x2)( 2 ) x= fminbnd (fun,x1,x2 , options)( 3 ) [x, fval]= fminbnd( ... )( 4 ) [x, fval, exitflag]= fminbnd( ... )( 5 ) [x, fval, exitflag, output]= fminbnd( ... )
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 47
运行结果: xmi n = 3. 9270 ymi n = -0. 0279 xmax = 0. 7854 ymax = -0. 6448
例1 求 f = 2xexsin在0<x<8中的最小值与最大值 主程序为 wliti1.m: f='2*exp(-x).*sin(x)'; fplot(f,[0,8]); % 作图语句 [xmin,ymin]=fminbnd (f, 0,8) f1='-2*exp(-x).*sin(x)'; [xmax,ymax]=fminbnd (f1, 0,8)
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 48
例 2 对边长为 3 米的正方形铁板,在四个角剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大?设剪去的正方形的边长为x,则水槽的容积为: xx)23( 2
建立无约束优化模型为:min y=- xx)23( 2 , 0<x<1.5
解
先编写M 文件 fun0.m 如下 : function f=fun0(x) f=-(3-2*x).^2*x;主程序为 wliti2.m: [x,fval]=fminbnd(@fun0,0,1.5); xmax=x fmax=-fval
运算结果为 : xmax = 0.5000,fmax =2.0000.即剪掉的正方形的边长为 0.5米时水槽的容积最大 , 最大容积为 2 立方米 .
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 49
命令格式为 :( 1 ) x= fminunc( fun,X0 );或 x=fminsearch( fun,X0
)( 2 ) x= fminunc( fun,X0 , options); 或 x=fminsearch( fun,X0 , options)( 3 ) [x, fval]= fminunc( ...); 或 [x, fval]= fminsearch( ...)( 4 ) [x, fval, exitflag]= fminunc( ...); 或 [x, fval, exitflag]= fminsearch( 5 ) [x, fval, exitflag, output]= fminunc( ...); 或 [x, fval, exitflag, output]= fminsearch( ...)
2 、多元函数无约束优化问题
标准型为: min F(X)
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 50
[3] fminunc 为中型优化算法的步长一维搜索提供了两种算法, 由 options 中参数 LineSearchType控制:
LineSearchType=’quadcubic’( 缺省值 ),混合的二次和三 次多项式插值;LineSearchType=’cubicpoly’ ,三次多项式插
•使用 fminunc 和 fminsearch可能会得到局部最优解 .
fminunc 的算法见以下几点说明:[1] fminunc 为无约束优化提供了大型优化和中型优化算法。由options 中的参数 LargeScale控制:
LargeScale=’on’(默认值 ), 使用大型算法LargeScale=’off’(默认值 ), 使用中型算法
[2] fminunc 为中型优化算法的搜索方向提供了 4 种算法,由 options 中的参数 HessUpdate控制:
HessUpdate=’bfgs’(默认值),拟牛顿法的 BFGS公式;HessUpdate=’dfp’ ,拟牛顿法的 DFP公式;HessUpdate=’steepdesc’ ,最速下降法
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 51
例 3 min f(x)=(4x12+2x2
2+4x1x2+2x2+1)*exp(x1)
1 、编写M-文件 fun1.m: function f = fun1 (x) f = exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1); 2 、输入M 文件 wliti3.m 如下 : x0 = [-1, 1]; x=fminunc(@fun1,x0); y=fun1(x) 3 、运行结果 :
x= 0.5000 -1.0000 y = 1.3029e-10
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 52
1. 为获得直观认识,先画出 Rosenbrock 函数的三维图形, 输入以下命令:
[x, y]=meshgri d(-2:0. 1: 2, -1: 0. 1: 3); z=100*(y-x. 2) . 2+(1-x). 2; mesh(x, y, z)
例4 Rosenbrock 函数 f(x1,x2)=100(x2-x1
2)2+(1-x1) 2 的最优解(极小)为 x*=(1,1),极小值为 f *=0.试用 不同算法(搜索方向和步长搜索)求数值最优解.
初值选为 x0=(-1. 2 , 2).
2. 画出 Rosenbrock 函数的等高线图,输入命令: contour(x, y, z, 20) hol d on pl ot(-1. 2, 2, ' o ' ); text(-1. 2, 2, ' start poi nt' ) pl ot(1, 1, ' o' ) text(1, 1, ' sol uti on' )
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 54
3.用 fminsearch 函数求解输入命令 :
f='100*(x(2)-x(1)^2)^2+(1-x(1))^2';
[x,fval,exitflag,output]=fminsearch(f, [-1.2 2])
运行结果 :
x =1.0000 1.0000
fval =1.9151e-010
exitflag = 1
output =
iterations: 108
funcCount: 202
algorithm: 'Nelder-Mead simplex direct search'
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 55
4. 用 fminunc 函数
(1) 建立M-文件 fun2.m
function f=fun2(x)
f=100*(x(2)-x(1)^2)^2+(1-x(1))^2
(2) x = fminunc(@fun2,x0), 其中 x0 是初始值
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 57
Rosenbrock 函数不同算法的计算结果
搜索方向 步 长 搜 索 最 优 解 最 优 值 迭代次数
混 合 二 、 三 次 插 值 ( 0. 9996, 0. 9992) 2. 3109
710
155
BFGS
三 次 插 值 ( 1. 0001, 1. 0002) 2. 3943
810
132
混 合 二 、 三 次 插 值 ( 0 .9 9 9 5, 0 .9 9 9 0 ) 2 .6 2 2 3
710 151
DFP 三 次 插 值 ( 0. 8994, 0. 7995) 0. 0192 204
( - 1. 1634,1. 3610) 4. 6859 204
( 0. 9446, 0. 8920) 0. 0031 8002 最速下降 混 合 二 、 三 次 插 值
( 0. 9959, 0. 9916 1. 8543510
9002
单纯形法 ( 1. 0000, 1. 0000) 1. 9151
1010
202
可以看出,最速下降法的结果最差 .因为最速下降法特别不适合于从一狭长通道到达最优解的情况 .
Matlab 优化工具箱简介(一)
Wei-Shi [email protected]
04/19/23, Page 58
产销量的最佳安排 某厂生产一种产品有甲、乙两个牌号,讨论在产销平衡的情况下如何确定各自的产量,使总利润最大 . 所谓产销平衡指工厂的产量等于市场上的销量 .
符号说明
z(x1, x2)表示总利润;
p1,q1,x1分别表示甲的价格、成本、销量;
p2,q2,x2分别表示乙的价格、成本、销量;
ai j,bi λ, i , ci(i,j =1,2)是待定系数.
Matlab 优化工具箱应用例子(一)
Wei-Shi [email protected]
04/19/23, Page 59
基本假设1 .价格与销量成线性关系
利润既取决于销量和价格,也依赖于产量和成本。按照市场规律,甲的价格 p1会随其销量 x1的增长而降低,同时乙的销量 x2的增长也会使甲的价格有稍微的下降,可以简单地假设价格与销量成线性关系,即: p1 = b1 - a11 x1 - a12 x2 ,b1,a11,a12 > 0,且 a11 > a12;同理, p2 = b2 - a21 x1- a22 x2 ,b2,a21,a22 > 0,且 a22 > a21 .
2 .成本与产量成负指数关系甲 的 成 本 随 其 产 量 的 增 长 而 降 低 , 且 有 一 个 渐 进 值 , 可 以 假 设 为
负 指 数 关 系 , 即 :
0,,, 11111111 crcerq x
同 理 , 0,,, 22222222 crcerq x
Matlab 优化工具箱应用例子(一)
Wei-Shi [email protected]
04/19/23, Page 60
模型建立
若根据大量的统计数据 , 求出系数b1=100,a11=1,a12=0.1,b2=280,a21=0.2,a22=2,r1=30,λ1=0.015,c1=20, r2=100,λ2=0.02,c2=30, 则问题转化为无约束优化问题:求甲 ,乙两个牌号的产量 x1 , x2 ,使总利润 z最大 .
为简化模型 ,先忽略成本 ,并令 a12=0,a21=0, 问题转化为求 : z1 = ( b1 - a11x1 ) x1 + ( b2 - a22x2 ) x2 的极值 . 显然其解为 x1 = b1/2a11 = 50, x2 = b2/2a22 = 70,我们把它作为原问题的初始值 .
总利润为: z(x1,x2)=(p1-q1)x1+(p2-q2)x2
Matlab 优化工具箱应用例子(一)
Wei-Shi [email protected]
04/19/23, Page 61
模型求解 1. 建立M-文件 fun.m: function f = fun(x) y1=((100-x(1)- 0.1*x(2))-(30*exp(-0.015*x(1))+20))*x(1); y2=((280-0.2*x(1)- 2*x(2))-(100*exp(-0.02*x(2))+30))*x(2); f=-y1-y2; 2.输入命令 : x0=[50,70]; x=fminunc(@fun,x0), z=fun(x) 3. 计算结果 : x=23.9025, 62.4977, z=6.4135e+003 即甲的产量为 23.9025,乙的产量为 62.4977, 最大利润为 6413.5.
Matlab 优化工具箱应用例子(一)
Wei-Shi [email protected]
04/19/23, Page 62
1. 二次规划简介
2. 等式约束二次规划
方法 1 直接变量消去法 方法 2 Lagrange 乘子法
带约束性规划优化:二次规划
Wei-Shi [email protected]
04/19/23, Page 63
二次规划是最简单的约束非线性规划问题.
二次规划:
带有二次目标函数和线性约束的最优化问题.
1. 标准形式
1min ( ) ,
2
. . , ,
, .
T T
Ti i
Ti i
q x x Gx g x
s t a x b i E
a x b i I
(1)
其中G是n n 的对称矩阵. ,E I分别对应等式约束和不
等式约束指标集合. , , ,ig x and a i E I 都是n维向量.
二次规划简介
Wei-Shi [email protected]
04/19/23, Page 64
2.求解说明:
如果 Hessian G矩阵正半定,则二次规划(QP)问题存在
全局最优解;
如果 Hessian G矩阵正定,则 QP问题存在唯一的全局最
优解.
原因:
此时目标函数为凸函数,任何 K-T点都是二次规划问题
的极小点.
如果 Hessian矩阵不定时,可能存在非全局的最优解.
二次规划简介
Wei-Shi [email protected]
04/19/23, Page 65
3.二次规划研究的意义
(1) 二次规划问题简单,便于求解.某些较复杂的非线性
规划问题可以转化为求解一系列二次规问题.
(2) 实际应用广泛:
工作计划,时间调度,规模经济学,工程设计以及控制
领域,设施分配问题,选址问题,二次分配问题,微观经济
学的无数问题,人工智能中的决策问题.
二次规划简介
Wei-Shi [email protected]
04/19/23, Page 66
标准形式
1
min ( ) ,2
. . ,
T T
T
q x x Gx g x
s t A x b
(1)
其中 , , , ,n m n m n n nx R b R A R g R G R 且G是对称的,
设 ( )rank A m .
二次规划模型 简介1. 等式约束二次规划问题
Wei-Shi [email protected]
04/19/23, Page 67
对应A的分解为 B
N
AA
A
使得 BA 可逆,则等式约束可写
成:
T TB B N NA x A x b , (2)
由于 1BA 的存在,故知
1( )TB B N Nx A b A x . (3)
将(3)式带入(1)式,可得其等价形式:
1 ˆ ˆ ˆmin2n m
T TN N N
x Rx Gx g x c
. (4)
二次规划模型 简介
方法 1 直接变量消去法:
假定已经找到变量x的一分解: B
N
xx
x
,其中 ,m n m
B Nx R x R .
Wei-Shi [email protected]
04/19/23, Page 68
1 ˆ ˆ ˆmin2n m
T TN N N
x Rx Gx g x c
. (5)
其中 1 1 1ˆ ( )( )T
N N B B NB N B BB Bg g A A g G A A G A b , 1 1 1 1ˆ ( ) ( )T T T T
NN NB B N N B BN N B BB B NG G G A A A A G A A G A A ,
1 1 11ˆ ( ) ( )
2T T T T
B BB B B Bc b A G A b g A b
以及
, , , ,BB BNB B B
N N NNB NN
G Gg x Ag G x A
g x AG G
相应的分解.
如果G正定,则由(5)式,可得唯一解: 1ˆ ˆN N Nx G g .
代入(3)式可得对应的 Bx .
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 69
从而问题的最有解:
1
1
ˆ ˆ
ˆ ˆ
B
N
T T TB B N
x A b A A G gx
x G g
. (6)
设在x处的 Lagrange乘子为,则有
A g Gx (7)
从而(考虑方程组前m行) 1( )B B BB B BN NA g G x G x .
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 70
例 1
2 2 21 2 3
1 2 3
2 3
min
. . 1,
1.
q x x x x
s t x x x
x x
.
解:由等式约束条件,可得 2 3 1 31, 2x x x x . 上式既是变
量分解 1 2 3,B Nx x x x x .
代入二次函数可得
3
2 2 23 3 3min 4 ( 1)
x Rx x x
,
由此可解 3
1
2x . 然后代入 Bx 的表达式,得 3 1
1, ,2 2
x
.
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 71
由A g Gx ,可知
1
2
2 1 0
3 1 1
1 1 1
,
从上式可求得 Lagrange乘子 1 22, 1 .
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 72
消去法优缺点: 优点: 思想简单明了. 缺点:
当 BA 接近于奇异阵的时候,求解 x可能导致数值不稳
定.
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 73
定义 1 Lagrange函数 1
( , ) ( )2
T T T TL x x Gx g x A x b ,
其中是 Lagrange乘子. 稳定点条件产生方程组:
( , ) 0 : 0
( , ) 0 : 0
x
T
L x Gx g A
L x A x b
.
经重新组织,可得线性方程组
0T
G A x g
bA
. (8)
称其中的系数矩阵为 Lagrange矩阵, (8)式成为 KKT方程组.
二次规划模型 简介2. Lagrange 乘子法
Wei-Shi [email protected]
04/19/23, Page 74
如果 Lagrange矩阵的逆存在,且可表示为: 1
0T T
G A H T
A T U
.
则 ,x 的表达式可写成:
T
x Hg Tb
T g Ub
. (9)
当 1G 存在时, , ,H T U的直接表达式为:
1 1 1 1 1
1 1 1
1 1
( ) ,
( ) ,
( ) .
T T
T
T
H G G A A G A A G
T G A A G A
U A G A
.
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 75
1
1
0T T
G A H TK
A T U
.
Lagrange逆矩阵中T和A的关系?
0T
G AK
A
(简化表示!)
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 76
由 1TT A ,因而 TT 是A的左广义逆. 当A正半定时,如果
kx 为任意可行点, 则 T
kA x b .
设梯度向量 k kg g Gx , 则最优解可重新表示为:
k k
Tk
x x Hg
T g
. (10)
(10)式表明: 矩阵H对可行域包含了正确的曲率信息,
因而可以看作是简约逆 Hessian矩阵.
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 77
为了避免矩阵求解带来的数值不稳定性,可用逐步分解的方法求解(KKT方程组):
0T
G A x g
bA
. (8)
方法: 设G正定, 先求出G的 TLDL 分解, 再利用此分解因子消去(8)
式中非对角线元素 A , TA . 此时右下角对角块从0变成负定矩阵 1TA G A .然后再对其做
ˆ ˆ TLDL 分解. 得到: TK LDL ,
0,
ˆ ˆT
L DL D
B L D
,
B由LDB A 定义, 并易于通过回代确定.
二次规划模型 简介
Wei-Shi [email protected]
04/19/23, Page 78
Matlab 优化工具箱简介(二)
类 型 模 型 基本函数名
二次规划 Mi n
2
1 xTHx+cTx
s. t. Ax<=b X=quadprog(H, c, A, b)
约束极小 (非线性规划)
Mi n F(X) s. t. G(X)<=0
X=fmi ncon(‘ FG’, X0)
达到目标问题 Mi n r
s. t. F(x)-wr<=goal X=fgoal attai n( ‘F’, x, goal , w)
极小极大问题
Mi n max {Fi (x)} X {Fi (x)}
s. t. G(x)<=0 X=fmi ni max( ‘FG’, x0)
Wei-Shi [email protected]
04/19/23, Page 79
优化函数的输入变量变量 描 述 调用函数
f 线性规划的目标函数f *X 或二次规划的目标函
数X’*H*X+f*X 中线性项的系数向量 l i nprog, quadprog
fun 非线性优化的目标函数. fun必须为行命令对象或M文件、嵌入函数、或MEX文件的名称
fmi nbnd, fmi nsearch, fmi nunc, fmi ncon, l sqcurvefi t, l sqnonl i n,
fgoal attai n, fmi ni max
H 二次规划的目标函数X’*H*X+f*X 中二次项的系
数矩阵 quadprog
A, b A矩阵和b向量分别为线性不等式约束:
bAX 中的系数矩阵和右端向量 l i nprog, quadprog, fgoal attai n,
fmi ncon, fmi ni max
Aeq, beq Aeq矩阵和beq向量分别为线性等式约束:
beqXAeq 中的系数矩阵和右端向量 l i nprog, quadprog, fgoal attai n,
fmi ncon, fmi ni max
vl b, vub X的下限和上限向量:vl b≤ X≤ vub l i nprog, quadprog, fgoal attai n, fmi ncon, fmi ni max, l sqcurvefi t,
l sqnonl i n X0 迭代初始点坐标 除fmi nbnd外所有优化函数
x1, x2 函数最小化的区间 fmi nbnd opti ons 优化选项参数结构,定义用于优化函数的参数 所有优化函数
Matlab 优化工具箱简介(二)
Wei-Shi [email protected]
04/19/23, Page 80
用MATLAB软件求解 , 其输入格式如下 : 1. x=quadprog(H,C,A,b); 2. x=quadprog(H,C,A,b,Aeq,beq); 3. x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB); 4. x=quadprog(H,C,A,b, Aeq,beq ,VLB,VUB,X0); 5. x=quadprog(H,C,A,b, Aeq,beq ,VLB,VUB,X0,options); 6. [x,fval]=quaprog(...); 7. [x,fval,exitflag]=quaprog(...); 8. [x,fval,exitflag,output]=quaprog(...);
标准型为: Min Z= 2
1 XTHX+cTX
s.t. AX<=b beqXAeq
VLB≤ X≤ VUB
Matlab 优化工具箱简介(二)
Wei-Shi [email protected]
04/19/23, Page 81
Matlab中求解二次规划的命令是 [X,FVAL]=QUADPROG(H,f,A,b,Aeq,beq,LB,UB,X0,OPTIONS) X的返回值是向量 x,FVAL的返回值是目标函数在 X处的值。 (具体细节可以参看在Matlab指令中运行 help quadprog后的帮助)。
例 求解二次规划
0,
94
3
36442)( min
21
21
21
212
2212
1
xx
xx
xx
x-x-xxx-xxf
Matlab 优化工具箱简介(二)
Wei-Shi [email protected]
04/19/23, Page 82
解 编写如下程序: h=[4,-4;-4,8]; f=[-6;-3]; a=[1,1;4,1]; b=[3;9];
[x,value]=quadprog(h,f,a,b,[],[],zeros(2,1))
求得
1.02501)( Min,
0500.1
9500.1
xfx
Matlab 优化工具箱简介(二)
Wei-Shi [email protected]
04/19/23, Page 84
1. 首先建立 M文件 fun.m, 定义目标函数 F( X) :function f=fun(X);f=F(X);
标准型为: min F(X)
s.t AX<=b, beqXAeq , G(X) 0 , Ceq(X)=0, VLBXVUB.
其中 X 为 n 维变元向量, G(X)与 Ceq(X)均为非线性函数组成的向量,其它变量的含义与线性规划、二次规划中相同 .用 Matlab 求解上述问题,基本步骤分三步:
2. 若约束条件中有非线性约束:G(X)0或Ceq(X)=0,则建立M文件nonlcon.m定义函数G(X)与Ceq(X): function [G,Ceq]=nonlcon(X) G=... Ceq=...
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 85
3. 建立主程序 .非线性规划求解的函数是 fmincon,命令的基本格式如下: (1) x=fmincon(@fun,X0,A,b) (2) x=fmincon(@fun,X0,A,b,Aeq,beq) (3) x=fmincon(@fun,X0,A,b, Aeq,beq,VLB,VUB) (4) x=fmincon(@fun,X0,A,b,Aeq,beq,VLB,VUB,@nonlcon)(5)x=fmincon(@fun,X0,A,b,Aeq,beq,VLB,VUB,@nonlcon,options)
(6) [x,fval]= fmincon(...) (7) [x,fval,exitflag]= fmincon(...) (8)[x,fval,exitflag,output]= fmincon(...)
输出极值点 M文件 迭代的初值 参数说明变量上下限
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 86
注意:[1] fmincon 函数提供了大型优化算法和中型优化算法。默认时,若在 fun 函数中提供了梯度( options参数的 GradObj设置为’ on’),并且只有上下界存在或只有等式约束, fmincon 函数将选择大型算法。当既有等式约束又有梯度约束时,使用中型算法。
[2] fmincon 函数的中型算法使用的是序列二次规划法。在每一步迭代中求解二次规划子问题,并用 BFGS 法更新拉格朗日 Hessian 矩阵。
[3] fmincon 函数可能会给出局部最优解,这与初值 X0 的选取有关。
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 87
1、写成标准形式:
s.t.
0
0
54
632
21
21
xx
xx
2
1
0
0
x
x
22
2121 2
121
2min xxxxf
22
2121 2
1
2
12min xxxxf
2x1+3x2 6 s.t x1+4x2 5
x1,x2 0
例
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 88
2、先建立 M-文件 fun3.m: function f=fun3(x); f=-x(1)-2*x(2)+(1/2)*x(1)^2+(1/2)*x(2)^23、再建立主程序 youh2.m : x0=[1;1]; A=[2 3 ;1 4]; b=[6;5]; Aeq=[];beq=[]; VLB=[0;0]; VUB=[]; [x,fval]=fmincon(@fun3,x0,A,b,Aeq,beq,VLB,VUB)4、运算结果为: x = 0.7647 1.0588 fval = -2.0294
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 89
1.先建立 M文件 fun4.m, 定义目标函数 : function f=fun4(x); f=exp(x(1)) *(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1);
)12424()( 22122
21
1 xxxxxexf x
x1+x2=0
s.t. 1.5+x1x2 - x1 - x2 0
-x1x2 –10 0
例
2 .再建立 M文件 mycon.m 定义非线性约束: function [g,ceq]=mycon(x) g=[x(1)+x(2);1.5+x(1)*x(2)-x(1)-x(2);-x(1)*x(2)-10];
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 90
3 .主程序 youh3.m 为 :x0=[-1;1];A=[];b=[];Aeq=[1 1];beq=[0];vlb=[];vub=[];[x,fval]=fmincon(@fun4,x0,A,b,Aeq,beq,vlb,vub,@mycon)
4. 运算结果为: x = -1.2250 1.2250 fval = 1.8951
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 91
例
100 ,50
07
025 ..
2min
21
22
212
22
211
21
xx
xxXg
xxXgts
xxXf
1 .先建立 M-文件 fun.m 定义目标函数 : function f=fun(x); f=-2*x(1)-x(2);
2 .再建立 M文件 mycon2.m 定义非线性约束: function [g,ceq]=mycon2(x) g=[x(1)^2+x(2)^2-25;x(1)^2-x(2)^2-7];
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 92
3. 主程序 fxx.m 为 :
x0=[3;2.5];
VLB=[0 0];VUB=[5 10];
[x,fval,exitflag,output]
=fmincon(@fun,x0,[],[],[],[],VLB,VUB,@mycon2)
一般非线性规划问题:Matlab
Wei-Shi [email protected]
04/19/23, Page 93
4. 运算结果为 : x = 4.0000 3.0000fval =-11.0000exitflag = 1output = iterations: 4 funcCount: 17 stepsize: 1 algorithm: [1x44 char] firstorderopt: [] cgiterations: []
线性鉴别分析( LDA )
LDA 要最大化如下准则: 两类的中心距离最大化同时样本到各自类内中心的距离最小化
线性鉴别分析( LDA )
2
2
2
1
2
21
~~
~~)(
ss
mmwJ
it
D
t
iYyii
iin
yn
m mwxwx
11~
22 ~~ iYy
ii mys
线性鉴别分析( LDA )
进一步推导
Wei-Shi [email protected]
04/19/23, Page 96
wSw
wmmmmw
mwmw
Bt
tt
ttmm
2121
22121
~~
tB 2121 mmmmS
iD
tiii
xm-xm-xS
21 SSS W
wSwwmxmxw
mwxw
x
x
itt
iD
it
Di
tti
i
i
s
22~wSw Wtss 2
22
1~~
Wei-Shi [email protected]
04/19/23, Page 103
进一步课程和读物
后续课程:运筹学(数计学院),最优化计算 相关课程:数值分析 其他资料:
http://en.wikipedia.org/wiki/Karush%E2%80%93Kuhn%E2%80%93Tucker_conditions
http://en.wikipedia.org/wiki/Lagrange_multiplier http://en.wikipedia.org/wiki/Dual_problem
Wei-Shi [email protected]
04/19/23, Page 104
数学建模中的层次分析法
层次分析法简介
层次分析法基本原理(结合旅游地点选择的例子)
层次分析法的其他应用例子
Wei-Shi [email protected]
04/19/23, Page 105
O( 选择旅游地 )
P2
黄山P1
桂林P3
北戴河
C3
居住C1
景色C2
费用C4
饮食C5
旅途
例 . 选择旅游地 如何在 3 个目的地中按照景色、费用、居住条件等因素选择 .
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 106
确定权系数 设 x1,x2,…xn为对应各因素的决策变量。其线性
组合: y=w1x2+w2x2+ …+wnx
是综合评判函数。 w1,w2, … wn是权重系数,其满足:
wi0 ,
11
n
iiw
层次分析法目标
Wei-Shi [email protected]
04/19/23, Page 107
一个优化的问题要考虑的因素很多
在作比较、判断、评价和决策时,这些因素的重要性、影响力或者优先程度往往难以量化
两两不用因素的相互之间的比较易于所有因素放在一起的比较
数学建模中的层次分析法
Wei-Shi [email protected]
04/19/23, Page 108
层次分析法简介
层次分析法基本原理
分解 建立
确定 计算 判断
实际问题 层次结构多个因素
诸因素的相 对重要性 权向量 综合决策
Wei-Shi [email protected]
04/19/23, Page 109
层次分析法简介 层次分析法是萨蒂( saaty) 等人 20 世纪 70年代提
出的一种决策方法。它是将半定性、半定量问题转化为定量问题的有效途径,它将各种因素层次化,并逐层比较多种关联因素,为分析和预测事物的发展提供可的定量依据。
层次分析法在决策工作中有广泛的应用。主要用于确定综合评价的权重系数。层次分析法所用数学工具主要是矩阵运算。
Wei-Shi [email protected]
04/19/23, Page 110
1.层次分析法( AHP)是美国运筹学家匹茨堡大学教授萨蒂(T.L.Saaty)于上世纪 70年代初,为美国国防部研究“根据各个工业部门对国家福利的贡献大小而进行电力分配”课题时,应用网络系统理论和多目标综合评价方法,提出的一种层次权重决策分析方法。
2.这种方法的特点是在对复杂的决策问题的本质、影响因素及其内在关系等进行深入分析的基础上,利用较少的定量信息使决策的思维过程数学化,从而为多目标、多准则或无结构特性的复杂决策问题提供简便的决策方法。
3.是对难于完全定量的复杂系统作出决策的模型和方法。
层次分析法简介
Wei-Shi [email protected]
04/19/23, Page 111
4.层次分析法是社会、经济系统决策中的有效工具。其特征是合理地将定性与定量的决策结合起来,按照思维、心理的规律把决策过程层次化、数量化。是系统科学中常用的一种系统分析方法。
层次分析法简介
Wei-Shi [email protected]
04/19/23, Page 112
决策是指在面临多种方案时需要依据一定的标准选择某一种方案。
日常生活中有许多决策问题。举例 1. 在惠普、戴尔、联想和宏基四个牌号的电脑中选购一种。
要考虑品牌的信誉、电脑的功能、价格和耗电量。 2. 在桂林、泰山和北戴河三处选择一个旅游点。要考虑景
点的景色、居住的环境、饮食的特色、交通便利和旅游的费用。 3. 在基础研究、应用研究和数学教育中选择一个领域申报
科研课题。要考虑成果的贡献(实用价值、科学意义),可行性(难度、周期和经费)和人才培养。
层次分析法简介
Wei-Shi [email protected]
04/19/23, Page 113
层次分析法根据问题的性质和要达到的总目标,将问题分解为不同的组成因素,并按照因素间的相互关联影响以及隶属关系将因素按不同层次聚集组合,形成一个多层次的分析结构模型,从而最终使问题归结为最低层 ( 供决策的方案、措施等 ) 相对于最高层 ( 总目标 ) 的相对重要权值的确定或相对优劣次序的排定。
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 114
层次分析法的步骤和方法
运用层次分析法构造系统模型时,大体可以分为以下四个步骤:
1. 建立层次结构模型 2. 构造判断 ( 成对比较 )矩阵 3. 层次单排序及其一致性检验 4. 层次总排序及其一致性检验
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 115
1. 建立层次结构模型 将决策的目标、考虑的因素(决策准则)和决策对象按它们之间的相互关系分为最高层、中间层和最低层,绘出层次结构图。
最高层:决策的目的、要解决的问题。 最低层:决策时的备选方案。 中间层:考虑的因素、决策的准则。 对于相邻的两层,称高层为目标层,低层为因素层。 下面举例说明。
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 116
目标层 O( 选择旅游地 )
P2
黄山P1
桂林P3
北戴河
准则层
方案层
C3
居住C1
景色C2
费用C4
饮食C5
旅途
例 . 选择旅游地 如何在 3 个目的地中按照景色、费用、居住条件等因素选择 .
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 117
将决策问题分为 3 个或多个层次:最高层:目标层。表示解决问题的目的,即层次分析 要达到的总目标。通常只有一个总目标。中间层:准则层、指标层、…。表示采取某种措施、 政策、方案等实现预定总目标所涉及的中间环节; 一般又分为准则层、指标层、策略层、约束层等。最低层:方案层。表示将选用的解决问题的各种措施、政策、方案等。通常有几个方案可选。 每层有若干元素,层间元素的关系用相连直线表示。
层次分析法的思维过程:
层次分析法所要解决的问题是关于最低层对最高层的相对权重问题,按此相对权重可以对最低层中的各种方案、措施进行排序,从而在不同的方案中作出选择或形成选择方案的原则。
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 118
2. 构造判断 ( 成对比较 ) 矩阵 在确定各层次各因素之间的权重时,如果只是定性的结果,则常常不容易被别人接受,因而 Santy等人提出:一致矩阵法,即:1) 不把所有因素放在一起比较,而是两两相互比较2) 对此时采用相对尺度,以尽可能减少性质不同的诸因 素相互比较的困难,以提高准确度。
心理学家认为成对比较的因素不宜超过 9 个,即每层不要超过 9 个因素。
判断矩阵是表示本层所有因素针对上一层某一个因素的相对重要性的比较。判断矩阵的元素 aij用 Santy的 1—
9 标度方法给出。
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 119
2 4 6 8
比较尺度 aij Saaty等人提出 1~9尺度—— aij 取值 1,2,… ,
9 及其互反数 1,1/2, … , 1/9
尺度 1 3 5 7 9 ija相同 稍强 强 明显强 绝对强的重要性ji CC :
ji CC :~aij = 1,1/2, ,…1/9 的重要性与上面相反• 心理学家认为成对比较的因素不宜超过 9 个• 用 1~3,1~5,…1~17,…,1p~9p (p=2,3,4,5), d+0.1~d+0.9 (d=1,2,3,4)等27 种比较尺度对若干实例构造成对比较阵,算出权向量,与实际对比发现, 1~9尺度较优。
• 便于定性到定量的转化:
成对比较阵和权向量
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 120
判断矩阵元素 aij 的标度方法标度 含义
1 表示两个因素相比,具有同样重要性
3 表示两个因素相比,一个因素比另一个因素稍微重要
5 表示两个因素相比,一个因素比另一个因素明显重要
7 表示两个因素相比,一个因素比另一个因素强烈重要
9 表示两个因素相比,一个因素比另一个因素极端重要
2 , 4 , 6 ,8
上述两相邻判断的中值
倒数 因素 i 与 j 比较的判断 aij ,则因素 j 与 i 比较的判断aji=1/aij
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 121
1135/13/1
1125/13/1
3/12/117/14/1
55712
3342/11
A
ij
jiijnnij aaaaA
1,0,)(
设要比较各准则 C1,C2,… , Cn 对目标 O 的重要性
ijji aCC :
A~成对比较阵
A 是正互反阵
要由 A确定 C1,… , Cn对 O 的权向量
选择旅游地
目标层 O( 选择旅游地 )
准则层C3
居住C1
景色C2
费用C4
饮食C5
旅途
C1 C2 C3 C4 C5C1
C2
C3
C4
C5
元素之间两两对比,对比采用相对尺度
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 122wAw
n
nnn
n
n
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
A
21
2
2
2
1
2
1
2
1
1
1
成对比较完全一致的情况nkjiaaa ikjkij ,,2,1,,, 满足
的正互反阵 A称一致阵,如 • A 的秩为 1, A 的唯一非零特征根为
n• A 的任一列向量是对应于 n 的特征向量• A 的归一化特征向量可作为权向量
一致阵性质
成对比较阵和权向量
定理: n 阶一致阵的唯一非零特征根为 n ,且秩为1定理: n 阶正互反阵 A 的最大特征根 n, 当且仅当 =n时 A 为一致阵
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 123
n
nnn
n
n
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
A
21
2
2
2
1
2
1
2
1
1
1
712
42/11
A成对比较的不一致情况
):(2/1 2112 CCa ):(4 3113 CCa ):(8 3223 CCa
一致比较 不一致
允许不一致,但要确定不一致的允许范围考察完全一致的情况
nwwwW ,,)1( 21
jiij wwa /令
权向量~),,( 21
T
nwwww
成对比较阵和权向量
Wei-Shi [email protected]
04/19/23, Page 124
3. 层次单排序及其一致性检验 对应于判断矩阵最大特征根 λmax的特征向量,经归一化( 使向量中各元素之和等于 1)后记为 W 。 W 的元素为同一层次因素对于上一层次因素某因素相对重要性的排序权值,这一过程称为层次单排序。 能否确认层次单排序,需要进行一致性检验,所谓一致性检验是指对 A 确定不一致的允许范围。 对于不一致 (但在允许范围内 ) 的成对比较阵 A ,建议用对应于最大特征根的特征向量作为权向量 w ,即
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 125
一致性检验 对 A 确定不一致的允许范围已知: n 阶一致阵的唯一非零特征根为n可证: n 阶正互反阵最大特征根 n, 且 =n 时为一致阵
1
n
nCI
定义一致性指标 : CI 越大,不一致越严重
RI 0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51
n 1 2 3 4 5 6 7 8 9 1110
为衡量 CI 的大小,引入随机一致性指标 RI——随机模拟得到 aij , 形成 A ,计算 CI 即得 RI。
定义一致性比率 CR = CI/RI 当 CR<0.1 时,通过一致性检验
Saaty 的结果如下
Wei-Shi [email protected]
04/19/23, Page 126
“选择旅游地”中准则层对目标的权向量及一致性检验
1135/13/1
1125/13/1
3/12/117/14/1
55712
3342/11
A
准则层对目标的成对比较阵
最大特征根 =5.073权向量 ( 特征向量 )w =(0.263,0.475,0.055,0.090,0.110)T
018.015
5073.5
CI一致性指标随机一致性指标 RI=1.12 (查表 )
一致性比率 CR=0.018/1.12=0.016<0.1通过一致性检验
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 127
组合权向量记第 2层(准则)对第 1层(目标)的权向量为 T
nwww ),,( )2()2(
1
)2( 同样求第 3层 ( 方案 ) 对第 2层每一元素 (准则 ) 的权向量
12/15/1
212/1
521
1B
方案层对 C1(景色 ) 的成对比较阵
138
3/113
8/13/11
2B
方案层对 C2( 费用 ) 的成对比较阵
…Cn
…Bn
最大特征根 1 2 … n
权向量 w1(3) w2
(3) … wn(3)
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 128
目标层 O( 选择旅游地 )
P2
黄山P1
桂林P3
北戴河
准则层
方案层
C3
居住C1
景色C2
费用C4
饮食C5
旅途
例 . 选择旅游地 如何在 3 个目的地中按照景色、费用、居住条件等因素选择 .
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 129
(2) 考虑第 3 层对第 2 层
由 1–9 尺度得
13131
312
311
138
3113
81311
12151
2121
521
321 BBB
144
4111
4111
1141
1131
431
54 BB
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 130
第 3层对第 2层的计算结果k
)3(
kw
k
kCI
1
0.5950.2770.129
3.005
0.003 0.001 0 0.005 0
3.002
0.6820.2360.082
2
3
0.1420.4290.429
3
3.009
0.1750.1930.633
4
3
0.6680.1660.166
5
RI=0.58 (n=3), CIk 均可通过一致性检验
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 131
权向量矩阵
)3,009.3,3,002.3,006.3()3(max
667.0174.0142.0682.0128.0
167.0192.0429.0236.0276.0
167.0634.0429.0082.0595.0)3(W
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 132
( 3 )组合权向量 : 推导第 3 层对第一层的组合
455.0
245.0
299.0
109.0
098.0
054.0
476.0
264.0
667.0174.0142.0682.0128.0
167.0192.0429.0236.0276.0
167.0634.0429.0082.0595.0)3(
层次分析法基本原理
( ) ( ) ( 1) , 3, 4,....k k kw W w k 一般情况:
Wei-Shi [email protected]
04/19/23, Page 133
( 4 )组合一致性检验 : 确定组合全向量是否可以作为最终决策依据
00176.0
109.0
098.0
054.0
476.0
264.0
0005.00001.0003.0)3(
CI
1.0019.058.0
00176.0016.0
58.0
)3(
)3(
CR
RI
层次分析法基本原理
( )( ) ( 1)
( ), 3, 4,....
kk k
k
CICR CR p
RI
Wei-Shi [email protected]
04/19/23, Page 134
第 3层对第 2层的计算结果k
)3(
kw
k
kCI
1
0.5950.2770.129
3.005
0.003 0.001 0 0.005 0
3.002
0.6820.2360.082
2
3
0.1420.4290.429
3
3.009
0.1750.1930.633
4
3
0.6680.1660.166
5
组合权向量
RI=0.58 (n=3), CIk 均可通过一致性检验
w(2) 0.2630.4750.0550.0900.110
方案 P1 对目标的组合权重为 0.5950.263+ …=0.300
方案层对目标的组合权向量为 (0.300, 0.246, 0.456)T
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 135
旅游决策问题计算结果
权向量 C 对U 0.264 0.476 0.054 0.098 0.109
λm(2) CI(2) CR(2)
5.072
0.018 0.016
准则 C
方案 PC1 C2 C3 C4 C5
组合权向量P 对U
权向量P对C
P1 0.595 0.082 0.429 0.634 0.167 0.299
P2 0.276 0.236 0.429 0.192 0.167 0.245
P30.122 0.682 0.142 0.174 0.667 0.455
λm(3) 3.006 3.002 3 3.009 3
CR(3)CI(3) 0.003 0.001 0 0.005 0
RI(3) 0.58 0.58 0.58 0.58 0.58 0.019
层次分析法基本原理
Wei-Shi [email protected]
04/19/23, Page 137
层次分析法的注意点1 )建立层次分析结构模型
深入分析实际问题,将有关因素自上而下分层(目标—准则或指标—方案或对象),上层受下层影响,而层内各因素基本上相对独立。
2 )构造成对比较阵用成对比较法和 1~9尺度,构造各层对上一层每一因素的成对比较阵。
3 )计算权向量并作一致性检验对每一成对比较阵计算最大特征根和特征向量,作一致性检验,若通过,则特征向量为权向量。
4 )计算组合权向量(作组合一致性检验 * )组合权向量可作为决策的定量依据。
层次分析法基本步骤 : 归纳
Wei-Shi [email protected]
04/19/23, Page 138
对权重系数的量化过程( 1 )成对比较 从 x1,x2,…xn中任取 xi与 xj比较它们对于 y 贡献
(重要程度)的大小,按照以下标度给 xi/xj赋值: xi/xj= 1 ,认为“ xi与 xj重要程度相同” xi/xj= 3 ,认为“ xi比 xj重要程度略大” xi/xj= 5 ,认为“ xi比 xj重要程度大” xi/xj= 7 ,认为“ xi比 xj重要程度大很多” xi/xj= 9 ,认为“ xi比 xj重要程度绝对大” 当比值为 2, 4, 6 , 8 时认为介于前后中间状态。
层次分析法基本步骤 : 归纳
Wei-Shi [email protected]
04/19/23, Page 139
(2) 建立逆对称矩阵
由 xi/xj建立 n阶方阵A
(3) 求特征值,特征根按下列方法求向量迭代序列: e0=( 1/n 1/n … 1/n)T
e’k=Aek-1 || e’
k||为Aek-1 的 n个分量之和 ek= e’
k / || e’k|| , k=1,2, …
数列{ ek}是收敛的,记其极限为 e.且记 e=(a1 a2 … an)
于是取权重系数 wi=ai
层次分析法基本步骤 : 归纳
Wei-Shi [email protected]
04/19/23, Page 140
国家综合实力
国民
收入军事
力量
科技
水平社会
稳定
对外
贸易
美、俄、中、日、德等大国
例 1 国家实力分析
层次分析法其他应用例子
Wei-Shi [email protected]
04/19/23, Page 142
过河的效益 A
经济效益B1
社会效益B2
环境效益B3
节省时间C1
收入C2
岸间商业C3
当地商业C4
建筑就业C5
安全可靠C6
交往沟通C7
自豪感 C8
舒适C9
进出方便C10
美化C11
桥梁D1
隧道D2
渡船D3
( 1 )过河效益层次结构
例 3 横渡江河、海峡方案的抉择
层次分析法其他应用例子
Wei-Shi [email protected]
04/19/23, Page 143
过河的代价 A
经济代价 B1
环境代价B3
社会代价B2
投入资金C1
操作维护C2
冲击渡船业C3
冲击生活方式C4
交通拥挤C5
居民搬迁C6
汽车排放物C7
对水的污染C8
对生态的破坏C9
桥梁D1
隧道D2
渡船D2
( 2 )过河代价层次结构
例 3 横渡江河、海峡方案的抉择
层次分析法其他应用例子
Wei-Shi [email protected]
04/19/23, Page 144待评价的科技成果
直接
经济
效益
C11
间接
经济
效益
C12
社会
效益
C13
学识
水平
C21
学术
创新
C22
技术
水平
C23
技术
创新
C24
效益 C1 水平 C2 规模C3
科技成果评价例 4 科技成果的综合评价
层次分析法其他应用例子
Wei-Shi [email protected]
04/19/23, Page 149
上机实验 (1)
试用 quadprog, fmincon 解以下问题
22
2121 2
1
2
12min xxxxf
2x1+3x2 6 s.t x1+4x2 5
x1,x2 0
Wei-Shi [email protected]
04/19/23, Page 151
Rosenbrock 函数不同算法的计算结果
搜索方向 步 长 搜 索 最 优 解 最 优 值 迭代次数
混 合 二 、 三 次 插 值 ( 0. 9996, 0. 9992) 2. 3109
710
155
BFGS
三 次 插 值 ( 1. 0001, 1. 0002) 2. 3943
810
132
混 合 二 、 三 次 插 值 ( 0 .9 9 9 5, 0 .9 9 9 0 ) 2 .6 2 2 3
710 151
DFP 三 次 插 值 ( 0. 8994, 0. 7995) 0. 0192 204
( - 1. 1634,1. 3610) 4. 6859 204
( 0. 9446, 0. 8920) 0. 0031 8002 最速下降 混 合 二 、 三 次 插 值
( 0. 9959, 0. 9916 1. 8543510
9002
单纯形法 ( 1. 0000, 1. 0000) 1. 9151
1010
202
上机实验( 2 )
Wei-Shi [email protected]
04/19/23, Page 152
Exercise ( 二选一 )
开放式问题 1: 中国是否应该就钓鱼岛与日本开战 收集相关数据给出合理的指标,要利用收集的数据做支持 分析结果
Wei-Shi [email protected]
04/19/23, Page 153
Exercise ( 二选一 )
开放性问题 2 : 查找资料,分析以下文献中多类LDA 建模的最优化解(给出推导过程),并应用到 ORL 数据库中,进行多类的人脸识别
参考文献: Aleix M. MartõÂnez, Avinash C. Kak, “PCA versus LDA,” IEEE Trans. on Pattern Analysis and Machine Intelligence (PAMI), 2000
参考书:模式识别,张学工版
比如: http://www.amazon.cn/%E6%A8%A1%E5%BC%8F%E8%AF%86%E5%88%AB-%E5%BC%A0%E5%AD%A6%E5%B7%A5/dp/B0040GJX7Q/ref=sr_1_1?ie=UTF8&qid=1378771167&sr=8-1&keywords=%E6%A8%A1%E5%BC%8F%E8%AF%86%E5%88%AB+%E5%BC%A0%E5%AD%A6%E5%B7%A5
Wei-Shi [email protected]
04/19/23, Page 154
That is all!
谢谢大家!
PS :作业最后提交期限: 9 月 22日, 2014年( 以这个为准)