SOFTWARE 2021
软  件第42卷 第3期
2021年
Vol. 42, No.3
0 引言
在高等数学理论中求解多元函数的极值问题是研究
多元微分学的基础,在实际生活中也有广泛应用。在用数学分析量化实际问题来求最优解时,其最优解往往受多个条件因素影响,因此通常用到的是多元函数,而在
最优化问题中常用的方法是求多元函数的极值,例如在经济学领域中用来合理分配达到利润最大化,在数据分析领域中筛选最优元素,在规划领域中求最优解等。传统人工求多元函数极值的方法繁琐,容易出错,时
间成本高,因此需要借助计算机科学软件来进行求解。Python 软件的逻辑语言简明,交互性强,其中含有
丰富的资源库,通过合理调用能够快速实现科学计算,被广泛应用在数学求值计算中。基于Python 环境合理设计程序能够高效解决多元函数极值问题,为多元函数应用提供支撑。多元函数求极值的基础是应用极值的充分条件来判断并求解,以此为依据通过Python 软件能够实现对极值的快速准确求解。
1 Python 软件简介
Python 是一种逻辑语法简便,有较强的通用性的
软件,它最早是20世纪80年代由荷兰程序员开发出
作者简介:赵禹琦(1990―),女,辽宁铁岭人,理学硕士,助教,研究方向:高等数学教学及理论研究。
Python 软件在求多元函数极值中的应用
赵禹琦
(湛江科技学院智能制造学院,广东湛江  524094)
摘 要:在高等数学领域中,求多元函数的极值是解决联系实际求最优解问题的最基础,最有效的方法。而在较为复
杂的多元函数中,求解极值的计算量较大,因此合理借助计算机软件来实现求极值能够节省时间,提高效率。在众多软件中Python 具有语言逻辑简单,通用性强,计算效率高等特点,同时Python 中丰富的资源库能够为科学计算提供有力支撑,因此选用Python 软件对数学领域的多元函数的极值进行求解。以二元函数为例,通过在Python 软件环境下实现求解函数的极值,在分析最优化问题等实际应用中实现高效求解。
关键词:多元函数;极值;求解;Python 中图分类号:TP311.5
文献标识码:A  DOI :10.3969/j.issn.1003-6970.2021.03.050
本文著录格式:赵禹琦.Python软件在求多元函数极值中的应用[J].软件,2021,42(03):171-174
The Application of Python Software in Finding the Extremum of Multivariate
Function
ZHAO Yuqi
(School of Intelligent Manufacturing Zhanjiang Institute of Science and Technology, Zhanjiang  Guangdong  524094)【Abstract】:In the field of higher mathematics, finding the extremum of multivariate function is the most
basic and eff ective method to solve the optimization problem. In the more complex multivariate functions, a large
amount of calculation are needed to fi nd the extremum. Therefore, with the help of computer software, it can save time and improve effi  ciency for fi nding the extremum. Among diff erent software, python is featured with simple language logic, strong versatility and high computational effi  ciency. At the same time, the rich resource library in python can provide strong support for scientifi c calculation. Therefore, python is chosen to be applied to solve the problem of fi nding the extremum of multivariate functions in the fi eld of mathematics. Taking binary function as
an example, Finding the extremum of multivariate function by python software, effi  ciency has been great improved
in practical applications especially when analyzing optimization problems.
【Key words】:multivariate function;extremum;solve problems;Python
设计研究与应用
软 件
python干嘛用的第42卷 第3期SOFTWARE
的。Python所用语言是强调代码易读性的高级语言,从最初开发到现在已经更新多个版本,随着其功能性的逐渐增强,越来越多的程序员们选择使用Python完成代码编写[1]。Python的功能性强,广泛应用在数据分析,云计算,网页设计和开发等前沿领域,众多大型公司和互联网企业例如知乎,百度,阿里等,都主要依托Python软件。Python的代码是自由开放的,用户使用Python软件是不需要支付任何费用的,并且其下载
Python软件中还可以定义函数并调用,其格式如下:def  fun(x,y):
Return(2*x+3*y+1)
fun(1,2)
Python里面有多种数据类型,主要分为元祖类型,列表类型和字典类型。元祖类型是指用小括号括起来的
一组元素,内容具有不可变性。列表类型的表示主要用
中括号,它与元祖的区别是内容和长度是动态可变的。
字典类型类似一个容器,可以用来储存任意的对象,具
有可变性。
Python软件中包含的库种类丰富,我们把具有相
关功能的模块组成的集合统称为库。在Python中主要
分为标准库,第三方库以及自定义库[4]。具有核心作用
增量0000
(,)(,)
z f x x y f x y
∆=+∆−,如果存在0
00
(,
lim lim
x x
f
z
x
∆→∆→
=
0000
(,)(,)
im f x x y f x y
x
+∆−
∆的
极限值,则称函数z=f(x,y) 在该点关于x可偏导,把这个极限值叫做z=f(x,y)在(x0,y0)关于x的偏导数。记为000000
(,),(,),(,)
x x
f x y z x y f x y
x
∂。
赵禹琦:Python 软件在求多元函数极值中的应用
类似的可以定义函数z=f(x,y)关于y 的偏导数,记为000000(,),(,),(,)y y f
x y z x y f x y y
∂∂。 从偏导数定义可以看出二元函数z=f(x,y)在(x 0,y 0)点
关于x 的偏导数等于一元函数f(x,y 0)在点x 0处的导数,
关于y 的偏导数也有类似结论。可以看出求多元函数偏导数可以先固定一个元素,并对另一个元素求导数。
如果二元函数z=f(x,y)在(x,y)∈D 具有偏导数
z z
x y
∂∂==应用极值充分条件求解二元函数极值的问题提供了支撑,可以节省计算时间,保证求解的准确性。
求解二元函数的极值关键在于求出该函数的一阶和
二阶偏导数,在利用充分条件进行判别,具体举例如下:
求函数x y x y x y x f 933),(2
233−++−=的极值。依据极值判别的充分条件:
先求出相应的一阶偏导数:
963),(2−+=x x y x f x
y y y x f y 63),(2+−=
通过解方程组求驻点:  ==0),(0
),(y x f y x f y x 得到驻点(-3,0),
(-3,2),(1,0),(1,2)
求解该函数的二阶偏导数f xx =6x+6,f xy =0,f yy =-6x+6
>>> def fun4(x,y):return(diff (fun1(x,y),y))>>> fun4(x,y)0
>>> def fun5(x,y):
软 件
第42卷 第3期SOFTWARE
return(diff (fun2(x,y),y))
>>> fun5(x,y)
-6*y + 6
>>> def f1(x,y):
return(6*x + 6)
>>> a1=f1(-3,0);a2=f1(-3,2);a3=f1(1,0);a4=f1(1,2) >>> b1=0;b2=0;b3=0;b4=0
>>> def f2(x,y):
return(-6*y + 6)
>>> c1=f2(-3,0);c2=f2(-3,2);c3=f2(1,0);c4=f2(1,2) >>> m1=a1*c1-b1**2;m2=a2*c2-b2**2;m3=a3* c3-b3**2;m4=a4*c4-b4**2
>>> if m1>0 and a1>0:
print(�极小值�,fun0(-3,0))
elif m1>0 and a1<0:
print(�极大值�,fun0(-3,0))
elif m1<0:
print(�不是极值�)
else:
print(�不能判断�)
不是极值
>>> if m2>0 and a2>0:
print(�极小值�,fun0(-3,2))
elif m2>0 and a2<0:
print(�极大值�,fun0(-3,2))
elif m2<0:
print(�不是极值�)
else:
print(�不能判断�)
极大值 31
>>> if m3>0 and a3>0:
print(�极小值�,fun0(1,0))
elif m3>0 and a2<0:
print(�极大值�,fun0(1,0))
elif m3<0:
print(�不是极值�)
else:
print(�不能判断�)
极小值 -5
>>> if m4>0 and a4>0:
print(�极小值�,fun0(1,2))
elif m4>0 and a2<0:
print(�极大值�,fun0(1,2))
elif m4<0:
print(�不是极值�)
else:
print(�不能判断�)
不是极值。
经过对例题验算结果与Python软件程序运行结果相同,可以证明该代码能准确有效运行。由此可见应用Python软件可以求出符合极值充分条件的二元函数的极值,且语言逻辑简单,能够达到节省时间提高效率的目地。
4 结语
多元函数求极值问题是多元微分学的重要组成部分,在解决受多种客观因素影响的实际问题时,通常把问题抽象出带有多元函数的数学模型,对其求最优解时广泛应用到多元函数求极值思想。高效精确地求出多元函数的极值有助于节约时间成本,实现科学求解最优化问题。而Python软件可以实现求解导数,偏导数,高阶导数等科学计算,通过适当编写代码,能够达到精确求得满足极值判别条件的二元函数的极值。Python具有简单的语法结构,运行效率提高,能够为解决实际问题提供有效工具。
参考文献
[1] 张伟,邱崇涛,谢明宏,等.利用Python自动化生成地质解释图件[J].物探与化探,2021,45(1):186-191.
[2] 王轶哲.基于数据挖掘的客户预测及其Python实现技术研究[J].电子制作,2020(24):51-52.
[3] 张珩.Python的计算机软件应用技术探讨[J].电脑知识与技术,2020,16(32):96-97+102.
[4] 顾建军.信息与计算科学专业的Python教学分析与设计[J].科技资讯,2020,18(35):35-37+40.
[5] 王培,李津平,李奇芳,等.多元函数极值的探讨[J].玉林师范学院学报,2019,40(5):10-13.