python求解多元一次方程

文章介绍了在面对复杂的多元一次方程,如在强化学习中的贝尔曼方程中遇到的问题,当方程数量大或解复杂时,手动计算不再可行。文中以一个三元一次方程组为例,展示了如何利用Python的Numpy和Scipy库中的linalg模块来求解,通过调用`np.linalg.solve()`函数,成功找到方程的解,这里是1、2、3。
摘要由CSDN通过智能技术生成

学习过程中会遇到多元一次方程求解问题,比如强化学习中的贝尔曼方程计算价值函数时,动辄就是N元一次方程,当N小于等于3或者说方程结果是比较简单的整数时我们还可以手动计算,但是N比较大或者方程解是复杂的小数时手算肯定是不现实的。

使用下图中的三元一次方程组为例:

使用 linalg 模块,该模块可以用于解线性方程组、求解矩阵的逆矩阵、求特征值等,代码如下:

import numpy as np
import linalg
from scipy.linalg import solve
a=np.array([[1,1,1],[0,2,1],[1,-1,2]]) #未知数的系数
b=np.array([6,7,5]) #常数项
np.linalg.solve(a,b)

解得三个未知数的解分别为1、2、3.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值