☰
驻点与二阶导:极值判定失效后如何用一阶导符号表解决
2026/10/2 9:38:09 网站建设 项目流程

驻点和二阶导,这两个词单拿出来都不难理解,但组合在一起,就成为高数和考研数学里经久不衰的考点。我经常跟学生说,判断一个驻点是极大值还是极小值,很多人第一步就做对了,第二步却栽在同一个地方:二阶导算出来等于0,接下来直接懵了。这种情况我也见过太多次——不是个别现象,而是几乎所有初学者都会撞上的坎。

这篇文章就把这条线从头到尾捋一遍:驻点到底怎么找,二阶导为什么能判断极大值和极小值,以及最关键的一节——当二阶导判定失效时,还有什么稳妥的替补方案。内容对正在学高数的学生、复习考研数学的同学,以及工作中需要做优化计算、却想补一补数学功底的工程师都适用。

1. 驻点到底在算什么:定义、直觉和找法

1.1 驻点的定义与几何直觉

先给结论:如果函数 (f(x)) 在 (x_0) 处可导,并且 (f'(x_0)=0),那么 (x_0) 就叫作函数的一个驻点。

这句话里有两个关键信息值得拆开看。第一,前提是“可导”,这意味着函数在 (x_0) 处必须有一条确定的切线;第二,条件是 (f'(x_0)=0),也就是这条切线是水平的。

从图形上看,驻点就是函数图像上“停车”的位置。想象你开一辆车,速度代表一阶导数,驻点意味着车速为零。但车速为零不一定代表你到了终点,你可能是爬坡爬不动了,也可能正在坡顶犹豫方向,甚至只是挂了个倒挡前的短暂停顿。所以驻点只是“可疑点”,它可能是极大值点、极小值点,也可能什么都不是。

有个很常见的误区我必须点名:尖点不是驻点。比如 (f(x)=|x|) 在 (x=0) 处确实取得极小值,但导数不存在,所以它不叫驻点。这也是为什么有些人死背“极值点一定出现在驻点或不可导点”,而不是“极值点一定是驻点”。

1.2 找驻点的三种常见场景

找驻点的操作就一句话:求导,解方程 (f'(x)=0)。但实际算的时候,不同函数类型会有不同的坑。

第一种是多项式函数。比如 (f(x)=2x^3-9x^2+12x-3),求导得到 (f'(x)=6x^2-18x+12=6(x-1)(x-2)),所以驻点是 (x=1) 和 (x=2)。这类题最考验因式分解能力,一般不会卡壳。

第二种是含三角函数的函数。比如 (f'(x)=\cos x-\sin x=0),问题就变成解三角方程 (\cos x=\sin x)。这时候我特别提醒:不要急着两边同除以 (\cos x),因为你得先确认 (\cos x=0) 是不是解。如果 (\cos x=0),原方程变成 (0= \pm 1),显然不成立,所以可以放心除。但在其他组合下不一定这么安全,最好先检验再化简。

第三种是含指数或对数的函数。比如 (g(x)=x e^{-x}),求导得到 (g'(x)=(1-x)e^{-x})。因为 (e^{-x}>0) 恒成立,可以直接判定驻点是 (x=1)。这类函数的关键是别被看似复杂的因子干扰,谁能约掉谁不能约掉,心里要有数。

还有一个很容易被忽略的点:解出来的驻点必须落在定义域内。比如函数定义域是 (x>0),结果解出 (x=-2),这个点再漂亮也不能用。定义域这一层检查,是很多人从第一步就翻车的重灾区。

2. 二阶导判断的核心规则:为什么 f'' 能区分极大值和极小值

2.1 从函数凹凸性理解二阶导

二阶导 (f''(x)) 描述的是一阶导数的变化速度,在图像上对应的就是函数的凹凸性。

当 (f''(x)>0) 时,函数图像在这个区间是“凹向上”的,形状像一个开口朝上的碗。想象一个小球放在碗底,它很稳定,这就是极小值的位置。当 (f''(x)<0) 时,函数图像是“凹向下”的,像倒扣的碗,小球放在顶部一碰就滑走,这是极大值的位置。

换成运动学语言更好理解:(f'(x)) 是速度,(f''(x)) 是加速度。如果在某个位置你速度为0,但加速度为正,说明你马上要被推着向上走,那这个位置就是局部最低点,即极小值;如果加速度为负,说明你马上要坠落,那就是局部最高点,即极大值。

很多人只背了“二阶导大于0是极小值,小于0是极大值”这个结论,却搞不清背后的几何含义,导致偶尔还会把方向记反。我建议每次判断前,心里画一下碗的形状,正负号和凹凸性的关系就再也不会混淆了。

2.2 二阶导判定的完整规则

假设 (x_0) 是驻点,即 (f'(x_0)=0),考察二阶导:

条件结论
(f''(x_0)>0)局部极小值点
(f''(x_0)<0)局部极大值点
(f''(x_0)=0)无法判定,需换用其他方法

必须强调一点:这是一个充分条件,不是必要条件。也就是说,即使 (f''(x_0)=0),(x_0) 仍然可能是极值点,只是二阶导判定工具管不了这个场景。典型的例子后面会专门讲。

另外,这套规则的适用前提是 (f'(x_0)=0)。如果 (x_0) 根本不是驻点,哪怕 (f''(x_0)>0) 或者小于0,也不能直接下极值的结论。因为二阶导只描述凹凸性,凹凸性会影响极大还是极小,但前提是你在“驻点”这个候选名单上。

2.3 用泰勒展开看本质:局部二次近似

也许有人会问:为什么一个二阶导的符号就能决定一整类问题?这背后的数学原理其实藏在泰勒展开里。

在光滑函数中,驻点 (x_0) 附近,函数可以展开为:

[ f(x_0 + h) = f(x_0) + f'(x_0)h + \frac{1}{2}f''(x_0)h^2 + o(h^2) ]

由于 (f'(x_0)=0),一阶项直接消失,剩下:

[ f(x_0 + h) - f(x_0) \approx \frac{1}{2}f''(x_0)h^2 ]

右侧的 (h^2) 永远是非负的,所以差值符号完全由 (f''(x_0)) 决定。如果 (f''(x_0)>0),那么在 (x_0) 的任意足够小邻域内,(f(x)>f(x_0)),这就是局部极小值;反过来就是局部极大值。

这个方法本质上是用一个抛物线在驻点附近“拟合”原函数,抛物线的开口方向直接告诉我们是碗还是倒扣的碗。这也是为什么二阶导判定效率高,因为它规避了复杂的几何想象,只用一阶导数符号变化就能推断出完整的局部形态。

3. 实操演示:三类典型函数的完整判定过程

3.1 多项式函数:常规步骤走一遍

以 (f(x)=x^3-3x^2+1) 为例,完整走一遍流程。

第一步,求一阶导并找驻点:

[ f'(x)=3x^2-6x=3x(x-2) ]

令 (f'(x)=0),得到 (x=0) 和 (x=2)。

第二步,求二阶导 (f''(x)=6x-6)。

第三步,逐个代入:

  • (x=0) 处:(f''(0)=-6<0),所以 (x=0) 是局部极大值点,极大值为 (f(0)=1)。
  • (x=2) 处:(f''(2)=6>0),所以 (x=2) 是局部极小值点,极小值为 (f(2)=8-12+1=-3)。

第四步,顺手看一眼凹凸性。(f''(x)>0) 对应 (x>1),(f''(x)<0) 对应 (x<1),说明函数在 ((-\infty,1)) 上凹向下,在 ((1,+\infty)) 上凹向上,拐点正好在 ((1,-1))。这和前面两个极值点的结论完全吻合。

如果题目给的是闭区间 ([-1,3]) 求最值,还要补齐端点:

[ f(-1)=-1-3+1=-3,\quad f(3)=27-27+1=1 ]

此时区间最大值为1,分别在 (x=0) 和 (x=3) 取得;最小值为-3,分别在 (x=-1) 和 (x=2) 取得。你看,驻点外的端点一旦参与进来,结论立刻会发生变化。

3.2 含三角函数的函数:注意周期性和隐藏解

考察 (g(x)=\sin x+\cos x),定义域取 ([- \pi, \pi])。

先求导:

[ g'(x)=\cos x - \sin x ]

令 (\cos x = \sin x),也就是 (\tan x =1),在区间 ([- \pi, \pi]) 内解出两个点:

[ x=\frac{\pi}{4},\quad x=-\frac{3\pi}{4} ]

很简单吧。但这里有一个细节我要多说一句:如果你心算太快,很容易漏掉负的那个解。遇到三角方程,脑子里一定要有单位圆,把整个周期的候选点都列出来,再按定义域截取。

接着求二阶导:

[ g''(x)=-\sin x - \cos x ]

代入:

  • 在 (x=\frac{\pi}{4}) 处,(g''=-\frac{\sqrt{2}}{2}-\frac{\sqrt{2}}{2}=-\sqrt{2}<0),所以 (\frac{\pi}{4}) 是局部极大值点,极大值为 (\sqrt{2})。
  • 在 (x=-\frac{3\pi}{4}) 处,(g''=\frac{\sqrt{2}}{2}+\frac{\sqrt{2}}{2}=\sqrt{2}>0),所以 (-\frac{3\pi}{4}) 是局部极小值点,极小值为 (-\sqrt{2})。

这个例子能清楚地展示周期性带来的重复结构:一个周期内极大值和极小值交替出现,规律非常稳定。

3.3 含指数项的函数:利用恒正因子简化判断

再看一个含有指数项的函数 (h(x)=x e^{-x})。

求导:

[ h'(x)=e^{-x} - x e^{-x} = (1-x)e^{-x} ]

因为 (e^{-x}) 恒大于0,所以 (h'(x)=0) 等价于 (1-x=0),得 (x=1)。

继续求二阶导:

[ h''(x)= -e^{-x} - (1-x)e^{-x} = (x-2)e^{-x} ]

代入驻点:

[ h''(1)=(1-2)e^{-1}=-\frac{1}{e}<0 ]

所以 (x=1) 是局部极大值点,极大值 (h(1)=\frac{1}{e})。

把这个函数放到整个实数范围看,(x \to +\infty) 时 (h(x)\to 0),(x \to -\infty) 时 (h(x)\to -\infty),因此 (1/e) 不仅是局部极大值,还是全局最大值。这个判断在优化题里非常常见,尤其是排队论、可靠性工程里的损耗函数。

3.4 稍稍难一点:双驻点加边界检查

来一道稍复杂的综合题:(k(x)=x^4-8x^2),区间取 ([-3,3]),求最值。

先求导找驻点:

[ k'(x)=4x^3-16x=4x(x^2-4)=4x(x-2)(x+2) ]

驻点有三个:(x=-2, 0, 2)。

二阶导:

[ k''(x)=12x^2-16 ]

代入:

  • (x=0):(k''(0)=-16<0),局部极大值点,(k(0)=0)。
  • (x=\pm2):(k''(\pm2)=48-16=32>0),两个局部极小值点,(k(\pm2)=16-32=-16)。

但别忘了区间端点:

[ k(-3)=81-72=9,\quad k(3)=9 ]

所以整个区间上的最大值是9,分别在两个端点取得;最小值是-16,在两个内部驻点取得。看吧,如果只盯着驻点,最大值就会被漏掉。凡是闭区间问题,端点检查是不可省略的收尾动作。

4. 二阶导判定失效的坑与备用方案

4.1 f''(x)=0 时,为什么开始失灵

前面提到,二阶导判定失效的条件是 (f''(x_0)=0)。失灵的根源在泰勒展开里一目了然:当 (f''(x_0)=0) 时,二次项也没了,函数变化的主导项变成更高阶的部分,这部分符号可能是正的,也可能是负的,甚至可能左右不同号,二阶导一个符号已经无法代表全部信息。

最典型的三个例子放在一起看:

函数驻点 (x_0)(f''(x_0))实际结论
(f(x)=x^4)(x=0)(0)局部极小值
(f(x)=-x^4)(x=0)(0)局部极大值
(f(x)=x^3)(x=0)(0)拐点,不是极值

三个函数在 (x=0) 处的二阶导全是0,结论却完全不同。这就是“无法判定”四个字的真正含义:不是告诉你“不是极值”,而是二阶导这个工具失效了,必须换工具。

4.2 备用方案A:一阶导符号表

最稳妥、最不容易出错的备用方法,是一阶导符号表。它的核心思路是:既然 (f'(x_0)=0) 只是说明瞬时速度为0,那我们只要看驻点左右两侧速度方向,就能知道函数是先减后增还是先增后减。

具体步骤分三步。

第一步,取驻点 (x_0),在它的左侧和右侧各选一个测试点,比如 (x_0-0.1) 和 (x_0+0.1),或者更远处的整数点。

第二步,把测试点代入 (f'(x)),记录正负号。小心如果两个测试点之间还有其他驻点,符号可能被干扰,最好选择与相邻驻点之间的一半位置。

第三步,根据符号变化下结论:

  • 左负右正:极小值点。
  • 左正右负:极大值点。
  • 左右同号:不是极值点。

用 (f(x)=x^4) 验证:(f'(x)=4x^3)。左测试点 (x=-1) 时 (f'<0),右测试点 (x=1) 时 (f'>0),符号从负变正,所以是极小值点。哪怕二阶导全是0,符号表也能一锤定音。

再验证 (f(x)=x^3):(f'(x)=3x^2),左右测试点都为正,符号未变,所以不是极值点,结合凹性变化确认它是拐点。

4.3 备用方案B:高阶导数法

如果想要更高阶的判定工具,可以用“高阶导数法”。原理来自泰勒展开的更高阶项:如果函数在 (x_0) 处的第一到第 (k-1) 阶导数都为0,而第 (k) 阶导数不为0,那要看 (k) 的奇偶性。

  • (k) 为偶数:驻点是极值点。若第 (k) 阶导数大于0,则为极小值;若小于0,则为极大值。
  • (k) 为奇数:驻点是拐点,不是极值点。

用 (f(x)=x^4) 演示:在 (x=0) 处,

[ f'(0)=f''(0)=f'''(0)=0,\quad f^{(4)}(0)=24>0 ]

第一个非零导数出现在第4阶,偶数阶且为正,所以是极小值点。这个方法在理论上非常优美,实操中却有一个明显的局限性:高阶导数的求解和计算量都很吓人。所以我的建议是,日常做题优先用符号表,高阶导数法更适合理论分析或验证。

4.4 驻点、极值点、拐点与不可导点,别混成一团

这个知识点经常伴随另一组易混概念出现,干脆放在一起理清楚。

驻点要求函数可导且导数为0,极值点要求局部最大或最小,拐点要求凹凸性发生改变,不可导点则是导数不存在的点。四者的关系可以用一张表概括:

点的类型本质要求判定工具是否必须是驻点
驻点(f'(x)=0)一阶导本身就是驻点
极值点局部最大/最小二阶导、符号表可以是驻点或不可导点
拐点(f'') 变号二阶导符号变化与驻点无关
不可导点导数不存在导数定义不可能是驻点

举两个容易混淆的例子。(f(x)=x^3+x) 在 (x=0) 处 (f''(0)=0) 且左右变号,所以是拐点,但它同时有驻点吗?求导 (f'(x)=3x^2+1),恒大于0,根本不存在驻点。拐点完全可以在没有驻点的情况下出现。

再看 (f(x)=x^3),(x=0) 既是驻点,也是拐点,但它不是极值点。这种“驻点和拐点重合”的情况,在基础题里喜欢拿出来当陷阱,记住一个检验原则就行:看一阶导符号是否变号,不变号就绝对不是极值点。

5. 常见错误与排查技巧实录

到了这一节,我想直接放干货,把平时批改作业和学生提问中反复出现的错误整理成一个清单。每一条背后都是我亲眼见过的翻车现场。

错误一:解方程时把可能为0的因子直接约掉。比如解 (\cos x = \sin x),有人两边同时除以 (\cos x),得到 (\tan x=1),还觉得天经地义。万一 (\cos x=0) 也是解呢?虽然这个具体方程中确实不是,但这个习惯非常危险。凡是遇到“除以未知量”的化简步骤,先问自己一句:除掉的因子有没有可能等于0?

错误二:忽略 (f'(x_0)=0) 这一前提。有人拿到函数直接算二阶导,发现 (f''(x)>0),就报“极小值”。可是这个点根本不是驻点。这类错误出现在分段函数和复杂复合函数中特别多,因为一阶导往往不止一个零点,漏算一个就把整个判定链条带偏。

错误三:闭区间最值只盯着驻点。这大概是期末考试里最经典的扣分点。求最值时,驻点、不可导点、端点三手都要抓,一个都不能少。

错误四:(f''(x_0)=0) 就直接结论“不是极值”。这是概念理解不透造成的。(f''=0) 只能说明二阶导判定失效,不代表没有极值。此时必须使用符号表或高阶导数法。

错误五:混淆驻点和拐点。看到 (f''(x)=0) 就喊拐点,实际上还要确认二阶导在左右两侧变号。(f''(x_0)=0) 只是拐点的候选条件,不是充分条件。

错误六:忽略定义域和可导性。对数函数、根式函数、分式函数都有定义域限制,解出来的驻点如果不在定义域内,直接作废。另外,尖点处虽然可以有极值,但不能称为驻点,符号表判断时也要把这类点单独考虑。

错误七:符号表测试点选取过于随意。如果驻点很密,比如相邻驻点间距只有0.1,你取左端点距离0.2,就可能跳过另一个驻点,导致符号被错误归因。稳妥做法是取两个相邻驻点之间的中点。

我在教学过程中还发现一个特别有效的自查方法:做完每一步后停顿五秒,问自己三个问题。第一,这个点满足 (f'(x)=0) 吗?第二,如果用了二阶导,(f''(x)) 在这个点存在吗?第三,如果存在且等于0,我有没有准备替代方案?这三个问题能挡住九成以上的低级错误。

当然,如果你在计算过程中发现一阶导或二阶导特别繁琐,先别急着硬算,回头检查一下求导过程是不是漏了链式法则。很多极值判断错误,源头不是判断环节,而是求导环节就已经出错了。

最后再分享一个小技巧:做题时如果条件允许,顺手在草稿纸上画一条函数的大致走向曲线。你不用画得很准,只要标出驻点、端点、不可导点,再看一下左右趋势,很多争议性结论都会在一分钟内迎刃而解。图像直觉、代数计算和表格验证三者互相印证,才是最稳的思路。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询