AnyLogic 中的系统动力学 - 斐波那契序列 [关闭]

2023-12-07

我在 AnyLogic 中有一个系统动力学模型,我试图在其中对斐波那契序列进行建模。然而,由于某种原因,我的结果与预期不同:

代替

1,1,2,3,5,8,13...

I get

1, 2.137954153, 4.021788196, 7.471205823, 13.86070806...

我跟着这些(西班牙语)说明构建我的简单模型。

我想这并不是所有软件都通用的,因为在 VenSim 中这个例子似乎工作得很好......

有人可以向我解释为什么我的 AnyLogic 程序中会发生这种情况吗?


发生这种情况的原因是每个软件中处理微分方程的方式不同。

您在 vensim 中获得斐波那契序列的原因是因为您在时间步 1 中使用欧拉方法(检查模型设置)

如果您在 Vensim 中将积分类型更改为 RK45,或者使用欧拉方法减少时间步长,您可能会得到与 AnyLogic 相同的结果... Runge-Kutta 方法,即使它以固定步长 1 开始,它随后根据模型动力学的要求改变时间步长。

现在,让我们了解,在系统动力学模型中使用时间步长 1,模型会以较低的时间步长给出错误的结果,这意味着您的模型不是很稳健......但这就是为什么您在 vensim 中获得精确值的原因。 ..因为这些精确值对于模型的实际情况来说确实非常不准确。我什至会说,您链接上的模型是一个糟糕的模型,不应该向公众展示。

幸运的是(或不幸的是),AnyLogic 不允许您这样做。你可以在模型属性中设置时间步长为1,但是anylogic会在不通知的情况下将时间步长更改为其他值(除非你在虚拟模式下运行,并且满足其他条件)... AnyLogic只允许使用Euler+牛顿在混合方程选项中,但不是欧拉单独。

