1求极值的方法与技巧极值一般分为无条件极值和条件极值两类。无条件极值问题即是函数中的自变量只受定义域约束的极值问题;条件极值问题即是函数中的自变量除受定义域约束外,还受其他条件限制的极值问题。一、求解无条件极值的常用方法1.利用二阶偏导数之间的关系和符号判断取不取极值及极值的类型定理1(充分条件)设函数zf(xy)在点(x0y0)的某邻域内连续且有一阶及二阶连续偏导数又fx(x0y0)0fy(x0y0)0令fxx(x0y0)Afxy(x0y0)Bfyy(x0y0)C则f(xy)在(x0y0)处是否取得极值的条件如下:(1)ACB20时具有极值且当A0时有极大值当A0时有极小值;(2)ACB20时没有极值;(3)ACB20时可能有极值也可能没有极值。极值的求法:第一步解方程组fx(xy)0fy(xy)0求得一切实数解即可得一切驻点。第二步对于每一个驻点(x0y0)求出二阶偏导数的值A、B和C。第三步定出ACB2的符号按定理1的结论判定f(x0y0)是否是极值、是极大值还是极小值。应注意的几个问题:⑴对于二元函数zf(xy),在定义域内求极值这是一个比较适用且常用的方法,但是这种方法对三元及更多元的函数并不适用;⑵ACB20时可能有极值也可能没有极值,还需另作讨论;⑶如果函数在个别点处的偏导数不存在,这些点当然不是驻点,但也可能是极值点,讨论函数的极值问题时这些点也应当考虑。例1求函数2222()()xyzxye的极值。2解令222222()22()2(1)02(1)0xyxyzxxyexzyxyey得驻点(0,0)及221.xy又由22222222()2[2(13)4(1)]xyzyxxxyex22222()4(2)xyzxyxyexy22222222()2[2(13)4(1)]xyzxyyxyey22(0,0)2,zAx2(0,0)0,zBxy22(0,0)2zCy240,0BACA故(0,0)0f为极小值。由于22221214,xyzAxex222114,xyzBxyexy22221214xyzCyey20BAC,此时有通常的方法无法判定。令22(0)xytt,则tzte,由(1)0tdzetdt得驻点1.t又21211(2)0tttdzteedt故tzte在1t处取极大值,即函数2222()()xyzxye在圆周221xy上取极大值1.ze32.对于三元及更多元的函数定理1并不适用,而在实际问题中经常要遇到求三元以上函数的极值问题,对此可由二次型的正定性加以解决。定义1设n元函数12()(,,)nfXfxxx在12(,,,)TnnXxxxR的某个邻域内有一阶、二阶连续偏导数。记12()()()(),,,nfXfXfXfXxxx,()fX称为函数()fX在点12(,,,)TnXxxx处的梯度。定义2满足0()0fX的点0X称为函数()fX的驻点。定义3222211212222212()()()()()()()()nijnnnnnfXfXfXxxxxxfXHXxxfXfXfXxxxxx称为函数12()(,,)nfXfxxx在点nXR处的黑塞矩阵。显然()HX是由()fX的2n个二阶偏导数构成的n阶实对称矩阵。定理2(极值存在的必要条件)设函数()fX在点000012(,,,)TnXxxx处存在一阶偏导数,且0X为该函数的极值点,则0()0fX。定理3(极值的充分条件)设函数()fX在点0nXR的某个邻域内具有一阶、二阶连续偏导数,且000012()()()(),,,0nfXfXfXfXxxx则(1)当0()HX为正定矩阵时,0()fX为()fX的极小值(2)当0()HX为负定矩阵时,0()fX为()fX的极大值(3)当0()HX为不定矩阵时,0()fX不是()fX的极值。应注意的问题:利用二次型的正定性来判断多元函数的极值虽然是一个很好的方法,但也有一定的局限性,因为充分条件对正定和负定的要求是很严格的,若条件不满足,那结论就不一定成立.4例1求三元函数222(,,)23246fxyzxyzxyz的极值。解先求驻点,由220440660xyzfxfyfz得1,1,1xyz所以驻点为0(1,1,1)P。再求(Hessian)黑塞矩阵因为2,0,0,4,0,6xxxyxzyyyzzzffffff所以200040006H,可知H是正定的,所以(,,)fxyz在0(1,1,1)P点取得极小值:(1,1,1)6f.当然,此题也可用初等方法222(,,)(1)2(1)3(1)6fxyzxyz求得极小值6,结果一样。二、求解条件极值的常用方法1.代入法化为无条件极值问题从一道错误的例题谈条件极值的代入法[1](这里全文引用)同济大学出版的教材(高等数学(第二版下).上海:同济大学出版社,1998.8)在介绍条件极值时举了这样的一道例题:“例10:某公司的两个工厂生产同样的产品,但所需成本不同,第一个工厂生产x单位产品和第二个工厂生产y单位产品时的总成本是22(,)25700Cxyxyxy。若公司的生产任务是500个单位产品,问如何分配任务才能使总成本最小?解:根据题意,是求函数22(,)25700Cxyxyxy在在条件500xy下的极值。作辅助函数22(,)25700(500)Fxyxyxyxy5令250450500xyFxyFyxxy,解得125,375xy,所以根据题意知,当第一个工厂生产125个单位产品、第二个工厂生产375个单位产品时总成本最小。”上述解法,粗看起来好象没有什么毛病,但却是经不起推敲的。简单的验证可知,本例求出的总成本为(125,375)531950C,但却不是最小,譬如(500,0)250700C,就比求得的“最小值”小了一半还要多!事实上,点(125,375)不是最小值点,而是最大值点。究其原因,主要是解题方法选择不当造成的。我们知道,求解自变量不超过三个的条件极值问题,既可以用拉格朗日乘数法,也可以用代入法。用拉格朗日乘数法虽然很方便,但极值点的判定却比较麻烦。对这个问题,几乎所有的教材都没有作出正面的回答,只指出了用这种方法求出的极值点是“可能的”极值点,“至于如何确定所求得的点是否为极值点,在实际问题中往往可根据问题本身的性质来判定”。然而许多实际问题中,根据问题本身的性质却无法确定究竟是极大还是极小。在这种情况下,采用代入法则可以有效地解决极值点的判定问题。本例中,由于总成本究竟是最小还是最大并不好判定,因而采用代入法求解就可以避免产生上述的错误。若令500yx并代入目标函数22(,)25700Cxyxyxy中,可得总成本22500500700(0500)Cxxx,于是问题转化为求函数22500500700Cxx在区间[0,500]上的最小值。由4500Cx,可得惟一驻点x=125(显然是极大值点),计算该驻点及两端点处的函数值,有C(125)=531950C(0)=500700C(500)=250700比较即知x=500是所求之最小值点,此时y=0。即把500个单位产品的生产任务都分配给第一个工厂生产时总成本最小。应注意的几个问题:⑴在讨论二元函数(,)zfxy在约束条件(,)0gxy的极值问题时,如果由(,)0gxy能解x(或)y就把求二元函数的条件极值转化为求一元函数的极值了。使用代入法时,减少了变量,给判别极值带来了方便,但有时在约束条件6(,)0gxy中不易将x(或)y解出,使用这种方法就困难了。⑵我们知道在求解约束条件比较简单的条件极值问题时,既可以用拉格朗日乘数法,也可用代入法,但在用代入法求解时,如果不注意代入的条件,则可能导致不完整甚至错误的解答[3]。例如求222uxyz在221xz条件下的极值。用代入法求解时,如果将221zx代入222uxyz式,则得2221uxy,通过求解方程组4020xyuxuy得0,0xy,但将0x代入221xz时,z无解。因而222uxyz在221xz条件下似乎无极值。但如果用拉格朗日乘数法,则可得到二个可能的极值点,分别为(1,0,0)与(-1,0,0),且通过几何意义(乃是求原点到柱面221xz的最短距离),不难得出(1,0,0)与(-1,0,0)都是极小值点,极小值都是1。原因是求222uxyz在221xz条件下的极值时,x的取值范围是(,1][1,),而将221zx代入222uxyz,求2221uxy的极值时,x的取值范围已是(,)。2.更一般的方法是利用拉格朗日乘数法求解“乘数法”所得到的点只是可能的极值点,到底是否是极值点以及其类型要依据拉格朗日函数F的二阶微分的符号来判断.例求函数mnpuxyz在条件xyza(0,0,0,0mnpa)下的极值.分析:通过求简单函数的极值点从而达到求复杂函数极值点的方法,是在实际解题中经常使用的.解先求lnlnlnln()vumxnypzxyza令0000xyzmFxnFypFzxyza得驻点,,manapaPmnpmnpmnp7又由222222,,,0xyxzyzxyzmnpFFFFFFxyz,2222222(,,)0PPmnpdFxyzdxdydzxyz故P为v即u的极大值点,此时()mnpmnpmnpPmnpaumnp.3.运用梯度法求条件极值[2]将梯度法用于求条件极值的问题。方程组11212112(,,,)(,,,)(,,,)0,(1,2,,1)nniiniingradfxxxgradxxxxxxin的解,就是所求极值问题的可能极值点。例1.试求n个正数,其和为定值l的条件下,什么时候乘积最大,并证明12121()nnnxxxxxxn证明:本题的实质是求1212(,,,)nnyfxxxxxx在条件12nxxxl下的最大值问题。根据本文定理,列出下列方程组,求解可能的极值点。121212()()nnngradxxxgradxxxlxxxl进一步求解得231312112,,,1,1,,1nnnnxxxxxxxxxxxxl容易得到12nlxxxn,根据题意,则111,,,nnn是唯一的极大值点,也是最大值点。所以,2121(,,,)nfxxxn,即12121()nnnxxxxxxn这一方法当然适合于二元函数和三元函数的条件极值问题。例如:求(,)zfxy8在条件(,)0xy下的极值,只要列出方程组(,)(,)(,)0gradfxygradxyxy再求出相应的,,xy,则其中(,)xy是可能的极值点.例2.从斜边之长为l的一切直角三角形中,求最大周长的直角三角形。解:设两条直角边为,xy本题的实质是求(,)fxyxyl在条件222x