TensorFlow 多元函数极值计算与可视化实例

Oliver
Oliver
发布时间:2026-10-13 | 5人浏览过
原创

本文通过Python代码实例详解多元函数的极值判定,涵盖极大值、极小值及无极值(鞍点)三种情况。结合3D图形展示椭圆抛物面、锥面及马鞍面的几何特征,帮助理解极值点的数学定义与编程实现。

多元函数极值定义与Python实现概述

flyfish

python实现

设函数 的某个邻域内有定义,对于该邻域内异于的点,如果都适合不等式

则称函数在点有极大值。

如果都适合不等式

则称函数在点有极小值.

极大值、极小值统称为极值。使函数取得极值的点称为极值点。

极小值案例:椭圆抛物面顶点分析

有极小值的例子

函数

在点(0,0)处有极小值。因为对于点 (0,0)的任一邻域内异于(0,0)的点,函数值都为正,而在点(0,0)处的函数值为零。从几何上看这是显然的,因为点(0,0,0)是开口朝上的椭圆抛物面

的顶点。

代码


from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-10, 10, 0.1)
Y = np.arange(-10, 10, 0.1)
X, Y = np.meshgrid(X, Y)
Z = (3*X**2 + 4*Y**2)
ax.plot_surface(X, Y, Z, rstride=1, cstride=1)
plt.show()

极大值案例:下方锥面顶点分析

有极大值的例子

函数

在点(0,0)处有极大值。因为在点(0,0)处函数值为零,而对于点(0,0)的任一邻域内异于(0,0)的点,函数值都为负,点(0,0,0)是位于xOy平面下方的锥面$$z=-\sqrt{x^2+y^2}的顶点。

代码


from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-10, 10, 0.1)
Y = np.arange(-10, 10, 0.1)
X, Y = np.meshgrid(X, Y)
Z = np.sqrt(X**2 + Y**2)*(-1)
ax.plot_surface(X, Y, Z, rstride=1, cstride=1)
plt.show()

无极值案例:马鞍面与鞍点解析

没有极大值也没有极小值的例子

函数z=xy在点(0,0)处既不取得极大值也不取得极小值。因为在点(0,0)处的函数值为零,而在点(0,0)的任一邻域内,总有使函数值为正的点,也有使函

数值为负的点。

像一个马鞍的图形

代码


from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-10, 10, 0.1)
Y = np.arange(-10, 10, 0.1)
X, Y = np.meshgrid(X, Y)
Z = X*Y
ax.plot_surface(X, Y, Z, rstride=1, cstride=1)
plt.show()

以上这篇TensorFlow 多元函数的极值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表