我认为这是 AnyLogic 中的一个错误,已经持续了很多年,我已经将其告知他们,并且我认为他们永远不会解决它,如果幸运的话,也许直到 AnyLogic 9。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AnyLogic 中的系统动力学 - 斐波那契序列 [关闭] 的相关文章

  • 为什么在尝试通过 Dynamics WebAPI 中的连接创建联系人和帐户实体时深度插入失败

    我已经能够使用类似于此的有效负载在 Dynamics WebAPI 中创建联系人 firstname asd lastname asd 我已经能够使用类似于此的有效负载在 Dynamics WebAPI 中创建帐户实体 name SOLE
  • 管理实验中的多个任意逻辑模拟

    我们正在 AnyLogic 7 下开发 ABM 并且我们希望通过单个实验进行多个模拟 将为每次模拟运行设置不同的参数 以便为一小组标准场景生成结果 我们有一个无需按 运行 即可自动启动的实验 随后按下 运行 会增加实验计数器并重新运行模型
  • 我可以做些什么来改进我的斐波那契数生成器?

    我正在解决这个问题 G n is defined as G n G n 1 f 4n 1 for n gt 0 and G 0 0 f i is ith Fibonacci number Given n you need to evalua
  • 为位于系统托盘中的 Java 程序创建键盘挂钩

    基本上我有一个在系统托盘中运行的java程序 并且想添加它 因此如果用户按下CTRL SHIFT 1 它会选择位于托盘中的java程序的右键单击选项之一 我想我正在寻找的是有关执行此操作的教程 或者最简单的方法是什么 我以前从未做过这样的事
  • 导入我的非托管解决方案不会更改帐户表单

    我在 CRM 中有一个定制的帐户 主 表单 我在其中添加了一个新选项卡 一个新部分和新字段 我事先发布了所有自定义内容 然后导出 然后导入到我的测试环境中 我都是在测试环境下发布的 非托管解决方案包含此表单及其新字段 当我查看导出的 zip
  • 如何在不生成整数的情况下找到斐波那契数的前 k 位数字?

    我必须找到斐波那契数列 2 10 6 以内的所有斐波那契数的前 k 位数字 显然 我们不能将斐波那契数列的值存储在任何变量中 即使计算所有斐波那契数本身也需要大量的计算时间 那么 有没有办法只得到斐波那契数的前k位而不生成整个数呢 由于您只
  • .NET进程监视器

    有没有办法确定特定机器上次运行进程的时间 我可以使用以下内容来确定进程是否正在运行 但如果该进程已停止 则应用程序无法获取该进程 Process process Process GetProcessesByName processName
  • System.getenv() 没有列出所有环境变量

    我注意到 JVM 没有获取我的一些环境变量 In my bash profile我定义了以下内容 IO HOME some value export IO HOME 并通过在 shell 中执行以下操作 echo IO HOME 我得到了正
  • 使用数据库(MySql)的生产者/消费者系统,这可行吗?

    我需要使用某物协调我的系统与多个消费者 生产者 每个消费者 生产者在具有不同操作系统的不同机器上运行 我一直在研究使用 MySql 来做到这一点 但这似乎非常困难 我的要求很简单 我希望能够随时添加或删除消费者 生产者 因此他们根本不应该相
  • 是否可以从打开的文件描述符重新创建文件?

    现在 这个问题可能看起来很奇怪 而且可能确实如此 但为了提供一些背景信息 我一直在阅读this http linuxgazette net 105 pitcher html要了解 i 节点 作者给出了一个有趣的例子 FILE fp fp f
  • 参数变化:固定,但运行的种子不同

    所以我用许多概率参数进行了参数变化实验 我使用随机种子 这会产生各种不同的结果 这基本上就是我想要的 在我的例子中 一项实验包含 200 次运行 然而 在随机建模中 在相同的运行中使用相同的种子是一个很好的做法 即当我运行两个实验 每个实验
  • 登录和会话 PHP

    我在检查会话时遇到一些问题 要访问页面 我需要激活会话 登录流程 Connect to mysql server require reservation connect php Function to sanitize values rec
  • Python 中的递归、记忆和可变默认参数

    Base 的意思是不只使用lru cache 所有这些都 足够快 我并不是在寻找最快的算法 但时间安排让我感到惊讶 所以我希望我能了解一些有关 Python 如何 工作 的知识 简单循环 尾递归 def fibonacci n a b 0
  • Java 系统范围的键盘快捷键

    有没有任何方法或库可以获取系统范围 全局 键盘快捷键 在 Java 应用程序中执行操作 我是 JIntellitype 的作者 我可以告诉您一个事实 这必须在 DLL 中本地完成 并从 Java JNI 调用 就像 JIntellitype
  • PHP 系统() 参数

    我有以下代码执行C 程序 and 输出它 div div 我怎样才能做到这一点您可以将参数传递给 c 程序 这样说 如果这是c program include
  • 限制用户从“主要区域”Dynamics 365 on Prem 进行访问

    我们创建了一个新的 应用程序 这是我们解决方案中迄今为止的第一个应用程序 这个想法是 一组用户将只能访问该应用程序 而他们将无法再访问该应用程序的 主要区域 某些实体的某些表格看起来与其他实体不同等 主要区域 是指默认情况下或多或少存在的
  • 在 Ruby 中获取 system() 调用的输出

    如果我使用调用命令内核 系统 http ruby doc org core 2 2 0 Kernel html method i system在 Ruby 中 如何获取其输出 system ls 我想扩展和澄清混沌的答案 https sta
  • 这个记忆的斐波那契函数是如何工作的?

    在我正在做的函数式编程课程的当前练习作业中 我们必须制作给定函数的记忆版本 为了解释记忆化 给出以下示例 fiblist fibm x x lt 0 fibm 0 0 fibm 1 1 fibm n fiblist n 1 fiblist
  • 如何用Java写入OS系统日志?

    Mac OS 有一个名为 Console 的应用程序 其中包含记录的消息 错误和故障 我相信 Windows 中的等效项是事件查看器 我想 Linux 上也有一个 但我不知道它是什么 也不知道它在哪里 是否可以像这样从 Java 输出获取消
  • UML 图 - 在我的应用程序中发送电子邮件被视为外部系统

    我的应用程序有一个联系选项 它将打开带有按摩页面的电子邮件应用程序 并且消息接收者设置为应用程序支持电子邮件 我已附上我的意思的图片 我已将其编写为需求 但不确定如何在系统类图和用例图中说明它 我最初在用例图中所做的是 将我的用户 主要参与

