参数变化不会更新内置数据库吗?
Does parameters variation not update the builtin database?
我注意到每当我 运行 ParametersVariation 模型时,内置数据库都不会更新...我有 PLE,所以我无法编写自己的数据库。我目前能够从数据库中存在的各种日志中提取数据,但只能从正常模拟中提取数据 运行。有没有办法让参数变化在每次模拟后将其数据写入数据库运行?
我目前正在运行在模拟后运行
中使用此代码
Database myFile = new Database(this, "A DB from Excel", "C:/Users/Downloads/DataExport.xlsx");
ModelDatabase modelDB = getEngine().getModelDatabase();
modelDB.exportToExternalDB("flowchart_stats_time_in_state_log", myFile.getConnection(), "Sheet", false, true);
导出工作完美。但是数据永远不会改变,这可以通过从随每次模拟变化的直方图中导出分布来确认 运行。但对于此导出,其数据与上次标准(非参数变化)模拟写入数据库的数据相同 运行。
模型日志数据库 table 不是为 multi-run 实验生成的。它没有在任何地方具体说明,但它们更多地是为 testing/debugging(单个 运行 的)模型设计的。
(另外,请注意日志 table 没有指定 运行 ID 或类似 ID 的列,因此您无法区分不同行的 运行s 无论如何,即使在 multi-run 实验中写入了行。)
不幸的是,因为它们是 'automatically' 生成某些形式的输出数据(如数据集或直方图的内容)的唯一方法之一,所以许多人试图为此使用它们(即使他们有漂亮 un-useful 'internal' 格式)。一般来说,您应该为任何持久输出写入您自己的内部数据库 tables,您还可以在其中管理是否存储多个 运行s 的输出(这将需要您计算某种形式的独特的 运行 ID 并在列中使用这些 ID 来区分每个 运行 的输出,加上逻辑或 UI 元素来确定何时为新的 [=33] 清除 table 数据=],当它不是时)。
NB:请注意,模型日志 tables(如您提到的 flowchart_stats_time_in_state_log
)创建的数据类型几乎在所有情况下都是通过您自己的模型代码确定和创建 'manually'。 table 特别是关于每个块中发生的事情的大量详细信息,并且在任何给定情况下,您真正 want/need.
我注意到每当我 运行 ParametersVariation 模型时,内置数据库都不会更新...我有 PLE,所以我无法编写自己的数据库。我目前能够从数据库中存在的各种日志中提取数据,但只能从正常模拟中提取数据 运行。有没有办法让参数变化在每次模拟后将其数据写入数据库运行?
我目前正在运行在模拟后运行
中使用此代码
Database myFile = new Database(this, "A DB from Excel", "C:/Users/Downloads/DataExport.xlsx");
ModelDatabase modelDB = getEngine().getModelDatabase();
modelDB.exportToExternalDB("flowchart_stats_time_in_state_log", myFile.getConnection(), "Sheet", false, true);
导出工作完美。但是数据永远不会改变,这可以通过从随每次模拟变化的直方图中导出分布来确认 运行。但对于此导出,其数据与上次标准(非参数变化)模拟写入数据库的数据相同 运行。
模型日志数据库 table 不是为 multi-run 实验生成的。它没有在任何地方具体说明,但它们更多地是为 testing/debugging(单个 运行 的)模型设计的。
(另外,请注意日志 table 没有指定 运行 ID 或类似 ID 的列,因此您无法区分不同行的 运行s 无论如何,即使在 multi-run 实验中写入了行。)
不幸的是,因为它们是 'automatically' 生成某些形式的输出数据(如数据集或直方图的内容)的唯一方法之一,所以许多人试图为此使用它们(即使他们有漂亮 un-useful 'internal' 格式)。一般来说,您应该为任何持久输出写入您自己的内部数据库 tables,您还可以在其中管理是否存储多个 运行s 的输出(这将需要您计算某种形式的独特的 运行 ID 并在列中使用这些 ID 来区分每个 运行 的输出,加上逻辑或 UI 元素来确定何时为新的 [=33] 清除 table 数据=],当它不是时)。
NB:请注意,模型日志 tables(如您提到的 flowchart_stats_time_in_state_log
)创建的数据类型几乎在所有情况下都是通过您自己的模型代码确定和创建 'manually'。 table 特别是关于每个块中发生的事情的大量详细信息,并且在任何给定情况下,您真正 want/need.