python - Python 中的 OSQP 求解器
问题描述
我有一个关于 OSQP(算子分裂二次程序)求解器实现的问题:
我想用它来解决随机生成的 10x10 矩阵的二次问题。
我尝试了以下方法:
import osqp
import numpy as np
from scipy import sparse
# Define problem data
P = sparse.csc_matrix(np.random.uniform(1, 10, size=(10, 10)))
q = np.random.uniform(0, 9, size=10)
Gs= np.random.uniform(0, 9, size=10)
print("der Maßstab für Gs:", Gs)
A = sparse.csc_matrix(np.diag(-1*Gs))
l = np.zeros(10)
# Create an OSQP object
prob = osqp.OSQP()
# Setup workspace and change alpha parameter
prob.setup(P, q, A, l, alpha=1.0)
# Solve problem
res = prob.solve()
但只是有错误
ValueError: Workspace allocation error!
你知道我做错了什么吗?
当我使用求解器cvxopt
以及使用网站上的示例代码时,它运行良好。
我改变了一点,但它根本不起作用。
解决方案
推荐阅读
- typescript - 在 typescript 类之外定义静态方法
- html - 如何制作像 Tesla Cybertruck 订单网站上的输入文本字段?
- javascript - Uncaught SyntaxError: Invalid regular expression flags
- html - 具有 css 变量和 hsla 的线性渐变
- amazon-web-services - 为什么在 vue-apollo 之上使用 AWS AppSync 客户端?
- python - Regex to extract unique string to new column, getting error "look-behind requires fixed-width pattern"
- elixir - 雨伞应用有什么好处?
- reporting-services - URL 中的 SSRS 传递日期参数
- python - 需要帮助了解如何使用我制作的 python 包
- php - 如何打印数组中的所有值,它只打印第一个?