【仿真建模-anylogic】开发规范

news2024/12/23 15:22:53
Author:赵志乾
Date:2024-06-28
Declaration:All Right Reserved!!!

0. 说明

        实际模型开发过程中,对遇到的问题进行总结归纳出以下开发规范,仅供参考!

1. 强制性规范

        1.1 事件消费模式设置为FIFO

        anylogic默认事件消费模式为后入先出,违反直觉,并且考虑到绝大多数场景要求保证事件按产生顺序消费,故将事件消费模式统一为先入先出,便于后期多模型整合;方式如下:

        1.2 严禁以像素作为布局数据单位

       为模型提供布局数据时,选择具有实际物理空间含义的单位“米”;然后在模型内部根据所设定的scale转换为像素,以保证调整scale时,模型所表征的实际物理空间不变。

       1.3 严禁直接使用默认生成的外层智能体引用

       例如智能体A内嵌智能体B,则Anylogic会自动在智能体B内生成对智能体A的引用。如需访问外层智能体,则需在本智能体内明确定义对外层智能体的引用,并在初始化时将外层智能体注入,以便于后续将该智能体导出为通用组件。

      1.4 智能体自定义函数按需设定访问权限

      Anylogic默认设定函数访问权限为default。需要依据该函数未来的使用范围,重新在public、protected和private之间做选择。避免将智能体导出为自定义组件库后,其他模型内无权访问该方法。

       1.5 严禁在on startup处初始化(Top-level智能体除外)

       各智能体需自定义init函数,并在init函数内完成内嵌智能体的init函数调用以及自身的初始化。避免将智能体导出为自定义组件库后,其构造函数参数列表过长。

       1.6 严禁在Top-level智能体内添加业务功能

Top-level智能体仅做为实验运行的环境,负责实验所需智能体的创建和关系组装。

2. 推荐性规范

       2.1 优先使用普通Java类

       智能体本身也是Java类,只不过其增加了生命周期管理、消息通信、演示等一系列通用功能;在模型设计理念上,智能体是有实际业务概念(对象)与之相对应的。如果仅是数据载体,建议直接使用Java类而非智能体。

      2.2 合理使用组合状态,以业务概念表达为主

      采用状态图进行建模时,应以业务概念层级为标准,合理使用组合状态,使得状态图易于理解。

       2.3 内嵌智能体推荐使用智能体群

       执行引擎负责智能体的生命周期管理,其拥有严格的流转流程。若开发不规范,容易产生悬空智能体,导致流程出错。建议使用智能体群对内嵌智能体进行统一管理。

       2.4 集合推荐使用变量

       Anylogic同时提供了变量和集合变量,其集合变量的引用必须使用可实例化的集合类,不方便同流式操作相结合。推荐直接使用变量,并指定所需的集合接口。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1874338.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云动态摘要 2024-06-28

给您带来云厂商的最新动态,最新产品资讯和最新优惠更新。 最新优惠与活动 [新客专享]WeData 限时特惠 腾讯云 2024-06-21 数据分类分级管理,构建数据安全屏障 ,仅需9.9元! 云服务器ECS试用产品续用 阿里云 2024-04-14 云服务器…

使用QGIS进行研究区域制图实战

目录 前言 一、QGIS的版本和数据介绍 1、关于QGIS版本 2、需要准备的数据 二、准备制图 1、制作全国区位图 2、矢量和遥感信息的编辑 三、出图编辑 1、设置主题信息 2、打印布局制作 3、美化地图 总结 前言 俗话说“一图胜千言”,在地理信息的领域中&…

“AI+”时代,群核科技进化成了家居设计打工人理想的样子

6月,2024世界智能产业博览会上,人工智能大模型展团以“AI大模型驱动新质生产力”为主题,各家企业纷纷提到了基于不同行业场景的应用。 这透露出当前的行业发展趋势强调大模型落地核心行业,产生业务价值。其中,“AI图像…

车辆轨迹预测系列 (五):Argoverse API Forecasting Tutorial代码解析

车辆轨迹预测系列 (五):Argoverse API Forecasting Tutorial代码解析 文章目录 车辆轨迹预测系列 (五):Argoverse API Forecasting Tutorial代码解析一、argoverse.data_loading.argoverse_forecasting_loader二、argoverse.visualization.visualize_seq…

MTK8786/MT8786芯片性能参数_规格书_datasheet

联发科MT8786(MTK8786)处理器采用了台积电12纳米FinFET技术,由2个Cortex A75核心和6个Cortex A55核心组成,其中大核A75主频为2.0GHz,GPU采用了ARM Mali-G52。MTK8786芯片设计极大地提升了智能设备的性能和安全等级。 MT8786采用了安全的ISP设…

如何将 ONLYOFFICE 文档 Linux 版更新到 v8.1

本指南将向您展示如何将 ONLYOFFICE 文档 Linux 版本更新到最新 8.1 版本。 ONLYOFFICE 文档是什么 ONLYOFFICE 文档是一个功能强大的文档编辑器,支持处理文本文档、电子表格、演示文稿、可填写表单、PDF 和电子书,可多人在线协作,支持 AI 集…

【2024大语言模型必知】做RAG时为什么要使用滑动窗口?句子窗口检索(Sentence Window Retrieval)是什么?

