问题标签 [convergence]

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 投票
2 回答
1178 浏览

java - 遗传算法 - 收敛

我对我的遗传算法和总体遗传算法有几个问题。

我创建了一个 GA,当给定曲线点时,它会尝试找出产生该曲线的函数。

一个例子是以下几点

功能

有时我会给它一些永远不会产生功能的点,或者有时会产生功能。它甚至可以取决于初始树的深度。

一些问题:

  • 为什么树深度在尝试评估点并产生令人满意的函数时很重要?
  • 为什么有时我会过早收敛,而如果循环,GA 永远不会爆发?
  • 我能做些什么来防止过早收敛?
  • 退火呢?我该如何使用它?

你能快速看一下我的代码并告诉我它是否有明显的问题吗?(这是测试代码,我需要做一些代码清理。)

资源:http://www.gp-field-guide.org.uk/

编辑:看起来托马斯的建议效果很好,我得到了非常快的结果,并且过早收敛。我觉得增加基因库会产生更好的结果,但我不确定它是否真的在每一代都变得更好,或者它是随机的事实是否允许它找到正确的解决方案。

编辑 2:按照 Thomas 的建议,我能够让它正常工作,似乎我在获得幸存者和扩大我的基因库方面遇到了问题。如果其他人想查看它,我最近还在我的 GA 测试中添加了常量。

0 投票
1 回答
701 浏览

chef-infra - 如何在收敛期间使用刀更新节点 run_list

我们在下面给出了场景,

  • 我们的节点有带有“role a”和“role b”的run_list。节点收敛并运行 run_list。
  • 在步骤 1 的节点收敛运行期间,我们尝试使用刀命令将另一个“角色 c”添加到节点 run_list。根据刀命令输出成功添加。
  • 如果我们检查刀节点状态,在节点收敛完成后。我们在步骤 2 中添加的“角色 c”尚未添加到节点 run_list

如何在节点收敛运行期间使用刀命令更新节点 run_list?

0 投票
2 回答
4141 浏览

r - R中神经网络的算法在给定的重复次数中不收敛

我是 R 中神经网络的新手。我正在尝试模拟在 java 中使用神经网络实现的以下行为。

类型 - 多层感知器,输入 - 7,输出 - 1,隐藏 - 5 个神经元,传递函数 - sigmoid,学习规则 - 反向传播,最大误差 - 0.01,学习率 - 0.2

以下是我实现的 R 代码。

数据相对较小(120 行),以下是使用的训练数据样本。请注意,输入已标准化并在 0 和 1 之间缩放。

以下是我执行上述命令时收到的警告。

关于为什么会发生这种情况的任何澄清?

0 投票
1 回答
318 浏览

exception - Geotools 距离计算失败,几个纬度点没有收敛异常

我有很多点使 getOrthodromicDistance 方法在geotools lib中异常失败,而这些点是有效的纬度点:

引发异常的点(纬度,经度):

例如例外:点 75°47,2'W 06°19,7'S 和 106°05,6'E 05°19,1'N 没有收敛。java.lang.ArithmeticException:点 75°47,2'W 06°19,7'S 和 106°05,6'E 05°19,1'N 没有收敛。在 org.geotools.referenceencing.GeodeticCalculator.computeDirection(GeodeticCalculator.java:1073)

Scala中使用的代码:

注意:我在 latlonDistance 中传递的点格式是(lat,lon) 如上所述,而setStartingGeographicPoint, setDestinationGeographicPoint 需要(lon,lat) 顺序。

使用的版本:

在 python 中按预期工作:

org.geotools.referencing.datum.DefaultEllipsoid 中的 orthodromicDistance 方法不收敛。任何解决方法?

0 投票
2 回答
1433 浏览

matlab - 在不使用 while 循环的情况下迭代 Matlab 中的收敛

我必须迭代一个过程,在该过程中我对马赫数 (M0) 有一个初始猜测。通过使用两个方程(Mn),这个初始猜测将给我另一个马赫数的猜测。最终,我想迭代这个过程,直到 M0 和 Mn 之间的误差很小。我有以下一段代码,它实际上适用于while循环。

但是,我担心 while 循环对于某些输入会花费很多迭代和计算时间,因为这将是更大代码的一部分,很可能会为 while 循环提供不可行的输入。

因此,我的问题如下。如何在 Matlab 中迭代这个过程而不咨询 while 循环?我现在正在实现的代码如下:

非常感谢

0 投票
2 回答
699 浏览

matlab - 在matlab收敛时停止向量的所有元素的迭代?

我想迭代矩阵中的所有元素,并希望它们在所有元素的值收敛时停止。我编写了代码(如下),但它给了我错误的值,我不认为值是否真的在循环中。

0 投票
0 回答
40 浏览

centering - 我更改了预测变量的参考组,现在我的模型无法运行

我有一个奇怪的问题。我运行了以下模型,其中包括作为预测变量之一的“Valence.c”。这是编码为“0”或“1”的预测变量,代表“正”和“负”。预测变量居中,因此实际上是“-0.5”和“0.5”。

我得到以下输出:

由于 Valence.c 的固定效应是负数,我想我会尝试重新编码变量,使正数现在是“0.5”,负数现在是“-0.5”。我认为解释事故率的增加比解释事故率的下降更容易。所以我运行了这个相同的模型,除了它调用的数据文件具有相反的编码:

我收到此警告消息:

为什么更改参考组意味着模型现在无法收敛?我对正面和负面的观察次数相同。任何帮助都会很棒!

谢谢

0 投票
1 回答
333 浏览

newtons-method - 如果牛顿法不收敛,则中断

我正在尝试实现多项式的牛顿法以找到函数的零。但是我必须预测函数没有根的情况。我想知道如何检测方法变得发散然后停止程序的时刻?

预先感谢您的任何帮助

0 投票
0 回答
2784 浏览

r - lme4 - 超出函数评估的最大数量

我用 lme4 运行一个简单的 GLMM ...

...并从 bobyqa 运行到收敛代码 1:“bobyqa -- 超出函数评估的最大数量”。所以我查找了stackoverflow,发现了这个有趣的线程。

我彻底检查了我的控制对象,现在看起来像这样:

但我仍然得到同样的错误。然后我按照另一个链接的建议,据说

  • 您可以使用 control=glmerControl(optCtrl=list(maxfun=1e5)) 来调整函数评估的最大数量。 查看
  • 如果@optinfo$feval 会告诉您实际使用了多少函数评估。待定

所以我做了 model1@optinfo$feval 它说... 172

我必须承认我期待别的东西,所以我尝试了从 1e3 到 1e8 的所有方法,但我仍然卡住了。

我的 lme4 版本是 1.1-10;我使用的是 Win10 64bit R3.1.3(也许我应该升级我的 R?)

任何(!)帮助或评论都非常感谢!干杯

0 投票
1 回答
299 浏览

c++ - 牛顿法对于某些多项式是发散的

我试图为多项式实现牛顿法。喜欢:

其中g(w, n, xn)计算函数的值并dg(w, n, xn)计算导数。

当我使用我使用 Sturm 定理找到的x0起点时。M

我的问题是这种方法对于某些多项式(如x^4+2x^3+2x^2+2x+1. 也许它不规则,但我注意到当方程的解为负数时会发生这种情况。我在哪里可以找到解释?

编辑:dg

其中 n 是多项式的次数