文章目录

  • 1 智能体
  • 2 空间相关
  • 3 Advanced Java


1 智能体

  • Creating agents----创建智能体
    Agent是智能体类型的实例。智能体类型由用户开发。您可以使用New Agent向导创建智能体,当您从图表上的智能体调色板中拖动智能体元素时,该向导将打开。在向导的第一个页面上,您可以选择是要创建一个智能体种群(只有一个智能体),还是只定义智能体类型,而不创建任何这种类型的智能体。
  • Agent type. Properties------智能体类型.属性
  • Name——智能体类型的名称
    因为AnyLogic为每个智能体类型生成Java类,所以应该遵循Java命名准则。请以大写字母开头。
  • Parameters preview--------参数预览
    只有当此智能体类型具有任何参数时,才可以使用参数预览属性。在这里,您可以重新排列此智能体的参数。这种类型的智能体将按照定义好的顺序在其属性视图中列出参数。
  • Agent actions—智能体行动
    在启动时——在整个模型的所有智能体被构造、连接和初始化之后,以及在执行任何其他操作之前执行的代码。这是一些额外初始化和启动agentt活动(如事件)的地方。不保证不同对象启动时代码的执行顺序。
  • On destroy
    在这种类型的销毁智能体上执行的代码(例如,当用户终止实验并销毁对象时,按一定的顺序执行嵌入对象的销毁代码)。
  • On before
    在基于智能体的同步模型中,在执行步骤之前为该智能体执行的代码。在为智能体执行某些确定顺序的步骤操作之前。
  • On step
    在基于智能体的同步模型中执行一个步骤时为该智能体执行的步骤代码。以某种确定的顺序为智能体执行操作。
  • Agent in flowcharts-------智能体流程图
    在流程图中使用——在这里,您可以在流程图中为该智能体选择角色。在这里选择Agent,您可以使智能体通过流程建模库流程图,选择行人使其通过行人库流程图块,等等。根据所选择的角色,您将获得对特定于角色的API的访问权,该API扩展到泛型智能体类型的API之外。
  • 进入某一状态图
    编写当此智能体进入流程图时要执行的代码。
  • 退出流程图
    编写当此智能体退出流程图时要执行的代码。
  • 获取资源
    编写当此智能体在流程图中捕获资源时要执行的代码。
  • 发布资源
    编写当此智能体在流程图中释放资源时要执行的代码。

2 空间相关

  • Dimensions and movement--------尺寸和运动
    1、初始速度-[如果空间类型是连续的或GIS可见]智能体的速度。
    2、旋转动画到移动-[如果空间类型是连续的或GIS可见]的标题的智能体。
    3、垂直旋转(沿z轴)-如果选中,在移动智能体时,智能体形状将朝向目标。
  • Space and network--------空间与网络
    选择要放置在环境中的智能体——在将生活在该环境中的智能体列表中选择复选框。
    1、连续-连续空间。空间维度使用宽度和高度属性指定。连续空间允许用户设置和检索当前智能体位置,以指定的速度将智能体从一个位置移动到另一个位置,等等。连续空间中智能体的位置由Java类型double的坐标(x,y,z)定义。
    2、离散-离散空间。该空间由矩形单元格数组定义。细胞可以完全或部分被这些试剂占据(一个细胞中最多有一个试剂)。这种空间的任何逻辑支持都包括智能体在单元格上的分布、移动到相邻单元格或跳转到任意单元格、查找智能体的邻居等等。
    3、GIS - GIS空间。GIS空间类型允许将智能体放置到GIS地图定义的地理空间环境中。
    4、GIS map -[如果选择GIS空间类型,则可见]定义环境地理空间的GIS地图的名称。
  • 基本参数
    1、宽度-[如果选择连续或离散空间类型,则启用]表示空间的可视化区域的水平维度(以像素为单位)。在离散空间中,单元格宽度是通过将指定宽度除以空间中的列数来计算的。
    2、高度-[如果选择连续或离散空间类型,则启用]表示空间的可视化区域的垂直维度(以像素为单位)。在离散空间中,单元格高度是通过将指定的高度除以空间中的行数来计算的。
    3、列-[启用如果选择离散空间类型]离散空间中的列数。
    4、行-[启用如果选择离散空间类型]离散空间中的行数。

3 Advanced Java

  • 导入部分
    正确编译类代码所需的导入语句。当生成Java代码时,这些语句被插入到Java类的定义之前。
  • 实现
    (逗号分隔的接口列表)——类实现的接口的逗号分隔列表。
  • 附加类代码
    这里定义了任意的成员变量、常量和函数。这段代码将被插入到类定义中。您可以在此智能体中的任何位置访问这些类数据成员。这些函数可以在某些智能体活动上调用;增加一个JAVA 类。例如,关于事件发生或触发状态转换。您可以在这里放置任何Java代码,但是,我们建议使用Java类元素而不是在这里定义嵌套类,使用选项列表而不是定义Java枚举。
  • 参数化类型
    如果选中,可以在下面的类型参数字段中为该智能体类型定义泛型参数。