微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何优化一组方程的变量?

如何解决如何优化一组方程的变量?

我有 6 个变量,我想根据 20 个方程来估计它们的值(这些方程以列表形式存储在 f0 中)。有人知道我可以使用 python 中的哪个库来估计这些变量吗?优化完成后,这就是我对 6 个变量的期望:

# expected value for x[0] = 2,# expected value for x[1] = 0.002,# expected value for x[2] = 4000,# expected value for x[3] = 2,# expected value for x[4] = 0.002,# expected value for x[5] = 0.002

def func(x):
    rl = [1,5,10,20,30,40,50,60,70,80,90,100,110,120,150,200,250,300,350,400]
    vin = 20*[480]
    ian = [22.381,6.209,3.4182,2.0862,1.7003,1.5329,1.4446,1.3918,1.3574,1.3337,1.3165,1.3036,1.2857,1.2793,1.2695,1.2552,1.2475,1.2429,1.2398,1.2373]
    f0 = []
    for i in range(len(rl)):
        f0.append((x[3]*x[2]*(376.99*1j*x[5] + x[4] + rl[i])/((x[3] + x[2])*(x[3]*x[2]/(x[3] + x[2]) + 376.99*1j*x[5] + x[4] + rl[i])) + 376.99*1j*x[1] + x[0])* ian[i] - vin[i])
    return f0

我尝试使用least_squares,如下所示,但结果有点偏差。谢谢!

res = least_squares(func,(0.1,0.01,1,0.01),bounds = ((0,0),(2,0.5,5000,2,0.5)))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。