A Peaceful Tree 2019-09-14 21:42 采纳率: 50%
浏览 11523
已采纳

如何解决numpy.ndarray' object is not callable

我用python进行非线性规划时报错numpy.ndarray' object is not callable,有大佬可以帮忙解释一下吗
直到最后一句res=minimize。。。才报错,之前检查过都没有问题

from scipy.optimize import minimize
import numpy as np
def fun():
    v=lambda x:abs((x(1)+0*x(2)+0*x(3)+0*x(4)+0*x(5)+0*x(6)+0*x(7)+0*x(8)+0*x(9)+0*x(10)+0*x(11)+0*x(12)+0*x(13)+0*x(14)))
    return v
def cons():

    # d,e=args
    con=({'type':'eq','fun':lambda x: x(1)-(2171.4/0.85*x(2))},
         {'type': 'eq', 'fun': lambda x: (x(5)*x(6)*89.496/6.28)-x(7)-x(8)},
         {'type': 'eq', 'fun': lambda x: x(9)*x(10)-x(10)*x(11)-x(8)*x(11)},
         {'type': 'eq', 'fun': lambda x: x(12) - x(13)+x(11)},
         {'type': 'eq', 'fun': lambda x: x(10) - 12500*3.1415},
         {'type': 'ineq', 'fun': lambda x: x(6) - x(14)},
         {'type': 'ineq', 'fun': lambda x: x(3) - x(4)-2.45},
         {'type': 'eq', 'fun': lambda x: x(14) - 12.14*3.1415},
         {'type': 'ineq', 'fun': lambda x: x(4) - 2.45},
         {'type': 'ineq', 'fun': lambda x: 97.55 - x(4)},
         {'type': 'ineq', 'fun': lambda x: x(3) },
         {'type': 'ineq', 'fun': lambda x: 95.1 - x(3)},
         {'type': 'ineq', 'fun': lambda x: x(5)-2.45-x(4)},
         {'type': 'ineq', 'fun': lambda x: 100-x(5)}
    )
    return con
a=fun()
b=cons()
# print(b)
x0=np.asarray([3,4,3,2,3,4,3,2,3,4,3,2,3,2])
bounds=((0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None),(0,None))
res=minimize(a,x0,method='SLSQP',constraints=b,bounds=bounds)
print(res)
print(b)

  • 写回答

1条回答 默认 最新

  • 关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