问题标签 [minimization]
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.
python - Python中的二维优化(最小化)(使用scipy.optimize)
E(n,k)
我正在尝试优化(最小化)定义如下的二维函数:
其中Tformulated
获得如下:
并且Tw
是先前计算的具有复值元素的列表。我真正想做的是对于w
(在“错误x,y,w ....”中使用)的每个值,我想最小化x
&的值的函数“错误” y
。w
范围从 1 到 2048。因此,它基本上是一个 2D 最小化问题。我已经尝试过编程(尽管我一直不知道使用什么方法以及如何使用它);我的代码如下:
我不确定即使fmin_powell
是正确的方法。
matlab - 最接近一组曲面的点
我有这些表面由它们在空间中的位置(x,y,z)定义。理想情况下,它们应该相交,但并非总是如此。但是,应该有一个点与所有表面的 Ecludian 距离最短。我的曲面没有解析表达式。我如何找到这一点,而不是遍历所有可能的候选人,这可能是数千人?
python - 使用nelder-mead在python中进行数值优化的故障
我正在尝试使用 Nelder-Mead 方法的 scipy.optimize.minimize 模块对非线性函数进行两个变量优化。优化总体上非常成功,但在这两者之间,优化变量中的值突然跳跃,然后优化参数曲线遵循相同的形状,但有直流偏移。该图像可能有助于理解我的问题。我玩过函数容差,但徒劳无功。这种跳跃对进一步的编程造成了严重破坏。这些图像是[社区编辑以内联图像] 这里:
首先,有故障的优化变量:
二、毛刺放大图:
第三,第一个优化变量在同一点之后对第二个优化变量造成的破坏:
绿点是预期的优化曲线,而蓝线是获得的优化曲线。
matlab - 最小化多变量函数
我知道 fminsearch 函数,但它似乎只能解决一个变量。
如果我的函数看起来像 f(x,y,z) 并且我想找到给出最低结果的 x,y,z 的值,我将如何在 MatLab 中执行此操作?f 的复杂性会使计算偏导数变得异常困难。
任何帮助将不胜感激,谢谢!
android - 应用程序最小化后如何恢复位图?
我有一个绘图应用程序。我需要应用程序从最小化中恢复(单击返回直到应用程序最小化)。正如我从几个论坛中了解到的那样,最好的方法和最简单的方法是将位图保存到本地临时文件夹,然后从中打开位图。我没有找到任何教程或示例如何完成。
你能否就这个问题提出一些好的教程,或者如果你在发布你的解决方案之前做过这样的事情。
谢谢,
math - 多输入多输出函数的高斯牛顿最小化
给定矩阵形式的输入输出函数:
带p1−p6
参数。我想使用高斯牛顿法最小化最小二乘误差。假设我们有 100 个测量值。我的问题是关于残差向量的计算和大小。
r i = 输出 - f(输入,参数)
错误 = 总和 (r i 2 )
为了计算误差最小的参数,我们有:
p i+1 =p i + Δ
Δ= (J T *J) -1 * J T * r i
我认为每个的大小如下:
输入向量(x):100x2
输出向量(y):100x2
剩余(r):100x2
雅可比 (J) : 100x6
参数(pi):6x1(六个参数)
如您所见,Δ 的大小将是 6x2,这似乎与p_i+1
现在我的残差向量计算过程是否正确?如果是,我该如何计算参数的向量?如果不是,正确的答案是什么?
另一件事是关于参数矩阵的计算方式J
(雅可比)。
太感谢了。
python - 使用单纯形法和遗传算法最小化一个非常嘈杂的 6 参数函数 - Python 语言
我试图最小化经验人类数据和来自 6 参数认知模型的模拟数据之间的损失函数。该模型非常嘈杂。请注意,模型是在 PYTHON 中编程的。
标准方法是使用单纯形搜索。但是,Simplex 非常依赖于初始猜测,捕获局部最小值的风险很高。所以我有两个问题:
1)我想知道是否不能使用遗传算法首先搜索全局最小值的近似位置,并将结果作为单纯形搜索的起点。如果这是一个好主意,有人知道在 python 中适当的遗传算法的良好实现吗?
2) 我应该为单纯形搜索使用哪个反射、扩展和收缩常数?
任何帮助将不胜感激。
干杯,垫
matlab - 最小化 L1-Regularized 系统,收敛于非最小位置?
这是我在 stackoverflow 上的第一篇文章,所以如果这不是正确的区域,我深表歉意。我正在努力最小化 L1 正则化系统。
这个周末是我第一次深入优化,我有一个基本的线性系统 Y = X*B,X 是一个 n×p 矩阵,B 是一个 p×1 模型系数向量,Y 是一个 n× -1 输出向量。
我试图找到模型系数,我已经实现了梯度下降和坐标下降算法来最小化 L1 正则化系统。为了找到我正在使用回溯算法的步长,我通过查看梯度的 norm-2 并终止算法,如果它“足够接近”为零(现在我使用的是 0.001)。
我试图最小化的函数是以下 (0.5)*(norm((Y - X*B),2)^2) + lambda*norm(B,1)。(注意:通过 norm(Y,2) 我的意思是向量 Y 的 norm-2 值)我的 X 矩阵是 150×5 并且不是稀疏的。
如果我将正则化参数 lambda 设置为零,我应该收敛于最小二乘解,我可以验证我的两种算法都做得很好而且相当快。
如果我开始增加 lambda,我的模型系数都趋向于零,这就是我所期望的,但我的算法永远不会终止,因为梯度的 norm-2 始终是正数。例如,1000 的 lambda 将给我 10^(-19) 范围内的系数,但我的梯度的 norm2 约为 1.5,这是经过数千次迭代后,而我的梯度值都收敛到 0 到 1 的某个值范围,我的步长变得非常小(10 ^(-37)范围)。如果我让算法运行更长时间,情况并没有改善,它似乎已经以某种方式卡住了。
我的梯度和坐标下降算法都收敛于同一点,并为终止条件给出相同的 norm2(梯度)数。它们也适用于 0 的 lambda。如果我使用非常小的 lambda(比如 0.001)我会收敛,如果我运行一两个小时,0.1 的 lambda 看起来会收敛,一个更大的 lambda 并且收敛速度太小没用。
我有几个问题,我认为可能与问题有关?
在计算梯度时,我使用有限差分法 (f(x+h) - f(xh))/(2h)),h 为 10^(-5)。对 h 的这个值有什么想法吗?
另一个想法是,在这些非常小的步骤中,它在几乎与最小值正交的方向上来回移动,这使得收敛速度如此缓慢以至于毫无用处。
我最后的想法是,也许我应该使用不同的终止方法,也许看看收敛速度,如果收敛速度非常慢,则终止。这是一种常见的终止方法吗?
android - 签名后按后退按钮未最小化Android应用程序
我想通过按返回和主页按钮来最小化应用程序。所以我使用了以下代码。
在签署应用程序之前,它在模拟器和设备中运行良好。但是签名后,应用程序会通过按返回按钮关闭。我也试过下面的代码。
但结果是一样的。任何建议都会有所帮助。
wolfram-mathematica - NMinimize 非常慢
你是我最后的希望。在我的大学里,没有人能回答我的问题。我有一个非常复杂的函数,取决于 6 个参数 a0、a1、a2、b0、b1、b2,它们最小化了由一个相当新的状态方程计算的压力、体积液体和体积蒸汽的增量。NMinimize 非常慢,我无法对这个等式做任何考虑,因为时间非常高。在代码中有一些关于我的代码的解释和一些问题。我跪下祈求你帮助我。很抱歉,在构建这些方程式 4 个月后,我无法对其进行测试。而且挫败感一天比一天高!
提前致谢!Mariano Pierantozzi 化学工程博士生