anylogic 使用
1.智能体群的用法
有人会问:
请问怎么给生成的两个对象赋予属性,比如在分叉的时候一个进入sink1,另一个进入sink2?我想source生成不同的实体,而且各个实体都有不同的属性,请问应该怎么设置呢?
答:智能体群可以完美解决相关问题,智能体群里的属性可以单独设置,使其具有独立性,数据可以从数据库或Excel中读取。关于如何读取,后面再讲。
流程中将source改为enter.然后将智能体群中的数据放入流程图。
方法为:
for(int i=0;i<agents.size;i++){
enter.take(agents.get(i));
}
2.数据库和Excel中的数据读取
2.1数据库读取
首先打开连接库,拖入数据库和查询,选中项目,添加jdbc的jar包,这个和java连接mysql数据库时用的jar是一样的。
在查询中的查询属性中写入你要查询的表名,数据填充在每一行添加选择智能体,参数/字段写你项目智能体群中的变量名,注意参数类型要和数据库中字段一致。这样就可查询出相关的数据了。当然也可以用SQL语句进行关联查询,这个就是写SQL语句,不再赘述。
如果你想要写入数据库数据,可以用main.database.modify("SQL语句");
2.2Excel读取
拖入一个Excel元素,选择文件路径,写一个读取文件的函数:、
for(int i=0;i<s.size();i++){
s.get(i).A=excelFile.getCellNumericValue("Staff!B"+(i+2));
s.get(i).P=excelFile.getCellNumericValue("Staff!C"+(i+2));
s.get(i).F1=excelFile.getCellNumericValue("Staff!D"+(i+2));
}
Staff为Excel中的Sheet名,B,C,D为所在列,(i+2)表示第一行有效数据。s为智能体群名称。
当然s的长度可以用定值可以用变量来表示,如果你不知道数据的条数,就可以把智能体群的个数写成一个变量。
写一个函数agentSize:
return excelFile.getLastRowNum(tableName);
在智能体群的个数中写入:agentSize("Staff")-1;
anylogic 使用的更多相关文章
- anylogic 常用模块及术语的使用
1.1 存量 创建存量变量 1. 在调色板视图下的Model页面中选择Stock 元素. 2. 在图形化编辑器中您所期望的位置点击鼠标,放置该存量. 3. 在属性视图下的Equation部分中,定义该 ...
- Summary: Arrays vs. Collections && The differences between Collection Interface and Collections Class
转自http://www.anylogic.com/anylogic/help/index.jsp?topic=/com.xj.anylogic.help/html/code/Arrays_Colle ...
- [Pyhton] SimPy 离散事件模拟框架详解 —— 以一个简单的汽车充电排队模拟为例
目录 一.背景知识 二.SimPy 讲解 2.1 SimPy 概述 2.2 基本概念 2.3 一个汽车开开停停的例子 2.4 在走走停停过程中增加充电过程(过程交互) 2.5 共享资源 三.后续 参考 ...
随机推荐
- [Alpha阶段]第十次Scrum Meeting
Scrum Meeting博客目录 [Alpha阶段]第十次Scrum Meeting 基本信息 名称 时间 地点 时长 第十次Scrum Meeting 19/04/15 大运村寝室6楼 35min ...
- 工具(2): 极简MarkDown排版介绍(How to)
如何切换编辑器 切换博客园编辑器为MarkDown:MarkDown Editor 选择一个在线编辑和预览站点:StackEdit 如何排版章节 MarkDown: 大标题 ========== 小标 ...
- Appium 客户端类库
Appium 支持以下语言的客户端类库: 语言 Ruby Python Java JavaScript PHP C# Objective-C 锁定注意,一些方法类似 endTestCoverage() ...
- python3使用ctypes在windows中访问C和C++动态链接库函数示例
python3使用ctypes在windows中访问C和C++动态链接库函数示例 这是我们的第一个示例,我们尽量简单,不传参,不返回,不访问其他的动态链接库 一 测试环境介绍和准备 测试环境: 操作系 ...
- Conda常见命令
Anaconda,Miniconda,Conda,Pip的区别: Anaconda:用于科学计算的python发行版,里面预装好了conda,某个版本的python,众多packages,科学计算工具 ...
- java篇 之 类型转化
类型转换时,如果最初的数值类型是有符号的,那么就执行符号扩展:如果它是char,那么不管将要被转换成什么类型,都执行零扩展 代码执行顺序是从上至下,从右至左 强制转换: Int a =(int)(sh ...
- Educational Codeforces Round 63 Div. 2
A:找到两个相邻字符使后者小于前者即可. #include<bits/stdc++.h> using namespace std; #define ll long long #define ...
- Apache Flink教程
1.Apache Flink 教程 http://mp.weixin.qq.com/mp/homepage?__biz=MzIxMTE0ODU5NQ==&hid=5&sn=ff5718 ...
- Luogu3768简单的数学题
题目描述 题解 我们在一通化简上面的式子之后得到了这么个东西. 前面的可以除法分块做,后面的∑T2∑dµ(T/d)是积性函数,可以线性筛. 然后这个数据范围好像不太支持线性筛,所以考虑杜教筛. 后面那 ...
- C# http 性能优化500毫秒到 60 毫秒
偶然发现 C# 的 HttpRequest 要比 Chrome 请求同一Url 慢好多.C# HttpRequest 要500毫秒 而Chrome 只需要 39ms. 作为有责任感的 码农.这个 必须 ...