首页 > 解决方案 > 如何在数值上优化协程的结果

问题描述

机器的输出基于python的异步。

jupyter代码如下

import numpy as np
from scipy.optimize import minimize
import asyncio

async def test(data):
    #it should be some machine control code. I need to use await to hold until the machine's work is done.
    #it is just a toy model for demonstration
    x = data[0]
    y = data[1]
    res = (x-1.2)**2 + (y+3.6)**2
    return res


async def main():
    x0 = [0, 0]
    res = minimize(test, x0)
    print(res)

task = asyncio.create_task(main())

scipy 的 optimize.minimize 无法工作,因为 test() 是协程而不是可调用函数

有没有其他python包可以处理协程结果的数值优化?

标签: pythonscipypython-asyncio

解决方案


推荐阅读