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 使用的更多相关文章

  1. anylogic 常用模块及术语的使用

    1.1 存量 创建存量变量 1. 在调色板视图下的Model页面中选择Stock 元素. 2. 在图形化编辑器中您所期望的位置点击鼠标,放置该存量. 3. 在属性视图下的Equation部分中,定义该 ...

  2. 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 ...

  3. [Pyhton] SimPy 离散事件模拟框架详解 —— 以一个简单的汽车充电排队模拟为例

    目录 一.背景知识 二.SimPy 讲解 2.1 SimPy 概述 2.2 基本概念 2.3 一个汽车开开停停的例子 2.4 在走走停停过程中增加充电过程(过程交互) 2.5 共享资源 三.后续 参考 ...

随机推荐

  1. php框架之thinkphp

    日常开发中经常使用thinkphp5进行开发工作,总结一些使用中遇到的问题和使用的东西 1. web内置服务 V5.1.5+版本开始,增加了启动内置服务器的指令,方便测试 >php think ...

  2. springboot项目中配置swagger-ui

    Git官方地址:https://github.com/SpringForAll/spring-boot-starter-swagger Demo:https://github.com/dyc87112 ...

  3. MySQL数据库存储引擎

    这里主要介绍最常用的两种存储引擎. 1.InnoDB InnoDB是一个事务型的存储引擎,有行级锁定和外键约束.Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别,关 ...

  4. NoSQL Manager for MongoDB 30天到期破解

    1.删除注册表:HKEY_CURRENT_USER\Software\NoSQL Manager Group2.删除应用数据:C:\ProgramData\NoSQL Manager Group 还是 ...

  5. codeforces342B

    Xenia and Spies CodeForces - 342B Xenia the vigorous detective faced n (n ≥ 2) foreign spies lined u ...

  6. python并发编程之多线程基础知识点

    1.线程理论知识 概念:指的是一条流水线的工作过程的总称,是一个抽象的概念,是CPU基本执行单位. 进程和线程之间的区别: 1. 进程仅仅是一个资源单位,其中包含程序运行所需的资源,而线程就相当于车间 ...

  7. 攻防常用命令(linux)

    1.修改SSH密码: #登录SSH passwd 出现current passwoed或new password 输入就密码再输入新密码确认或直接输入新密码确认即可 2.修改Mysql密码: 1.在m ...

  8. (十五)qt-tcp

    基本流程 QT += core gui network #include "tcp.h" #include "ui_tcp.h" #include <QD ...

  9. Java基础 -- 字符串(格式化输出、正则表达式)

    一 字符串 1.不可变String String对象是不可变的,查看JDK文档你就会发现,String类中每一个看起来会修改String值的方法,实际上都是创建一个全新的String对象,以包含修改后 ...

  10. dedecms安装操作-重安装-开启GD库

    wamp5_1.7.4 打开:http://localhost/install/安装 (输入:域名/install,回车跳转到安装界面,勾选“我已经阅读并同意此协议”,然后点击“继续按钮”.) 重安装 ...