第七章 单纯形优化法
? 发展简史
? 1962年,Spendley提出基本单纯形法
? 1965年,Nelder等提出改进单纯形法
? 之后,Routh提出加权形心法与控制加权形心

§ 7-2 基本单纯形
? 一、双因素基本单纯形法
? 如果我们有一个试验设计,只选有两个影响
因素,即因素数为 2。分别取值 a1和 a2作为试验
的初点。记为 A(a1,a2)。对其余两个点分别设为
B和 C,再设三角形的边长为 a(步长 )。那么 B、
C点就可以计算出来
? 假设 AB,AC,BC间距均为 ?,等边三角形可以算出
B点为,
? B=(a1+p,a2+q)
? 根据对称性可知,
? C=(a1+q,a2+p)
? 可以根据等边三角形性质解得,
31
22
( 9 1 )
31
22
qa
pa
? ?
??
?
??
??
?
?
?
a2+p
a2+q
a2
a1+p a1+q a1
因素 2
因素 1
A
B
C
D
E o
? ?
?
? 由 A,B,C三点构成得单纯形称为初始单纯形
? 首先在 A,B,C三点下分别试验,得出三个响应值,比
较其大小,找出最坏响应值的点称为坏点
? 此处设 A为坏点,去掉 A点并取 A的对称点 D点作为新试
验点,比较 B,C,D三点响应值的好坏
? 此处设 C为坏点,去点 C点,取其反点 E,此时 C,D,E
三点又构成新的单纯形
? …………
? 重复以上结果,最终达到优化试验的目的
? 二、新试验点的计算方法
? 以初始单纯形 A,B,C为例,设 A为坏点,
A应该去掉,求其反射点 D,此时
? A(a1,a2),B=(a1+p,a2+q),C=(a1+q,a2+p)
? D=B+C-A=(a1+p+q,a2+p+q)
? E=B+D-C=(a1+2p,a2+2q)
? 即,[新试验点 ]= [留下各点之和 ]- [去掉点 ](9-8)
? 三、多因素基本单纯形
? 设有 n个因素 n+ 1个定点构成的 n维空间单纯形,
设有一点 A=(a1,a2,a3,… an),步长为 a
? 则其余各点为,
? B=(a1+p,a2+q,a3+q,… … an+q)
? C=(a1+q,a2+p,a3+q,… … an+q)
? (n)=(a1+q,a2+q,… an-1+p,an+q)
? (n+1)=(a1+q,a2+q,a3+q,… … an+p)
? 其中
11
2
( 9 8 )
11
2
nn
qa
n
n
pa
n
? ? ? ?
??
??
??
???
?
? ?
?
?新点计算
[新坐标点 ]= 2× [n留下点的坐标和 ]/n
- [去掉点坐标 ] (9-11)
? 四,n,p,q取值对应表
? 由 (9-8) 我们可以算出 n取不同值的 p,q的取值
11
2
( 9 8 )
11
2
nn
qa
n
n
pa
n
? ? ? ?
??
??
??
???
?
? ?
?
n
2
3
4
5
6
7
8
p q n
9
10
11
12
13
14
15
p q
0.966 ?
0.943 ?
0.926 ?
0.911 ?
0.901 ?
0.892 ?
0.883 ?
0.259 ?
0.236 ?
0.219 ?
0.204 ?
0.194 ?
0.185 ?
0.176 ?
0.878 ?
0.872 ?
0.865 ?
0.861 ?
0.855 ?
0.854 ?
0.848 ?
0.171 ?
0.165 ?
0.158 ?
0.154 ?
0.148 ?
0.147 ?
0.141 ?
n,q,p取值对应表
? 五、小结
? 用前面的例子,对两因素问题 A,B,C构成初始单纯形,
在此三点上进行试验
? 规则 1:去掉最坏点,用其对称反射点作新试点
? 例 A,B,C中,A为最坏点,去掉 A点并取 A的对称点 D点作
为新试验点。
? D= [留下各点之和 ]- [去掉点 ]= B+ C- A
? 在 B,C,D三角形中继续使用规则 1,如果 C为坏点,去点 C
点,取其反点 E,此时 C,D,E三点又构成新的单纯形。
? 如果最坏点为 D那么对称点就会返回到与 A重合,此时改用规
则 2
? 规则 2:去掉次坏点,用其对称反射点作新试点对称计
算公式与前面相同
? 经过反复使用后,如果有一个点老是保留下来,必须使
用规则 3
? 规则 3:重复、停止和缩短步长
? 一般一个点劲 3次单纯形后仍未被淘汰,它可能是一个
很好点,也可能是偶然性或试验误差导致的假象。
? 此时需要重复试验:结果不好,淘汰;结果已很满意则
停止试验
? 反之则以它为起点缩短步长,继续试验
? 六、特殊方法
? 前面介绍的单纯形是正规的,任意两点间的
距离一样,实际上,这个要求可以不要。尤其
是由于各个因素所取的量纲不一样(例如一个
因素是温度( ℃ ),另一个因素是时间(秒)。
即使量纲一样所取的单位也可以不一样。
? (一)直角单纯形法
? 我们考虑双因素模型,开始不从正三角形出发,而是
从一个直角三角形出发,其顶点取值如下,
? ?=(a1,a2)
? ?=(a1+p1,a2)
? ?=(a1,a2+p2)
? 用图表示如下
a2+p2
a2
a1+2p1 a1+p1 a1
因素 2
因素 1
? ?
? ?
?
?
? 同样比较三个顶点响应值的结果,若 ?最坏,则新点 ?
就用对称公式
? ?=?+?-?=(a1+p1,a2+p2)
? 在得到 ?点后,再用 ?,?,?三点试验,比较其结果,
若 ?最坏,则取其对称点 ?做新试验点
? ?=?+?-?=(a1+2p1,a2)
? ?,?,?构成一个新单纯形,比较其结果,若 ?最坏,
则用规则 2去掉次坏点,若次坏点为 ?,则新点
? ?=?+?-?=(a1+2p1,a2-p2)
? 如此等等,有时还会使用规则 3,直至结果满意为止。
? 一般在任意 n个因素时
? ?=(a1,a2,a3,… an)
? ?=(a1+p1,a2,a3,… … an)
? ?=(a1,a2+p2,a3,… … an)
? … … … …
? (n)=(a1,a2,… an-1+pn-1,an)
? (n+1)=(a1,a2,a3,… … an+pn)
? (二)、双水平单纯形法
§ 7-3 改进单纯形法
? 为了解决优化结果精度和优化速度的矛盾,可
以采用可变步长推移单纯形,此即改进单纯形
法,既能加快优化速度,又能获得较好的优化
精度。
? 改进单纯形法是 1965年 J,A,Nelder等提出来
的,它是在基本单纯形法的基础上引入了 反射,
扩大, 收缩 与 整体收缩 规则,变固定步长为 可
变步长,较好地解决了优化速度与优化精度之
间的矛盾,是各种单纯形优化法中应用最广泛
的一种单纯形优化方法。
? 两因素单纯形的推移过程
因素 1
因素 2
B
A
C
D E O NA
改进单纯形
ND
? 单纯形的整体收缩
因素 1
因素 2
A
B
C
C’
A’
? 在单纯形的推移过程中,新实验点在空间的位
置坐标按以下方法计算,
[ ] ( 9 1 9 )
0
n
a
a
?
? ? ?
[ 留下各点的坐标和]
[ 新 试 点 的 坐 标 ] = ( 1 + a )
去掉点的坐标
式 中 是 大 于 的 系 数
? 讨论,
? a= 1,此时 (9-19)式变差基本单纯形中新点的计算公式,
此时新试验点为去掉点的等距离反射点,这时改进单纯
形又变成了基本单纯形
? a>1,按基本单纯形法( a= 1)计算出新点后,对新试
验点做试验得出新试验点的响应值。如果新点的响应值
好,说明我们搜索方向正确,可以进一步沿 AD搜索。
因此取 a>1,称为 扩大 。如果扩大点 E不如反射点 D好,
则, 扩大, 失败,仍采用 D,由反射点何留下点构成的
单纯形 BCD继续优化
? -1<a<0,按( a= 1)计算出来的反射点 D的响应值最坏,
此时采用 -1<a<0(称为 内收缩 )计算新试验点,此时形成
新的单纯形 BNAC
? 0<a<1,按基本单纯形法( a= 1)计算除反射点 D响应值最
坏。但比去掉点 A响应值好。此时采用 0<a<1,称为 收缩,
新试点仍按 (9-19)式计算,此时形成新的单纯形 BCND
? 如果去掉点与其反射点连线 AD方向上所有点的响应值都比
去掉点 A坏,则不能沿此方向搜索。这时应以单纯形中最
好点为初点,到其它各点的一半为新点,构成新的单纯形
BA’C’进行优化。此时步长减半,称为,整体收缩,
§ 7-4 加权形心法
? 基本单纯形和改进单纯形都是采用去掉点的反
射方向为新试验点的搜索方向,这就意味着,
去掉点的反射方向作为近似的优化方向,就是
梯度变化最大的方向
? 实际上,这个方向是一个近似的梯度最大方向,
这样的搜索结果可能导致搜索次数的增加和搜
索结果精度的降低
? 为了解决这个问题,提出了加权形心法,加权
形心法利用加权形心代替单纯的反射形心,使
新点的搜索方向更接近实际的最优方向
因素 1
因素 2
?
B
C
O
E
E'
O?
形心点 O和加权形心点 O?
? 如图,使 W,B,C三个顶点组成的一个二因素
的优化过程的一个单纯形,并知 W点的响应最
坏, B的响应最好 。
? 如果搜索优化过程中函数不出现异常,那么搜
索最优点的方向明显应当更靠近 WB的方向,
而不是靠近 WC的方向。因此可以通过加权的
办法来使搜索的方向由原来的 WE(反射方向)
变为 WE'方向(加权方向),此时用加权形心
点 O?代替反射形心点 O
3
1
3
1
{ ( ) ( ) }
[ ] ( 9 2 0 )
{ ( ) ( ) }
i
( ) i
()
ii
i
i
i
i
i
R p R p
O
R p R
p
Rp
R
?
?
?
?
?
?
??
?
?
?
?
加 权 形 心 点 =
其中
为 第 点 的 坐 标
为 的 点 的 响 应 值 。
为最坏点的响应值。
1
1 ( )
1
1 ( )
n
{ ( ) ( ) }
[ ] ( 9 2 1 )
{ ( ) ( ) }
[ ] [ ]
n
ii
ii
n
i
ii
R p R p
O
R p R
OO
?
?
?
?
?
?
?
??
?
??
??
?
?
?
?
同 样 对 于 因 素 的 加 权 形 心 点 计 算 如 下,

然 后 将 代 替 改 进 单 纯 形 法 中 的 形 心 点,
即成为加权形心法。
§ 7-5 控制加权形心法
§ 7-6 单纯形优化的参数选择
? 在试验中,我们只研究优化条件,可用基本单
纯形法时,首先必须确定研究的因素
? 由于单纯形法不受因素的限制,考察的因素可
以相对的多些
? 因素确定后,据分析仪器和试验要求,规定因
素变化的上下限,据上下限的范围确定步长的
大小。
? 步长较大,优化速度加快,精度较差;步长太
小试验次数增多,优化速度变慢
? 一、试验指标
? 试验指标是用于衡量和考核试验响应的各种数值
? 在分析测试中可将仪器响应值作为试验指标,但有时
须转换称其它的数量,试验指标是数量化的,以便直
接比较结果的大小
? 二、初始单纯形的构成
? 本章第一节介绍的方法是根据 初始点 和 步长 来
计算初始单纯形的各个顶点,各因素的步长是
相同的
? 实际过程中,各因素步长和单位并不相同,利
用这种方法会变得很麻烦,在实际应用中问题
较多
? 我们介绍下述两个构成初始单纯形的方法
? (一) long系数表法
? D.E.Long提出一种用系数表构成初始单纯形各顶点
的方法,可以解决试验设计中初始单纯形的构成问

? 使用时把表中的对应值乘上该因素的步长后,再加
到初始点坐标上
1
2
3
4
5
6
7
8
9
10
10
A B C D E F G H I J
0
1.00
0.50
0.50
0.50
0.50
0.50
0.50
0.50
0.50
0.50
0
0
0.866
0.289
0.289
0.289
0.289
0.289
0.289
0.289
0.289
0
0
0
0.817
0.204
0.158
0.204
0.204
0.204
0.204
0.204
0
0
0
0
0.791
0.158
0.158
0.158
0.158
0.158
0.158
0
0
0
0
0
0.775
0.129
0.129
0.129
0.129
0.129
0
0
0
0
0
0
0.764
0.109
0.109
0.109
0.109
0
0
0
0
0
0
0
0.756
0.094
0.094
0.094
0
0
0
0
0
0
0
0
0.750
0.083
0.083
0
0
0
0
0
0
0
0
0
0.745
0.075
0
0
0
0
0
0
0
0
0
0
0.742
因素
顶点
Long系数表
? 例:有一个二因素的设计过程,其初始点为
(10.0,2.0);步长为 1.0和 0.5,据 Long系数表来计
算其余两个顶点的坐标
? 顶点 1,( 10.0,2.0)
? 顶点 2,( 10.0+1.00× 1.0,1.0+0× 0.5)
? =( 11.0,2.0)
? 顶点 3,( 10.0+0.5× 1.0,2.0+0.866× 0.5)
? =( 10.5,2.433)
? (二)均匀设计表法
? 利用 Long系数表法所构成的初始单纯形各顶点在空
间的分布是不均匀的,因此进行的是不均匀优化
? 均匀设计表改变了这个缺点,使各顶点在空间均匀
分布,这样进行的优化就是 整体的均匀优化
? 据所选因素的因素数,确定一个比较合适的均匀表,
使用时把表中的对应数值乘以响应因素的步长,加
到初始点坐标上即可
? 例:我们有一个四因素的优化过程,因此可以
选用四因素的均匀设计表。设初点为
(1.0,1.0,1,0,1.0);步长为 0.5,1.0,1.5,2.0。要求计算
初始单纯形的各顶点
1
2
3
4
5
A B C D
1
2
3
4
5
2
4
1
3
5
3
1
4
2
5
4
3
2
1
5
列号
(因素) 试验次数
(顶点)
四因素均匀设表 U5(54)
? 顶点 1,
? ( 1.0+1 × 0.5,1.0+2 × 1.0,1.0+3 × 0.5,1.0+4 × 2.0)
? =( 1.5,3.0,5.5,9.0)
? 顶点 2,
? ( 1.0+2 × 0.5,1.0+4 × 1.0,1.0+1 × 0.5,1.0+3× 2.0)
? =( 2.0,5.0,2.5,7.0)
? 顶点 3,
? ( 1.0+3 × 0.5,1.0+1× 1.0,1.0+4 × 0.5,1.0+2 × 2.0)
? =( 2.5,2.0,7.0,5.0)
? 顶点 4,
? ( 1.0+4 × 0.5,1.0+3 × 1.0,1.0+2 × 0.5,1.0+1 × 2.0)
? =( 3.0,4.0,4.0,3.0)
? 顶点 5,
? ( 1.0+5 × 0.5,1.0+5 × 1.0,1.0+5 × 0.5,1.0+5× 2.0)
? =( 3.5.6.0,8.5.11.0)
? (三)单纯形的收敛
? 单纯形收敛的检验办法,
? 在 n因素的单纯形中,如果有一个点经 n+ 1次单纯
形仍为被淘汰,一般可以在此点收敛
? 这种检验方法未考虑到试验误差的存在,按助理统
计或实际工作要求单纯形收敛准则应为,
? |[R(B)-R(?)]/R(B)|<?
? 式中 R(B)和 R(?)分别代表最好点 B与最坏点 ?的响
应值,?为试验误差或预给定的允许误差