问题标签 [nlopt]

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 投票
0 回答
108 浏览

r - 链接到 nlopt 库的 R-Rcpp 包

在某些方面,这是这篇旧文章的延续,R 包带有 Rcpp 和 nloptr

大多数情况下,这个解决方案被证明是暂时的,有几个原因,一些次要的,但主要是我正在努力完善这个项目以进行 cran 提交,这仍然是最后一个障碍。

也就是说,我尝试并未能让这个示例运行https://github.com/jyypma/nloptr/issues/39。这里的错误是“..../sourceCpp_2.so 原因:找不到图像”

之后,我制作了一个测试包,其中 nlopt 安装到“inst”文件夹中,“src”中的“makevars”和“makevars.win”以及上面的测试示例。这个包现在在 GitHub 上:https ://github.com/shortyatz/Nlopt-and-Rcpp 。

并给我一个与上面类似的错误消息。

这是我的会话信息:

0 投票
1 回答
312 浏览

julia - 如何在 Julia 中使用 NLopt 和 equal_constraint

我正在努力修改NLopt 上的 Julia 特定教程以满足我的需求,如果有人能解释我做错了什么或未能理解,我将不胜感激。

我希望:

  • 最小化一些目标函数的值myfunc(x);在哪里
  • x必须位于单位超立方体中(在下面的示例中只有 2 个维度);和
  • 的元素之和x必须为1。

下面我做myfunc的很简单——距离的平方,x这样[2.0, 0.0]问题明显正确的解决方案就是x = [1.0,0.0]for which myfunc(x) = 1.0。我还添加了println语句,以便我可以看到求解器在做什么。

我已在此处此处阅读了类似的问题和文档,但仍然无法弄清楚出了什么问题。令人担忧的是,每次我运行时我都会看到不同的行为,就像在这个屏幕截图中一样,包括求解器多次无用评估的情况。testNLoptmyfunc([NaN,NaN])

0 投票
1 回答
1550 浏览

r - 如何处理 R 中的这个 nloptr 错误?

当我安装需要安装 mi 包的 nloptr 包时收到此错误消息。
0 投票
1 回答
291 浏览

r - 使用 nloptr 与 Excel 在 R 中进行非线性优化

我似乎无法为我的特定问题找到答案。我试图最小化实值向量和模型线性组合之间的平均绝对误差,如下所示:

如您所见,我正在使用该nloptr软件包。上面的代码对目标函数产生了 14.85 的非最优结果,并且参数都是初始参数。您可以将初始参数更改为其他向量,但仍无法获得最佳解决方案。

但是,使用 excel 求解器可以很容易地得到目标函数的10.77和参数的(0, 0, .15, 0, 0, .85)的结果。

我尝试过使用带有渐变的算法,但是我似乎无法正确使用语法。这是我的另一个尝试。

0 投票
1 回答
888 浏览

python - 我已安装 nlopt,但收到消息:没有名为“nlopt”的模块

我已经安装了 nlopt: conda install -c conda-forge nlopt

我可以看到安装的包: conda list

但是当我尝试在 Spyder 上导入它时,我收到消息:没有名为“nlopt”的模块。我在 Windows 10 上运行它,如果有帮助的话,我对 python 完全陌生!

任何人都知道如何解决它?提前致谢 :)

0 投票
0 回答
219 浏览

r - 算法“NLOPT_LD_auglag”有什么作用?

我遇到了一些使用算法 NLOPT_LD_MMA 和 NLOPT_LD_AUGLAG 的代码。

我找不到任何文档,尤其是关于 NLOPT_LD_AUGLAG 的文档。

我想知道算法在做什么,因为我想用一些额外的约束来执行任务。

不幸的是,我无法为您提供我的其余代码,我真的在寻找这些算法背后发生了什么的解释(如果可能的话,最好用一些数学方法!)

0 投票
2 回答
405 浏览

r - nloptr COBYLA 方法无法识别 R 中的等式约束

我现在在 R 中运行 nloptr-COBYLA 最小化模型,我遵循 nloptr 接口并从目标最小化收敛中得到解决方案。但该解决方案不满足约束条件。有没有人可以在代码中找到我的错误?...

代码

在代码中,h[7] 和 h[8] 是等式约束。(在界面中,我们还可以看到“COBYLA 通过将它们转换为两个不等式约束来支持等式约束。”)但是,如果我使用解决方案计算 h[7] 条件,则它不满足该条件。为什么会发生?...

结果

谢谢您的帮助

0 投票
1 回答
409 浏览

julia - 使用 JuMP 解决 NL 优化问题时未定义 erf()

我正在用 Julia 中的 JuMP 解决非线性优化问题,我的目标函数中有一个 erf() 调用。我的代码抛出一个错误,指出未定义 erf() 函数。

我调用了 Pkg.update(),加载了 SpecialFunction 包并在不同的求解器(NLopt、Itopt)之间切换,但它们都没有工作。

下面是我在 Julia 1.0.3 下测试的环境和最小化代码

有没有办法用求解器在这里调用 erf() ?

0 投票
2 回答
281 浏览

r - 准备具有外部依赖项的 CRAN R 包 (nlopt)

我正在尝试向 CRAN 提交一个在 Debian 的预测试过程中失败的包。

我使用了一些 C++ 代码,这些代码通过 Rcpp/RcppArmadillo(使用<nlopt.hpp>)连接到 nlopt 优化库。因此,我的包需要一个系统版本的 nlopt,可以通过 deb 包 libnlopt-dev 安装(我将它添加到 SystemRequirements 字段)。

我使用配置脚本和 pkg-config 来检索(希望)适当的编译器标志,然后将其发送到 src/Makevars

这种方法适用于我的系统(Ubuntu 18.04,R 3.5.2)和 Travis(linux 和 mac OS),但在 Debian CRAN 服务器上失败: https ://win-builder.r-project.org/incoming_pretest/PLNmodels_0 .7_20190119_161032/Debian/00install.out

我添加了一些详细信息来检查标志是否在 CRAN 服务器上正确导出,它们对我来说似乎没问题:至少,在系统上找到了一个 nlopt 版本(见下文,NLOPT_LIBS=-lnlopt -lm)。但是,<nlopt.hpp>后者在...上找不到

任何帮助将不胜感激。感谢您花时间阅读本文。

0 投票
1 回答
116 浏览

r - 如何使用 nloptr 库来最大化两个数组之间的 Spearman 相关性

我有两个数组。例如第一个是A,第二个是B:

A<-c(2,5,6,10,11) B<-c(13,2,6,8,12)

我也有常数 teta=1。我做了一个数组:

D=B-teta

A和D之间的相关系数

koeff<-cor(A,D)

挑战是通过改变常数 teta 使 koeff 达到最大值。据我了解,我可以使用 nloptr 库。我应该如何使用它?

此致!

PS我用求解器一般减少梯度在excel中完成了这项工作。我在R中没有找到这个函数。