问题标签 [approximation]
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.
graph - 基于节点和边权重的图划分
我有一个图 G=(V,E) 边和节点都有权重。我想对该图进行分区以创建大小相等的分区。分区大小的定义是 sum(vi)-sum(ej),其中 vi 是该分区内的一个节点,ej 是该分区内两个节点之间的一条边。在我的问题中,图表非常密集(几乎完整)。是否有任何近似算法?
这在某种程度上类似于 bin 包装中的问题,其中 bin 具有相同大小的重叠对象。节点的权重是它们的大小,边的权重显示两个对象可以重叠多少。
algorithm - 移动平均精度?
我有一些人们对事物进行投票的数据,如果对每个项目进行平均投票,那将是很好的选择。您可以将投票视为不断传入的数字流。现在我可以准确地计算出平均值,但要做到这一点,我必须存储两个数字,要么是总数,要么是当前平均值,以及到目前为止已经看到的项目数。如果我这样做,我可以使用
但这很痛苦,因为它迫使我为每个我想要投票的项目存储两条数据。我知道还有另一种方法称为移动平均值或迭代器平均值,它可以处理流数据,但只会给出一个近似平均值,如下所示:
其中 alpha 是一些小的固定学习率。这只是试图将新平均值向新项目的方向移动,并按与该新项目与当前估计值之间的差异成比例的量移动。这给了我一种方法,只需要存储一个数字(当前平均值)并且当有新项目进入时仍然能够更新它,但代价是这只是一个近似值。
我想知道这种方法引入的错误是否有任何已知的界限......是否有一个公式来估计这个估计与事实的差距,以及我应该如何选择一个好的阿尔法?有关此帖子和此问题的更多信息。
gps - 近似和内插 GPS 轨迹
我有一系列 gps 值,每个值都包含:timestamp, latitude, longitude, n_sats, gps_speed, gps_direction, ...
(NMEA 数据的某个子集)。我不确定方向和速度值的质量。此外,我不能指望序列在时间戳上是均匀分布的。我想在均匀的时间步长上获得平滑的轨迹。
我读过卡尔曼滤波器是此类任务的首选工具。真的是这样吗?
我找到了一些用于 Python 的卡尔曼滤波器的实现:
- http://www.scipy.org/Cookbook/KalmanFiltering
- http://ascratchpad.blogspot.de/2010/03/kalman-filter-in-python.html
然而,这些似乎假设有规则间隔的数据,即迭代。整合对不规则间隔观测的支持需要什么?
我能想象的一件事是重复/调整预测步骤以适应基于时间的模型。你能为这个应用推荐这样的模型吗?是否需要考虑 NMEA 速度值?
matlab - round() Matlab 函数的可微近似
您能否建议round
Matlab 函数的可微近似?
该round
函数如下所示:
我想要一个[非常]类似于图中的可微函数。
algorithm - RGB相似颜色逼近算法
鉴于在 RGB 中我们可以表示 256^3 组合 = 16,777,216 种颜色,并且由于人眼只能区分大约 10,000,000 种颜色,因此显然有 6,777,216 种 RGB 组合在颜色上与对应颜色无法区分。
压缩算法在此基础上工作时,我相信在估计整个帧的颜色范围的空间差异时。考虑到这一点,如何可靠地计算给定颜色是否在与另一种“相似”范围内?
当然,“相似性”将是某种可以调整的任意/可调参数,但无论如何这是一个近似值。那么是否有任何指针、伪代码、直观的代码示例、资源来帮助我对这样的函数进行建模?
非常感谢您的帮助
java - 字符串逼近(从字典中获取最近的匹配字符串)
是否有任何字符串匹配代码或算法可以为我们提供字典中近似匹配的字符串(包含预定义的字符串集)?
例如:如果字典中有 10 个字符串(字符串集),如果用户输入了一些字符串,那么算法应该告诉您字典中的匹配字符串。如果我得到具有匹配值(或百分比)的匹配字符串,那就太好了。
c - 用于计算 C 中 pi 近似值的 For 循环
我正在尝试制作的程序应该使用 C 使用系列 pi = 4 * (1 - (1/3) + (1/5) - (1/7) + (1/9) - ( 1/11) ...) 等等。
现在,从命令行,程序必须输入要近似的项的数量,例如,如果有人从命令行输入 5,则估计将输出到 (1/9)。
问题是我的输出总是为零,我无法确定我所犯的逻辑错误。我相信这是一个for循环问题。
另请注意,我使用的是 C,而不是 C++。
我的代码是:
注意:由于某种原因,它没有显示我在 Stack Overflow 上包含的库。我确实包括了图书馆,我没那么愚蠢。
math - 在什么情况下需要多项式的泰勒级数?
我很难理解为什么将泰勒级数用于函数以获得函数的近似值而不是仅在编程时使用函数本身会很有用。如果我可以告诉我的计算机计算 e^(.1) 并且它会给我一个精确的值,我为什么要取一个近似值呢?
java - 试图逼近自然对数 e 的值和计算 e 的项数
这就是我被要求做的事情:编写另一个 Java 应用程序来查找并显示 e(自然对数)的近似值。使用以下近似公式,从 n 作为 2 开始,以 1 递增,直到 e 的两个连续值相差小于 0.0000000001,并且不仅显示近似值,还显示在最后一个近似值中使用了多少项 n。公式为: e = 1/0 的近似值!+ 1/1!+ 1/2!+ 1/3!+ ... , 其中 n! 是 n 阶乘
这是我目前对该程序的输出
我究竟做错了什么 ?答案应该是
如何解决这个问题?
algorithm - 速率近似的逻辑
我正在寻找一些逻辑来解决以下问题。
有 n 个交易金额:T1,T2,T3.. Tn。
这些交易的佣金是使用下面提供的费率表计算的。
如果金额在 0 和 A1 之间 -> 率是 r1
如果 A1 和 A2 之间的金额 -> 率是 r2
如果 A2 和 A1 之间的金额 -> 费率为 r3
...
...
如果金额大于 An -> rate 是 r4
因此,如果 T1 < A1,则速率表返回 r1,否则如果 r1 < T1 < r2;则返回 r2。
因此,可以说 T1、T2 和 T3 的速率表结果分别为 r1、r2 和 r3。
佣金 C = T1 * r1 + T2 * r2 + T3 * r3
例如; 如果定义了费率表(费率以 % 为单位)
0 - 2500 -> 1
2501 - 5000 -> 2
5001 - 10000 -> 4
10000 或更多-> 6
如果 T1 = 6000,T2 = 3000,T3 = 2000,那么
C= 6000 * 0.04 + 3000* 0.02 + 2000 * 0.01 = 320
现在我的问题是,如果我们提供的不是 T1、T2 和 T3 的单独值,我们是否可以估算佣金金额 T1+T2+T3 (T)
在上面的示例中,如果将 T (11000) 应用于费率表,我们将得到 6%,这将导致 600 的佣金。
有没有办法近似给定 T 的佣金值而不是 T1、T2、T3 的单个值?