TensorFlow 多元函数极值计算与可视化实例
本文通过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 多元函数的极值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