目录 1. 传统的向量检索方法,使用整个文档检索,为什么不行? 2.句子滑动窗口检索(Sentence Window Retrieval)工作原理 3.句子滑动窗口检索(Sentence Window Retrieval)的优点 1. 传统的向量检…

【高考志愿】集成电路科学与工程

目录 一、专业概述 二、课程设置 三、就业前景 四、适合人群 五、院校推荐 六、集成电路科学与工程专业排名 一、专业概述 集成电路科学与工程,这一新兴且引人注目的交叉学科,正在逐渐崭露头角。它集合了电子工程、计算机科学、材料科学等多个领域的…

ASUS/华硕天选5 FX607J系列 原厂Windows11系统

安装后恢复到您开箱的体验界面,带原机所有驱动和软件,包括myasus mcafee office 奥创等。 最适合您电脑的系统,经厂家手调试最佳状态,性能与功耗直接拉满,体验最原汁原味的系统。 原厂系统下载网址:http:…

c语言入门

c语言入门 C语言一经出现就以其功能丰富、表达能力强、灵活方便、应用面广等特点迅速在全世界普及和推广。C语言不但执行效率高而且可移植性好,可以用来开发应用软件、驱动、操作系统等。C语言也是其它众多高级语言的鼻祖语言,所以说学习C语言是进入编程…

AI大模型在短视频处理和剪辑中的应用

文章目录 🚀一、背景🚀二、视频处理方向 🔎2.1 视频分析与标注🔎2.2 视频剪辑与特效🔎2.3 视频内容生成与故事叙述🔎2.4 视频后期处理与发布 🚀三、AI视频处理书籍推荐 🔎3.1 知识要…

Qt自定义信号

1.Teacher类下定义信号signals: Student类下定义槽函数&#xff1a; Teacher.h #pragma once#include <QObject>class Teacher : public QObject {Q_OBJECTpublic:Teacher(QObject *parent);~Teacher(); signals:void Ask(); //老师向学生提问void Ask(QString str);…

@ComponentScan注解在Spring的作用

ComponentScan注解的作用是什么&#xff1f; 告知Spring扫描那些包下的类&#xff0c;可以配置includeFilters&#xff0c;excludeFilters&#xff0c;过滤某些类&#xff0c;更多内容可以具体看下此注解文件。 Spring是如何通过这个注解将类注入到Ioc容器中的&#xff1f; 请…

智慧的网络爬虫之CSS概述

智慧的网络爬虫之CSS概述 ​ CSS 是“Cascading Style Sheet”的缩写&#xff0c;中文意思为“层叠样式表”&#xff0c;用于描述网页的表现形式。如网页元素的位置、大小、颜色等。css的主要作用是定义网页的样式。 CSS样式 1. 行内样式 行内样式&#xff1a;直接定义在 HT…

MySQL高级-SQL优化- update 优化(尽量根据主键/索引字段进行数据更新,避免行锁升级为表锁)

文章目录 0、update 优化1、创建表2、默认是行锁3、行锁升级为表锁4、给name字段建立索引 0、update 优化 InnoDB的行锁是针对索引加的锁&#xff0c;不是针对记录加的锁&#xff0c;并且该索引不能失效&#xff0c;否则会从行锁升级为表锁。 1、创建表 create table course(…

MySQL事务——Java全栈知识(31)

1、事务的特性 原子性&#xff08;Atomicity&#xff09;&#xff1a;事务是不可分割的最小操作单元&#xff0c;要么全部成功&#xff0c;要么全部失败。 一致性&#xff08;Consistency&#xff09;&#xff1a;事务完成时&#xff0c;必须使所有的数据都保持一致状态。 隔离…

重要通知:据最新TEMU要求所有欧区车灯都需要能效标签(eu energy lable)

重要通知&#xff1a; 据最新TEMU要求&#xff0c;所有“欧区车灯”都需要能效标签&#xff08;eu energy lable&#xff09;&#xff0c;目前已下架欧区站点&#xff0c;上传成功后可恢复。 灯具类欧盟EU ENERGY LABEL 近日有不少欧洲站卖家收到TEMU平台商品要求卖家们发布的…

机器学习分类自动调参算法(含python示例:后台私我拿数据集哦)

第一步&#xff1a;读取数据 我这里是把文件存在当前文件夹&#xff0c;新建的data文件夹里。如果不知道把数据放在哪里可以先看一下path是什么&#xff0c;然后把data 文件夹存在path下的路径中。 file bennett20tm.xlsx path os.path.join(os.path.dirname(os.getcwd()),…

P1114 “非常男女”计划最优解

原题地址 P1114 “非常男女”计划 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 代码题解 AC代码&#xff08;1&#xff09; 因为用的是级的算法&#xff0c;所以最后一个 了&#xff0c;这里使用特判来得到的&#xff0c;给你们放一下代码&#xff1a; #include <bi…

ServletConfig与ServletContext详解

文章目录 概要web.xmlServletConfig介绍ServletConfig实例ServletConfig细节ServletContext介绍ServletContext实例ServletContext细节ServletContext获得服务访问次数&#xff08;可拓展&#xff09;总结 概要 web.xml <?xml version"1.0" encoding"UTF-…