Python 二维函数的优化

Python 二维函数的优化,python,optimization,mathematical-optimization,Python,Optimization,Mathematical Optimization,假设我们有一个二维函数 def f(x,y): #some calculations here return value 我们从观察中了解到: f(x,0.9y) = 10 f(x,0.8y)=15 f(x,0.8y) = 23 我怎样才能找到x,y的正确值,以获得与观测值的最佳拟合?如果出现这样的优化问题,建议采用哪种程序?您的问题似乎有输入错误。无论如何,考虑到我们只有两个数据点,优化并不完全可行,因为对于许多不同类型的函数,一组联立方程会给出精确的结果 如果您打算给出三个数

假设我们有一个二维函数

def f(x,y): #some calculations here 
    return value
我们从观察中了解到:

f(x,0.9y) = 10
f(x,0.8y)=15
f(x,0.8y) = 23


我怎样才能找到x,y的正确值,以获得与观测值的最佳拟合?如果出现这样的优化问题,建议采用哪种程序?

您的问题似乎有输入错误。无论如何,考虑到我们只有两个数据点,优化并不完全可行,因为对于许多不同类型的函数,一组联立方程会给出精确的结果

如果您打算给出三个数据点,有不同的方法: 注意,x是常数。这意味着无论函数是什么,我们都不能说2D函数的x部分。所以这真的是一个一维问题:y是如何表现的


考虑到我们对所讨论的数据一无所知,并且考虑到您给出的值,我本能地可能会选择指数/对数函数(假设最终值为0.7)。它也可能是一个线性函数,但一旦你拟合了你生成的函数,你就必须计算误差(这就是你要做的)。除此之外,根据我的经验,您所能做的并不多。

看看PSO——我认为这并不是正确的说法。观察结果看起来像
f(3,4)=12
。符号
f(x,0.9y)=10相当没有意义。为什么没有意义?我们希望找到观测误差最小的最佳x和y。如果我们知道其中一个参数,这是一个简单的优化问题。。。我们可以从两个初始猜测开始理解,但是你的数学符号是毫无意义的。是的,你是对的:)你知道怎么做吗?函数取决于两个变量。函数本身决定4个非线性常微分方程的输出(为整数)。我想选择x和y,以便输出与观测值尽可能匹配。