第六章 非线性方程(组)的求解的函数。使问题:求 nRnR,fxfnRx,0)(
若 n=1,称为方程求根问题; n>1称为方程组求解。
理论问题:
( 1)解的存在性。即有解还是无解,有多少解。
( 2)解的邻域性态。即孤立解的区域,解的重数,光滑性。
关于解的存在性及其性态,不是数值分析所讨论的问题。
我们总认为:,内有唯一解在一个确定的区域 *)( xnRxf
任务是如何求得这个 。*x
下面分别讨论方程求根和非线性方程组求解的算法。
§ 6.1 非线性方程求根的有解区间。此区间为内有解且有唯一解,称在区间如果 )(],[)( xfbaxf
不妨设有唯一解。
内有解。在区间则上连续且在区间设法)一、二分法(区间分半
],[)(,0)()(],[)( baxfbfafbaxf
.,
)(
2
1
)(
2
1
],,[
,
2
).(
2
1
)2(;0)()()1(
,],[],[],[],[
*
**
11
1100
xxn
ababxxbax
ba
x
abab
bfaf
babababa
n
nnnnnn
nn
n
nnnn
nn
nn
令满足找算法:
function [x,n]=erfenfaqiugen(f_name,a,b,epsl)
%求方程 f(x)=0在有解区间 [a,b]的根,满足 f(a)*f(b)<0.
x=(a+b)/2;
f=feval(f_name,x);
n=1;
while b-x>epsl
if abs(f)<1e-8,break,end;
if f*feval(f_name,a)>0
a=x;
else
b=x;
end
x=(a+b)/2;
f=feval(f_name,x);
n=n+1;
end
注:
1)二分法只能求奇数重的实根。
不变号了!时,
为偶数于是充分大以后,又当时,当的连续性,则由不妨设
。)重根,即的为设
,0)(],,[
),
*
,
*
(],[
.0)(
*
,0)(,0)
*
(
0)
*
(,()
*
()()(
*
xfnbnax
mxxnbnan
x
xxxx
xx
m
xxxfnxfx
2)二分法线性收敛,收敛因子为 1/2。
3)二分法可用来划分有解区间,这应是它的最大优点。
.21),(21)(21 *
1
*
*
111
*?
xx
xxxxaxxx
n
n
nnnn?
二、一般迭代法
的收敛性。、讨论
。在解的邻域内选定初值、
称为迭代函数。,、
nx
nxnx
n
xNx
xxxxf
3
)(
1
,2,1,0
),
*
(
0
2
)()(0)(1
01
1
*
1
1
1*
],[
0
1)(
,)(
],[)(:
xx
L
n
L
x
n
x
n
x
n
x
L
x
n
x
n
xbax
Lx
bxa
bax
1-1-6
2
1
或均收敛,且)产生的数列,由迭代(则
)(
自映射,即)一阶导数连续,且是(
上在区间设定理一
定理一的条件太强,不便于实际应用。下面给出一个局部收敛定理。
0
x
1
x
L1
nL
*x
nx
nx1nx
L1
1*
xnx
nx1-1-6
)*(x
δ
N
0
x1,L)*(x)*(x:
或均收 敛收敛) 产产生的数由迭代(
,则连续,如果定理二
一般迭代法只有理论上的意义,因为迭代函数 通常不易构造。
)(x?
三、牛顿迭代法
,
.,2,1,0,
)(
)(
),().(0)(
)()(
*
1
*
0
*
**
xx
n
xf
xf
xx
xNxxNxxf
xNxxf
n
n
n
nn
至少平方收敛于产生的数列迭代算法则,且
,内有直到二阶连续导数的邻域在其零点设
1)-1-(6
称算法( 6-1-1)为牛顿迭代法。
至少二阶收敛。
又牛顿迭代收敛则证明:令
,
2
)(
)(;)(
2
)(
)()(
,0)(),(
)]([
)(
1)(
)(0)(),(,
)(
)(
)(
2
*
*
1
2***
1
*
2
*
c
xx
xx
xxxxxx
xxf
xf
xf
x
xxxfxNx
xf
xf
xx
n
n
nnn
困难。
的这对实际应用带来一定求导数牛顿迭代法中每一步需(
重根吗?
有效且平方收敛。能求说明牛顿迭代法求单根)要求(
的选择很困难。初始迭代点的未知性,使得方收敛的,由于)牛顿迭代法是局部平(
注:
),(
,0)(
)(
*
0
*
n
xf
xf
x
xN
3)
2
1
关于初值的问题:
一般来说采用试探法,但对于一些实际问题初值的选择并不困难,它是明确的。
关于重根的问题,
1)m
) ],()(1)([)()(
,0)(),()()(
,)(
*1*
**
*
xgxx
m
xgxxmxf
xgxgxxxf
mxfx
m
m
此时重零点(的是设
。的增加收敛性越来越差随牛顿迭代线性收敛,且 m
m
x
m
x
xhxgx- x
m
x
xf
xf
xx
xhxgxx
m
xgxh
xhxxmxf
*
m
,1
1
1)(,
1
1)(
),(/)()
1
)(
)(
)(
,0)(),()(
1
)()(
)()()(
**
**
1*
(
重根时的改进:
的单重零点。是,且则
)
令个实用的方法是:)通常重数不知道,一(
至少平方收敛。
)
已知时,迭代)重数(
)(0)(0)(,
)(
(
)(
)(
(
*
1
xxxxf
xf
xf
x
xf
xf
mxxm
n
n
nn
2
2)-1-(6 1?
至少平方收敛。迭代 3)-1-(6?)( )(1
n
nnn
x
xxx
关于导数计算的处理,
)6 1 8.1
)(
)()(
)(
,1,,
)(
1
:
,
1
1
1
1
敛阶至少为它是超线性收敛的(收此迭代法称为割线法,
差分代替微分,即)一个实用的方法是由(
敛的。此迭代法通常是线性收接下来采用步得到近似值几步,比如进行到第)利用牛顿迭代先进行(
n
nn
nn
nn
nnn
k
k
xf
xfxf
xx
xx
xcfxx
kkn
xf
c
xk
2
1
并比较快慢。重根的二法求方程以及它们的离散型迭代
),和(进牛顿迭代法分别用牛顿迭代法,改实例分析
,1
0)1)(1()(
)216(
:1
*
2
x
xxxf
3-1-6
方法 牛顿 改进 1 改进 2 离散 离散 1 离散 2
迭代次数
26 5 5 36 20 31
说明,epsl=1e-8,x0=1.5,m=
) ) ;()(/()()()(
) ) ;()(/()()(:2
) ) ;()(/()()(:1
) ) ;()(/()()(:
);(/)()(),(/)(
);(/)(
);(/)(
11
111
111
111
1
1
1
nnnnnn
nnnnnnn
nnnnnnn
nnnnnnn
nnnn
nnnn
nnnn
xfxfxfxxx
xxxxxxx
xfxfxfxxmxx
xfxfxfxxxx
xfxfxxxxx
xfxmfxx
xfxfxx
2
1
离散离散离散
:改进
:改进牛顿:
.5.1
0)1)(1()(
:2
0
2
ix
ixxxxf
初值
。的复根牛顿迭代法求方程实例分析
[n,x]=newtonfa('ff14',1.5i,0.0001);
n = 5
x = -0.0000 + 1.0000i
说明牛顿法也可求复数根四、加速收敛技术
。则它至少局部平方收敛处连续,在有不动点如果算法:构成如下由迭代法
,1)()(,)(
2
)(
)(
)(
)(
***
11
2
11
11
11
1
1
xxxxx
xzy
zy
yx
zy
xz
S t e f f e n s enxx
nnn
nn
nn
nn
nn
nn
则的不动点为设有共同的不动点。与显然,
迭代函数为证明:
,)(
)(2))((
)]([))((
)(
*
2
xx
xxx
xxx
x
s t ef f en s en
平方收敛。时,迭代当时,当
)(1)(
)1(
)1(
1
)(;
))(()1(
))((
)(
);)(()()(2)()(
);)(()(
))()((
2
1
))()(()())((
);)(()(
))((
2
1
))(()()(
1
*
22
*
*
*2
2*
*
3*2*2**2*
2
2**2*
2*
1
***
2***
2****
nn
n
n
xxx
na
a
xx
xx
xxa
xx
xx
xxxxaxxaxxx
xxxxax
xxxxxxx
xxxxax
xxxxxxx
二阶收敛。收敛慢甚至不收敛时,说明当迭代 ns et e f f e n s exx nn )(1
.5.110)1)(1()(
:3
0
62 xxxxxf
s t ef f en s en
。初值的根迭代法求方程用牛顿迭代法和实例分析
[n,x]=steffensen('ff14',1.5,0.0001)
n = 4
x = 1.0000
[n,x]=newtonfa('ff14',1.5,0.0001);
n = 39
x = 1.0004
.5.110)1)(1()(
:4
0
102 xxxxxf
s t ef f en s en
。初值的根迭代法求方程用牛顿迭代法和实例分析
)(/)()( xfxfxx令
[n,x]=newtonfa('ff14',1.5,0.0001);
n = 61
x = 1.0009
[n,x]=steffensen('ff14',1.5,0.0001)
n = 3
x = 1.0000
五、代数方程的求根
.0,0)( 0111 nnnnn aaxaxaxaxf?
计算 f(x)的秦九韶算法,
));)((((
)(
3210
01
1
1
n
n
n
n
n
axaxaxaxa
axaxaxaxf
计算 f(x)
en d
afxf
njfo r
af
aaaa
j
n
n;
1:)1(:;
);,,,(
1
10
计算 df/dx(x)
e n d
ajdfxdf
njf o r
nadf
j
n;
1:)1(:1;
然后采用 steffensen迭代,
其中
)(/)()( xdfxfxx
§ 6.2 解非线性方程组的牛顿迭代法
的。至少非奇异时,当牛顿迭代法为:
:
对于非线性方程组是局部平方收 敛它)
210
)0)(
.),,,(,,0)(
*
)(
1
)()()1(
*)0(
21
(xF
F ( x
,,,k
)F ( x)(xFx x
),(xNx
RRfffFRxxF
kkkk
*
δ
nnT
n
n
n
nnn
n
n
x
f
x
f
x
f
x
f
x
f
x
f
x
f
x
f
x
f
( x)F
21
2
2
2
1
2
1
2
1
1
1
其中,
生数值不稳定。从而导致计算失败或产也可能奇异或病态,奇异或病态,如果显然工作量很大!
。
,
还需解方程组,计算牛顿迭代法每步除说明:
)()()2(
)()(
)()1(
)(*
)()1(
)()(
)(
k
kk
kk
k
xFxF
xxx
xFxxF
xF
拟牛顿法拟牛顿法是为了解决上述问题提出的对牛顿法的一些改进。
)(
满足方程其中
)(
一般形如
2
1
)()(
)(
),(
)(
)()1(
)()1(
1
1
)0(
0
)(1)()1(
kk
kk
k
kkk
k
k
kk
xFxF
xxA
AAA
xFA
xFAxx
( 3 )
2
T
kkkk
k
k
kkk
k
k
kk
k
kk
k
k
Tkk
k
k
ssAy
s
A
sAy
s
u
xFxFy
xxsv
vuA
A
)(
1
)(
1
),()(
,
.)(
1
2
2
2
2
)(
)()1(
)()1()(
)()(
)得到:则由方程(
令矩阵,即是秩通常要求
)4(1)( 1 1111? uAv AuvAAuvA T TT又综合上述,得到 Broyden秩 1方法,
时具有超线性收敛性。可以证明,当或其中
0
)(
1
)()(
,
,)(
)(
1
)()1(
)()1(
1
)0(
0
)()()1(
kk
T
k
k
T
kkkk
kk
T
k
kk
kk
k
kk
k
k
k
kk
yBs
BsyBs
yBs
BB
xFxFy
xxs
IxFB
xFBxx
,
对称拟牛顿法的拟牛顿法。
构造一种对称)是对称的,因此需要很多问题 xF (?
也对称。成比例,与对称时,只要看出
,由
1
1
kkkk
T
kkkkkk
AvuA
vuAAAA?
方法:秩即得到对称方法中,取秩此时在
1
)(
1
)1(
B r o yd en
xFv
B r o yd en
k
k
k
T
kkk
T
kkkkkk
kk
kk
k
kk
k
k
k
kk
yyBs
yBsyBs
BB
xFxFy
xxs
IxFB
xFBxx
)(
))((
)()(
,
,)(
)(
1
)()1(
)()1(
1
)0(
0
)()()1(
,
或其中实例分析,选址问题使运费最少。此货栈的位置(
试确定吨,现要建一个货栈,需求量均为三个市场对某种货物的距离单位是位于有三个市场,它们分别
),
1 0 0
.10),1,0(),0,1(),0,0(
yx,
kmCBA
0)
)1(
1
)1(
(2 0 0
0)
)1()1(
1
(2 0 0
),(m i n
))1()1((1 0 0),(
222222
2
222222
1
222222
yx
y
yx
y
yx
y
y
f
f
yx
x
yx
x
yx
x
x
f
f
yxf
yxyxyxyxf
数学模型为总运费:
下面是用牛顿迭代法,broyden秩 1法、对称 broyden秩 1法的计算结果。初值 x0=(0.5,1.0).
[n,x]=newtonfa1('ff16',[0.5,1.0]',1e-8);
n = 8,x =[ 0.2113,0.2113]’
[n,x]=broyden('ff17',[0.5,1.0]',eye(2),1e-8);
n = 10,x = [ 0.2113,0.2113]’
[n,x]=duichengbroyden('ff17',[0.5,1.0]',eye(2),1e-8);
n = 11,x = [ 0.2113 0.2113]’
若 n=1,称为方程求根问题; n>1称为方程组求解。
理论问题:
( 1)解的存在性。即有解还是无解,有多少解。
( 2)解的邻域性态。即孤立解的区域,解的重数,光滑性。
关于解的存在性及其性态,不是数值分析所讨论的问题。
我们总认为:,内有唯一解在一个确定的区域 *)( xnRxf
任务是如何求得这个 。*x
下面分别讨论方程求根和非线性方程组求解的算法。
§ 6.1 非线性方程求根的有解区间。此区间为内有解且有唯一解,称在区间如果 )(],[)( xfbaxf
不妨设有唯一解。
内有解。在区间则上连续且在区间设法)一、二分法(区间分半
],[)(,0)()(],[)( baxfbfafbaxf
.,
)(
2
1
)(
2
1
],,[
,
2
).(
2
1
)2(;0)()()1(
,],[],[],[],[
*
**
11
1100
xxn
ababxxbax
ba
x
abab
bfaf
babababa
n
nnnnnn
nn
n
nnnn
nn
nn
令满足找算法:
function [x,n]=erfenfaqiugen(f_name,a,b,epsl)
%求方程 f(x)=0在有解区间 [a,b]的根,满足 f(a)*f(b)<0.
x=(a+b)/2;
f=feval(f_name,x);
n=1;
while b-x>epsl
if abs(f)<1e-8,break,end;
if f*feval(f_name,a)>0
a=x;
else
b=x;
end
x=(a+b)/2;
f=feval(f_name,x);
n=n+1;
end
注:
1)二分法只能求奇数重的实根。
不变号了!时,
为偶数于是充分大以后,又当时,当的连续性,则由不妨设
。)重根,即的为设
,0)(],,[
),
*
,
*
(],[
.0)(
*
,0)(,0)
*
(
0)
*
(,()
*
()()(
*
xfnbnax
mxxnbnan
x
xxxx
xx
m
xxxfnxfx
2)二分法线性收敛,收敛因子为 1/2。
3)二分法可用来划分有解区间,这应是它的最大优点。
.21),(21)(21 *
1
*
*
111
*?
xx
xxxxaxxx
n
n
nnnn?
二、一般迭代法
的收敛性。、讨论
。在解的邻域内选定初值、
称为迭代函数。,、
nx
nxnx
n
xNx
xxxxf
3
)(
1
,2,1,0
),
*
(
0
2
)()(0)(1
01
1
*
1
1
1*
],[
0
1)(
,)(
],[)(:
xx
L
n
L
x
n
x
n
x
n
x
L
x
n
x
n
xbax
Lx
bxa
bax
1-1-6
2
1
或均收敛,且)产生的数列,由迭代(则
)(
自映射,即)一阶导数连续,且是(
上在区间设定理一
定理一的条件太强,不便于实际应用。下面给出一个局部收敛定理。
0
x
1
x
L1
nL
*x
nx
nx1nx
L1
1*
xnx
nx1-1-6
)*(x
δ
N
0
x1,L)*(x)*(x:
或均收 敛收敛) 产产生的数由迭代(
,则连续,如果定理二
一般迭代法只有理论上的意义,因为迭代函数 通常不易构造。
)(x?
三、牛顿迭代法
,
.,2,1,0,
)(
)(
),().(0)(
)()(
*
1
*
0
*
**
xx
n
xf
xf
xx
xNxxNxxf
xNxxf
n
n
n
nn
至少平方收敛于产生的数列迭代算法则,且
,内有直到二阶连续导数的邻域在其零点设
1)-1-(6
称算法( 6-1-1)为牛顿迭代法。
至少二阶收敛。
又牛顿迭代收敛则证明:令
,
2
)(
)(;)(
2
)(
)()(
,0)(),(
)]([
)(
1)(
)(0)(),(,
)(
)(
)(
2
*
*
1
2***
1
*
2
*
c
xx
xx
xxxxxx
xxf
xf
xf
x
xxxfxNx
xf
xf
xx
n
n
nnn
困难。
的这对实际应用带来一定求导数牛顿迭代法中每一步需(
重根吗?
有效且平方收敛。能求说明牛顿迭代法求单根)要求(
的选择很困难。初始迭代点的未知性,使得方收敛的,由于)牛顿迭代法是局部平(
注:
),(
,0)(
)(
*
0
*
n
xf
xf
x
xN
3)
2
1
关于初值的问题:
一般来说采用试探法,但对于一些实际问题初值的选择并不困难,它是明确的。
关于重根的问题,
1)m
) ],()(1)([)()(
,0)(),()()(
,)(
*1*
**
*
xgxx
m
xgxxmxf
xgxgxxxf
mxfx
m
m
此时重零点(的是设
。的增加收敛性越来越差随牛顿迭代线性收敛,且 m
m
x
m
x
xhxgx- x
m
x
xf
xf
xx
xhxgxx
m
xgxh
xhxxmxf
*
m
,1
1
1)(,
1
1)(
),(/)()
1
)(
)(
)(
,0)(),()(
1
)()(
)()()(
**
**
1*
(
重根时的改进:
的单重零点。是,且则
)
令个实用的方法是:)通常重数不知道,一(
至少平方收敛。
)
已知时,迭代)重数(
)(0)(0)(,
)(
(
)(
)(
(
*
1
xxxxf
xf
xf
x
xf
xf
mxxm
n
n
nn
2
2)-1-(6 1?
至少平方收敛。迭代 3)-1-(6?)( )(1
n
nnn
x
xxx
关于导数计算的处理,
)6 1 8.1
)(
)()(
)(
,1,,
)(
1
:
,
1
1
1
1
敛阶至少为它是超线性收敛的(收此迭代法称为割线法,
差分代替微分,即)一个实用的方法是由(
敛的。此迭代法通常是线性收接下来采用步得到近似值几步,比如进行到第)利用牛顿迭代先进行(
n
nn
nn
nn
nnn
k
k
xf
xfxf
xx
xx
xcfxx
kkn
xf
c
xk
2
1
并比较快慢。重根的二法求方程以及它们的离散型迭代
),和(进牛顿迭代法分别用牛顿迭代法,改实例分析
,1
0)1)(1()(
)216(
:1
*
2
x
xxxf
3-1-6
方法 牛顿 改进 1 改进 2 离散 离散 1 离散 2
迭代次数
26 5 5 36 20 31
说明,epsl=1e-8,x0=1.5,m=
) ) ;()(/()()()(
) ) ;()(/()()(:2
) ) ;()(/()()(:1
) ) ;()(/()()(:
);(/)()(),(/)(
);(/)(
);(/)(
11
111
111
111
1
1
1
nnnnnn
nnnnnnn
nnnnnnn
nnnnnnn
nnnn
nnnn
nnnn
xfxfxfxxx
xxxxxxx
xfxfxfxxmxx
xfxfxfxxxx
xfxfxxxxx
xfxmfxx
xfxfxx
2
1
离散离散离散
:改进
:改进牛顿:
.5.1
0)1)(1()(
:2
0
2
ix
ixxxxf
初值
。的复根牛顿迭代法求方程实例分析
[n,x]=newtonfa('ff14',1.5i,0.0001);
n = 5
x = -0.0000 + 1.0000i
说明牛顿法也可求复数根四、加速收敛技术
。则它至少局部平方收敛处连续,在有不动点如果算法:构成如下由迭代法
,1)()(,)(
2
)(
)(
)(
)(
***
11
2
11
11
11
1
1
xxxxx
xzy
zy
yx
zy
xz
S t e f f e n s enxx
nnn
nn
nn
nn
nn
nn
则的不动点为设有共同的不动点。与显然,
迭代函数为证明:
,)(
)(2))((
)]([))((
)(
*
2
xx
xxx
xxx
x
s t ef f en s en
平方收敛。时,迭代当时,当
)(1)(
)1(
)1(
1
)(;
))(()1(
))((
)(
);)(()()(2)()(
);)(()(
))()((
2
1
))()(()())((
);)(()(
))((
2
1
))(()()(
1
*
22
*
*
*2
2*
*
3*2*2**2*
2
2**2*
2*
1
***
2***
2****
nn
n
n
xxx
na
a
xx
xx
xxa
xx
xx
xxxxaxxaxxx
xxxxax
xxxxxxx
xxxxax
xxxxxxx
二阶收敛。收敛慢甚至不收敛时,说明当迭代 ns et e f f e n s exx nn )(1
.5.110)1)(1()(
:3
0
62 xxxxxf
s t ef f en s en
。初值的根迭代法求方程用牛顿迭代法和实例分析
[n,x]=steffensen('ff14',1.5,0.0001)
n = 4
x = 1.0000
[n,x]=newtonfa('ff14',1.5,0.0001);
n = 39
x = 1.0004
.5.110)1)(1()(
:4
0
102 xxxxxf
s t ef f en s en
。初值的根迭代法求方程用牛顿迭代法和实例分析
)(/)()( xfxfxx令
[n,x]=newtonfa('ff14',1.5,0.0001);
n = 61
x = 1.0009
[n,x]=steffensen('ff14',1.5,0.0001)
n = 3
x = 1.0000
五、代数方程的求根
.0,0)( 0111 nnnnn aaxaxaxaxf?
计算 f(x)的秦九韶算法,
));)((((
)(
3210
01
1
1
n
n
n
n
n
axaxaxaxa
axaxaxaxf
计算 f(x)
en d
afxf
njfo r
af
aaaa
j
n
n;
1:)1(:;
);,,,(
1
10
计算 df/dx(x)
e n d
ajdfxdf
njf o r
nadf
j
n;
1:)1(:1;
然后采用 steffensen迭代,
其中
)(/)()( xdfxfxx
§ 6.2 解非线性方程组的牛顿迭代法
的。至少非奇异时,当牛顿迭代法为:
:
对于非线性方程组是局部平方收 敛它)
210
)0)(
.),,,(,,0)(
*
)(
1
)()()1(
*)0(
21
(xF
F ( x
,,,k
)F ( x)(xFx x
),(xNx
RRfffFRxxF
kkkk
*
δ
nnT
n
n
n
nnn
n
n
x
f
x
f
x
f
x
f
x
f
x
f
x
f
x
f
x
f
( x)F
21
2
2
2
1
2
1
2
1
1
1
其中,
生数值不稳定。从而导致计算失败或产也可能奇异或病态,奇异或病态,如果显然工作量很大!
。
,
还需解方程组,计算牛顿迭代法每步除说明:
)()()2(
)()(
)()1(
)(*
)()1(
)()(
)(
k
kk
kk
k
xFxF
xxx
xFxxF
xF
拟牛顿法拟牛顿法是为了解决上述问题提出的对牛顿法的一些改进。
)(
满足方程其中
)(
一般形如
2
1
)()(
)(
),(
)(
)()1(
)()1(
1
1
)0(
0
)(1)()1(
kk
kk
k
kkk
k
k
kk
xFxF
xxA
AAA
xFA
xFAxx
( 3 )
2
T
kkkk
k
k
kkk
k
k
kk
k
kk
k
k
Tkk
k
k
ssAy
s
A
sAy
s
u
xFxFy
xxsv
vuA
A
)(
1
)(
1
),()(
,
.)(
1
2
2
2
2
)(
)()1(
)()1()(
)()(
)得到:则由方程(
令矩阵,即是秩通常要求
)4(1)( 1 1111? uAv AuvAAuvA T TT又综合上述,得到 Broyden秩 1方法,
时具有超线性收敛性。可以证明,当或其中
0
)(
1
)()(
,
,)(
)(
1
)()1(
)()1(
1
)0(
0
)()()1(
kk
T
k
k
T
kkkk
kk
T
k
kk
kk
k
kk
k
k
k
kk
yBs
BsyBs
yBs
BB
xFxFy
xxs
IxFB
xFBxx
,
对称拟牛顿法的拟牛顿法。
构造一种对称)是对称的,因此需要很多问题 xF (?
也对称。成比例,与对称时,只要看出
,由
1
1
kkkk
T
kkkkkk
AvuA
vuAAAA?
方法:秩即得到对称方法中,取秩此时在
1
)(
1
)1(
B r o yd en
xFv
B r o yd en
k
k
k
T
kkk
T
kkkkkk
kk
kk
k
kk
k
k
k
kk
yyBs
yBsyBs
BB
xFxFy
xxs
IxFB
xFBxx
)(
))((
)()(
,
,)(
)(
1
)()1(
)()1(
1
)0(
0
)()()1(
,
或其中实例分析,选址问题使运费最少。此货栈的位置(
试确定吨,现要建一个货栈,需求量均为三个市场对某种货物的距离单位是位于有三个市场,它们分别
),
1 0 0
.10),1,0(),0,1(),0,0(
yx,
kmCBA
0)
)1(
1
)1(
(2 0 0
0)
)1()1(
1
(2 0 0
),(m i n
))1()1((1 0 0),(
222222
2
222222
1
222222
yx
y
yx
y
yx
y
y
f
f
yx
x
yx
x
yx
x
x
f
f
yxf
yxyxyxyxf
数学模型为总运费:
下面是用牛顿迭代法,broyden秩 1法、对称 broyden秩 1法的计算结果。初值 x0=(0.5,1.0).
[n,x]=newtonfa1('ff16',[0.5,1.0]',1e-8);
n = 8,x =[ 0.2113,0.2113]’
[n,x]=broyden('ff17',[0.5,1.0]',eye(2),1e-8);
n = 10,x = [ 0.2113,0.2113]’
[n,x]=duichengbroyden('ff17',[0.5,1.0]',eye(2),1e-8);
n = 11,x = [ 0.2113 0.2113]’