问题标签 [nonlinear-optimization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
372 浏览

python - 使用 optimize.curve.fit 估计参数值

我试图估计非线性方程的参数:

使用该问题的答案中概述的方法,但找不到有关如何将多个自变量适当地传递给 curve_fit 函数的文档。

具体来说,我试图根据植物密度 (x1) 和竞争对手的密度 (x2) 来估计植物生物量 (y)。对于植物密度和植物生物量之间的关系,我有三个指数方程(形式为 y = a[1-exp(-b*x1)]),对于三个竞争对手的密度具有不同的参数值:

因此,我想按照以下方式编写代码:

但是,我还没有找到关于如何格式化参数 y (传递给fit_nonlinear)以捕获 x_vals 的二维性质的任何文档(curve_fit状态 y 的文档应该是 N 长度序列)。我正在尝试的可能curve_fit吗?

0 投票
1 回答
5489 浏览

matlab - 如何使用 Matlab 进行非线性最小二乘 Michaelis–Menten 参数估计

我有一组测量值,我开始进行线性近似(如本图所示)。参数的线性最小二乘估计V_{max}K_{m}Matlab 中的这段代码:

这会产生一个看起来不错的合身。接下来,我想做同样的事情,但使用的是非线性最小二乘法。但是,拟合总是看起来不对,这是该尝试的代码:

这需要在 M 文件中使用此功能:

如果你运行代码,你会看到我的问题。但希望,不像我,你看到我做错了什么。

0 投票
0 回答
1316 浏览

r - 使用阿拉巴马包的R中的非线性优化

我正在尝试使用包 alabama 解决 R 中的非线性优化问题。像这样定义目标函数后:

我已经定义了这样的不等式:

然后使用 hin 函数调用目标函数,如下所示:

使用的值是自动化的,因此使用单元格引用。这是给定的数据库4

我得到的错误是......

请帮忙!

0 投票
1 回答
4643 浏览

python-2.7 - 如何在python中求解3个非线性方程

我有以下需要求解的 3 个非线性方程组:

-xyt + HF = 0

-2xzt + 4yzt - xyt + 4z^2t - M1F = 0

-2xt + 2yt + 4zt - 1 = 0

其中 x、HF 和 M1F 是已知参数。因此,y、z 和 t 是要计算的参数。

尝试解决问题:

但问题是,如果我想使用,scipy.optimize.fsolve那么我应该输入一个初始猜测。就我而言,我没有任何初始条件。

是否有另一种方法可以在 python 中求解具有 3 个未知数的 3 个非线性方程?

编辑:

原来我有条件!条件是 HF > M1F、HF > 0 和 M1F > 0。

0 投票
1 回答
805 浏览

python-2.7 - 在 python 中使用 scipy.optimize 的初步猜测

我在使用python编码时遇到以下问题:

我有 7 个参数:x、y、z、t、HF、M1F 和 M2F。用户应输入这 3 个中的任何一个,程序应计算其余部分。

我的关系是:

尝试解决问题:

我有 7 个参数,用户应该输入 3 => 我将留下 4 个参数。因此,这一切都是关于求解具有 4 个未知数的 4 个非线性方程组

我在网上阅读了scipy.optimize可用于求解非线性方程组的内容。但我需要一个初步的猜测。

回到问题的物理学,我有以下初始条件:

这些初始条件如何帮助我获得初始猜测,以便我可以使用 解决我的问题scipy.optimize

0 投票
1 回答
1198 浏览

r - R中用于非线性优化问题的solnp和gosolnp函数之间的区别

这两个功能的主要区别是什么,r帮助手册说gosolnp有助于正确设置初始参数。否则有什么不同吗?另外,如果是这样,我们如何确定参数空间的正确分布类型?

在我的问题中,初始参数集很难确定,这就是使用优化问题的原因。但是,我对参数的上限和下限有所了解。

0 投票
2 回答
404 浏览

r - 如何绘制我的函数以使用 R 中的数据进行绘图

根据同时点击的用户,我有关于网站响应时间的数据。

例如:
10 个用户同时点击有(平均)响应时间 300 毫秒
20 个用户 -> 450 毫秒等

我在 R 中导入数据,并从 2 列数据(用户、响应时间)中绘制图表。我还使用该函数loess在图中绘制了关于这些点的线。

这是我写的代码:

这是我的情节图像:

在此处输入图像描述

我的问题是:

  1. 如何在同一图中绘制我的非线性函数以将其与其他线进行比较?
    例如:response_time (f(x)) = 30*users^2。

  2. 还有如何对函数线loess和我的函数进行预测并将它们显示到图中,例如:如果我的数据直到 250 个用户,则进行预测直到 500 个用户

0 投票
3 回答
1336 浏览

r - 具有任意约束的 R 优化

我已经在 Excel 中完成了,但需要在 R 中运行适当的模拟。

我需要最小化函数F(x)x是一个向量),同时有约束sum(x)=1,所有值x都是[0,1]和另一个函数G(x) > G_0

我已经用optimand试过了constrOptim。他们都没有给你这个选项。

0 投票
1 回答
4984 浏览

r - 在非线性优化函数“nloptr”中传递参数

我最初的问题可以在这里找到:任意约束的 R 优化

它导致了另一个问题,如何将参数传递到nloptr.
我需要最小化一个函数F(x,y,A),其中x和 y 是向量并且A是矩阵,同时约束sum(x * y) >= sum(y/3)sum(x)=1。我试过使用nloptr

我收到一个错误: 'A' passed to (...) in 'nloptr' but this is not required in the eval_g_ineq function.

如果我说nloptr( ... , y, A)

我得到:eval_f requires argument 'cov.mat' but this has not been passed to the 'nloptr' function.

任何建议都会很棒。谢谢

0 投票
1 回答
779 浏览

python - 使用 openopt 和 scipy 求解具有动态约束的非线性优化系统时出错

我正在尝试解决受动态(h(x, x', u) = 0)约束的非线性最优控制问题。
给定:
f(x) = (u(t) - u(0)(t))^2 # u0(t) 是提供给系统的初始输入
h(x) = y'(t) - 积分(sqrt (u(t))*y(t) + y(t)) = 0 # 一个非线性微分方程
-2 < y(t) < 10 # 系统状态限制在这个范围内
-2 < u(t) < 10 # 系统状态限制在这个范围
u0(t) # 将被定义为任意分段线性函数

我尝试使用 openopt 和 scipy 将问题转换为 python 代码:

现在的问题是,使用像y0 = 10这样的正初始 y0 运行代码,代码将产生令人满意的结果。但是给y0 = 0或负一个y0 = -1,nlp 问题将是有缺陷的,说:
没有获得可行的解决方案(1 个约束等于 NaN,MaxResidual = 0,objFunc = nan)
另外,考虑到分段线性初始 u0,如果在 函数的第一个范围内放置 0 以外的任何数字t < 3,则表示:
u0 = np.piecewise(t, [t < 3, and_(3 <= t, t < 6), 6 <= t], [2, lambda t: t - 3, lambda t: -t + 9])
而不是:
u0 = np.piecewise(t, [t < 3, and_(3 <= t, t < 6), 6 <= t], [0, lambda t: t - 3, lambda t: -t + 9])
这将再次导致相同的错误。
有任何想法吗 ?
提前致谢。