随机推荐

  • 可以使用exams2nops中的解决方案模板吗?

    当我尝试使用以下命令生成考试解决方案时exams2nops template solution 我收到以下错误消息 Error in exams2pdf file n n nsamp nsamp dir dir name name form
  • RatingBar 中的步长

    RatingBar 中的步长是多少 这是我在文档中找到的 该评级栏的步长 例如 如果需要半星粒度 则该值为 0 5 我试图在这里找到它 https developer android com reference android widget
  • 如何通过iOS SDK中的iPad Camera Connection Kit读取SD卡内容?

    我想通过iOS SDK中的iPad Camera Connection Kit读取SD卡内容 该怎么做 有代码示例吗 Thanks 没有官方 API 可以做到这一点 在越狱设备上可能是可能的 但不使用官方 sdk
  • 在工作线程中使用 std::atomic_flag 时出现问题

    抱歉啰嗦了 我尽了最大努力将我的代码示例压缩成一个最小的功能类并且main method 我正在尝试使用atomic flag通知 rx 在我的工作线程中退出时stop 叫做 我相信问题在于尝试创建我的工作线程 thread SanityT
  • 避免使用“return”语句复制对象

    我有一个关于 C 的非常基本的问题 返回对象时如何避免复制 这是一个例子 std vector
  • 指定弹出位置,整个页面导航

    您好 我在 WP8 应用程序中定位弹出窗口时遇到问题 我的代码是我实例化了一个弹出窗口 其中子项是用户控件 例如 Popup CenterPopup new Popup LayoutRoot Children Add CenterPopup
  • 如何在用户离开当前活动时执行一些代码(按返回硬件按钮)

    正如标题所说 我该怎么做 我查了一下互联网 似乎你做不到 有人知道怎么做吗 我的意思是 我知道当用户按下关闭活动的按钮时如何执行我的代码 但是硬件后退按钮呢 谢谢你 覆盖onBackPressed Override public void
  • bash 中的字符串比较。 [[: 未找到

    我正在尝试比较 bash 中的字符串 我已经找到了如何执行此操作的答案堆栈溢出 在我尝试的脚本中 我使用 Adam 在上述问题中提交的代码 bin bash string My string if string My then echo I
  • PHP:每 10 秒检查 mysql 数据库是否有新行

    我正在进行 php 聊天 并开始 php 检查数据库部分 因此 当用户在聊天中输入内容时 它会记录在 MySQL 数据库中 我如何每 10 秒检查一次数据库 以便一个用户的聊天会更新为其他用户的新消息 我知道你可以使用 ajax 请求到一个
  • php 显示错误

    我已经更新了我的代码 php 并改进了我的问题 我有一个登录表单 当我输入错误的密码时 我没有出现此错误 您还没有注册或密码错误 我什么都没有 什么也没有出现 这是我的代码 php 我的数据是 mongodb
  • 将另一个类作为类的静态属性

    阅读下面的示例 但不要过多关注EventEmitter请继承 它只是显示了class syntax 我意识到这个例子是不正确的 ES2015 因为没有这样的东西static class陈述 在 ES2015 中实现这样的功能最简洁的语法方式
  • html5中如何对输入时间采取步骤和限制?

    我需要自定义数据输入7 to 23 hours并采取10 minute步骤在input time就像下面的例子 input time gt gt gt 07 10 07 20 07 30 22 40 22 50 23 00 请帮我 您需要使
  • Go 中按空格分割字符串?

    给定一个输入字符串 例如 word1 word2 word3 word4 在 Go 中将其拆分为字符串数组的最佳方法是什么 请注意 可以有any每个单词之间的空格或 unicode 间距字符数 在Java中我只会使用someString t
  • PHP/MySQL 多级菜单

    我正在尝试使用 PHP 创建动态多级菜单 从 MySQL 数据库获取数据 我已经设法用以下格式在 php 数组中订购菜单项 Array 1 gt Array id gt 1 ubicacion gt top a nivel gt 1 par
  • VBA xmlhttprequest循环而不关闭连接

    我正在 VBA 中使用 xmlhttp 连接到 API 问题是我需要使用相同的 API 链接多次创建循环 唯一的区别是我发送了不同的 JSON 字符串 是否可以仅打开一次连接并发送标头和身份验证 然后多次发送数据并接收响应 主要目的是提高代
  • 有没有办法保存最大 1 MB 的“消息”集合并将结果写入 JSON/CSV 文件

    我有一个阻塞队列 它不断通过某些应用程序获取消息 现在在 asp net 应用程序中 我尝试使用该队列并将输出写入 CSV JSON 文件 在这里 我想保存最多 1MB 的消息 这些消息从阻塞队列接收 然后将其写出 现在再次保存 1MB 的
  • 如何在一个适配器上应用多个过滤器?

    我有一个 listView 和一个搜索字段 它调用我的适配器的 getFilter filter keyword 函数 它工作得很好 但我想添加另一个过滤器来搜索 listViews 对象的不同标签 所以我的适配器需要两个过滤器 对此最好的
  • IntelliJ 的嵌入式终端无法正确加载我的 Fish shell 配置

    IntelliJ 中的 Fish 配置未正确加载 并且我看到有关路径未正确设置的警告 set Warning PATH entry set Did you mean set PATH PATH 因此 IntelliJ 似乎能够获取位于 co
  • C# 导出到excel

    这是将数据导出到现有 xls 工作表的最佳方式 我需要支持很多版本的excel 如果我使用 Visual basic 我将使用 CreateObject Excel application 代码来完成我需要的操作 C 中的等价物是什么 我希
  • AnyLogic 中的系统动力学 - 斐波那契序列 [关闭]

    Closed 这个问题需要调试细节 目前不接受答案 我在 AnyLogic 中有一个系统动力学模型 我试图在其中对斐波那契序列进行建模 然而 由于某种原因 我的结果与预期不同 代替 1 1 2 3 5 8 13 I get 1 2 1379