【问题标题】:Algorithms for efficiently computing logistic map高效计算逻辑图的算法
【发布时间】:2017-06-26 23:57:09
【问题描述】:

logistic map 是浮点数失败的经典示例。这也是一个很好的例子,即使在处理 bignums 时,错误在数值算法中通常传播得非常糟糕。我想知道是否有任何已知的算法可以解决这个问题?有没有一种高效的方法来计算逻辑图,而不需要天真地以极高的精度计算它?

【问题讨论】:

    标签: algorithm numerical


    【解决方案1】:

    这是一个经典的例子,因为它是一个混沌系统。混沌系统的全部意义在于它对初始条件表现出难以置信的敏感性。要在 n 次迭代后得到正确率在 5% 以内的答案,需要从数字的 O(n) 位开始。不是因为你的算法不好,而是因为改变这些数字中的任何一个都会改变答案。

    所以,不。虽然您可能会在一定程度上加快计算速度,但您无法从较低的精度开始。

    【讨论】:

    • 当你提高准确性时,是否有一个通用的形式?就像您需要 Omega(f(n)) 数字来获得 X 百分比的准确度之类的?这将是我的问题的一个惊人的答案。
    • 另外,你能提供 5% 数字的来源吗?
    • @Jake 这在混沌系统的一般原则上都是正确的,具体细节高度依赖于r 是什么。同样,我所说的 5% 在一般原则上是正确的,如果我说 5% 或 1% 或 0.1% 也没关系。一般原则是,在这样的混沌系统中,每次迭代,附近点之间的距离都会扩大一个常数因子f > 1。因此在n 步骤之后,它们被f^n 分隔。因此....
    • ...为了让他们在n 步骤之后彼此保持恒定距离d,他们必须在f^(-n) 内开始。但这意味着您需要知道以 10 为底的 n*log(f)/log(10) 数字内的值。(这并不排除处于 0999 与 1000 转换之一的可能性......)这意味着要得到答案您需要知道O(n)开头的数字。
    • 优秀的答案!要清楚这个“常数因子”是“Lyapunov”指数的 e 次方吗?并且将其提高到 n 次方以获得错误的上限,对吗?
    猜你喜欢
    • 2022-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多