摘 要: 函數極值推動微積分發展的重要動力之一,在科學技術和社會生活的各個領域中,充滿了函數極值問題。極值問題是微積分產生和發展的重要動力之一。諸如成本最小、距離最短、時間最短等問題,都可以轉化為函數極值問題。根據職業院校學生的特點,結合自己的教學實踐,本文作者僅針對一元函數展開分析,就如何求解函數的極值點問題進行初步的探討。
關鍵詞: 函數極值點 函數極值 一元函數 MATLAB
函數極值是推動微積分發展的重要動力之一,在科學技術和社會生活的各個領域中,充滿了函數極值問題.極值問題是微積分產生和發展的重要動力之一.諸如能量最小、最佳擬合、最短路徑、時間最短等問題,都可以轉化為函數極值問題.確切地說,這里討論的只是“局域極值”問題,“全域最小”問題要復雜得多。至今沒有一個“系統性”的方法可求解一般的“全域最小”問題.對于一元、二元函數,可以作圖觀察,利用函數單調性,等等,但更多元的函數,就很難利用這些方法.因此,根據職業學校學生的特點,結合自己的教學實踐,我僅針對一元函數展開分析,就如何求解函數的極值點問題進行初步的探討.
一、利用一階導數,根據函數極值的第一充分條件列表求函數的極值點
定理1(極值的第一充分條件)設函數y=f(x)在x的一個領域內可微(在x處可以不可微,但必須連續),若當x在該鄰域內由小于x連續地變為大于x時,其導數f′(x)改變符號,則f(x)為函數的極值.x為函數的極值點,并且
(1)若導數f′(x)由正值變為負值,則x為函數的極大值點;
(2)若導數f′(x)由負值變為正值,則x為函數的極小值點;
(3)若導數f′(x)不變號,則x不是函數的極值點.
運用該定理求函數極值點的一般步驟是:
(1)確定函數定義域并找出所給函數的駐點和導數不存在的點;
(2)考察上述點兩側導數的符號,確定極值點;
(3)求出極值點處的函數值,得到極值.
例1.求f(x)=(x-1)x的極值
解:函數定義域為(-∞,+∞),
尋求駐點和導數不存在的點.因為
f′(x)=x+(x-1)?x=?
令f′(x)=0,得x=;當x=0,f′(x)不存在.
列表判別得:
所以,x=0是極大值點,其極大值為f(0)=0;
x=是極小值點,其極小值為f()=-0.33.
二、利用二階導數,根據函數極值的第二充分條件列表求函數的極值點
定理2(極值的第二充分條件):設函數y=f(x)在x處的二階導數存在,若f′(x)=0,且f″(x)≠0,則x為函數的極值點,f(x)為函數的極值,并且
(1)當f″(x)>0時,則x為函數的極小值點,f(x)為函數的極小值;
(2)當f″(x)<0時,則x為函數的極大值點,f(x)為函數的極大值.
運用該定理求函數極值點的一般步驟是:
(1)確定函數定義域,并找出所給函數的全部駐點;
(2)考察函數的二階導數在駐點處的符號,確定極值點.
例2.求f(x)=x-2x-5的極值
解:函數定義域為(-∞,+∞).
因為f′(x)=4x-4x=4x(x+1)(x-1),
所以由f′(x)=0可得該函數的三個駐點:x=-1,0,1.
因為f″(x)=12x-4,
所以有f″(-1)=8>0;f″(0)=-4<0;f″(1)=8>0;
故由定理2可知x=-1,x=1為極小值點,x=0為極大值點.
由上述定理1和定理2可知,極值的這兩個充分條件在處理極值問題時各有獨到之處,定理1充分利用了函數單調性的特點,從函數圖形來研究函數的極值,容易被讀者接受,但是求解過程過于繁瑣;定理2充分運用二階導數,計算起來比定理1簡捷,容易運算,很多時候,我們選擇用定理2來求解函數的極值點,但定理2讀者不容易理解和記憶.因此在將這兩個充分條件教授給學生時,要注意將這兩個定理本身的內容解釋清楚.
同時,大家可以看到,從理論上講,假如函數y=f(x)“光滑”,那么它的極值點可以根據定理1和定理2確定,于是求y=f(x)的極值問題就轉化為求該函數一階導數的零點問題.顯然,這種方法只能處理完全“光滑”的函數.
現在數學教學應遵循“以應用為目的,理論知識以必需、夠用為度”原則,淡化概念,注重應用.因此,在教學過程中可以將新的解決方法例如計算機軟件引入課堂,引導學生運用現代信息技術手段解決問題.
三、利用MATLAB中的fminbnd程序,求解一元函數極值問題
因為y=f(x)的極小值問題等價于y=-f(x)的極大值問題,所以MATLAB的Toolbox函數中只有處理極小值的指令.鑒于此,我在這里只討論極小值問題.
Fminbnd指令具體如下:
X=fminbnd(fun,x1,x2)*求函數在區間(x1,x2)中極小值的指令最簡格式;
[x,fval,exitflag,output]=fminbnd(fun,x1,x2,options,P1,P2,…)
*求函數在區間(x1,x2)中極小值的指令最簡格式;
[說明]
Fun表示被解函數. x1,x2分別表示被研究區間的左、右邊界.
X,fval分別表示所求的極小值點坐標和函數值.
調用Fminbnd指令,求解函數極值的一般步驟:
(1)將別解函數構造成一個內聯函數對象y=inline(′(fun′,′x′);
(2)x1=區間左邊界;x2=區間右邊界;
(3)直接調用指令[x,fval,exitflag,output]=fminbnd(y,x1,x2).
現在我們來重新求解例1.
程序如下:
y=inline(′(x-1)*x^(2/3)′,′x′);
x1=-inf;
x2=+inf;
[x,fval,exitflag,output]=fminbnd(y,x1,x2)
結果輸出
x=0.4000
fval=-0.3257
exitflag=1
output=iterations:30
funcCount:33
algorithm:′golden section search,parabolic interpolation′
我認為,以上三種求解函數的極值點問題的方法,各有優勢與獨到之處,教師在教學過程中不應拘泥于單一的解題思路,而要引導學生開拓思維、積極思考,結合自身的特點進行探究性學習,使自己與學生在探究學習的過程中共同成長,在幫助學生培養思維能力的同時,讓學生學會運用適當的方法分析問題和解決問題,這才是數學教學的最終目的.
參考文獻:
[1]盛祥耀.高等數學.高等教育出版社[M],2001.
[2]鄒楊.Mathematica軟件在經濟函數最值中的運用.科技信息(學術研究),2008,(14).
[3]葉子祥.經濟應用數學[M].高等教育出版社,2003.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文