我正在用Anylogic模拟一条生产线,该生产线由七个通用过程组成。
我在模型中使用的主要障碍是:抓住,延迟和释放。在模型运行期间,始终会创建(增加和减少)队列。
我的问题是:我应该如何在模型中保存每个队列的最大值和持续时间,然后将其导出到excel文件?
我尝试使用数据集和统计信息获取程序图标,但是这些图标仅显示运行期间队列的变化。
答案 0 :(得分:1)
使用Statistics element定期记录有关队列大小(例如最大值,最小值等)的统计信息(默认值:每秒一次):
您可以通过调用以下内容来检索此统计元素记录的最大值:
myStatistics.max();
例如,可以通过在Main的 On destroy 代码中编写以下代码来输出此值:
traceln(myStatistics.max());
为了将某些内容导出到Excel,请从 Connectivity 面板添加Excel模块并将其设置为现有的Excel文件。
如documentation of the Excel module中所述,将单个值写入Excel的命令如下:
void setCellValue(<type> value, int sheetIndex, int rowIndex, int columnIndex)
根据您的情况,将此代码放入Main的销毁代码中:
excelFile.setCellValue(myStatistics.max(),1, 1, 1);