智能制造系统建模与仿真:基于Anylogic 课件 第12章 AnyLogic与Python联动:Pypeline库_第1页
智能制造系统建模与仿真:基于Anylogic 课件 第12章 AnyLogic与Python联动:Pypeline库_第2页
智能制造系统建模与仿真:基于Anylogic 课件 第12章 AnyLogic与Python联动:Pypeline库_第3页
智能制造系统建模与仿真:基于Anylogic 课件 第12章 AnyLogic与Python联动:Pypeline库_第4页
智能制造系统建模与仿真:基于Anylogic 课件 第12章 AnyLogic与Python联动:Pypeline库_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第12章

AnyLogic与Python联动:Pypeline库智能制造系统建模与仿真AnyLogic与python联动:Pypeline库01020304Python语言简介Pypeline库下载与集成Pypeline库简介PyCommunicator基本用法05思考与练习01Python语言简介由GuidovanRossum于1989年开发,1991年发布。

PythonAnyLogic中python的作用语法简洁、可读性强,支持面向对象、函数式和过程化编程。

拥有自动内存管理、动态类型和丰富的第三方库(如NumPy、Pandas、TensorFlow、Flask、Django等)。

具备跨平台特性,广泛应用于数据科学、人工智能和Web开发等领域。AnyLogic核心语言为Java,引入Python以提升灵活性与开发效率。

借助Python强大的数据分析与机器学习库(Pandas、NumPy、TensorFlow等),增强模型的数据处理与智能优化能力。提供与外部系统的良好兼容性,可实现跨平台数据交互与算法集成(如强化学习、优化算法)。

使AnyLogic从传统仿真扩展至智能决策支持系统,提升模型的预测与分析能力。02Pypeline库简介Pypeline是AnyLogic官方于2021年推出的功能插件,用于实现AnyLogic模型与本地Python环境的连接,使模型能够调用Python函数与代码。尽管目前国内外应用较少,但其前景广阔,可支持基于Python的人工智能算法和数据分析工具在仿真中的高效集成。主要应用场景直接调用Python代码,无需移植到Java在Python中编写复杂算法,Java端可直接调用并传递数据支持使用任意Python专有库利用仿真平台测试训练好的AI策略03Pypeline库下载与集成首先,计算机中要有AnyLogic程序,其版本可以是PLE、专业版、科研版;其次,计算机中要安装Python,其版本最好为3.0以上。(1)环境准备Pypeline库下载与集成从官网上下载Pypeline.jar包压缩文件,并解压。(2)下载Pypeline.jar包(3)AnyLogic集成Pypeline库打开AnyLogic软件,点击面板,找到左下角的“+”,选择管理库。进入管理库页面,选择“添加”,找到我们之前下载的库文件jar包,进行添加。添加后,可以在管理库页面和面板栏中看到导入的Pypeline库件。安装完成后,可通过运行简单模型测试连接是否成功。在新建模型中从Pypeline面板拖入PyCommunicator(默认名称),运行后点击该对象,若窗口显示Python版本及可执行文件路径,则说明连接正常。Pypeline库下载与集成(3)AnyLogic集成Pypeline库Pypeline库下载与集成(3)AnyLogic集成Pypeline库Enableconnection:是否启用插件,选中后此插件开始发挥作用Loadlastworkingconfiguration:加载工作配置,勾选后下方选项就会隐藏CommandtocallPython:当我们的电脑存在多个Python版本时,可以通过选框决定用哪个Python,如不选则用默认环境的PythonThrowerroronfailedattempt:抛出错误选项RedirectPythonoutput:重新定向输出04PyCommunicator基本用法(1)传递数据从控制面板中拖拽出一个PyCommunicator到编辑区PyCommunicator基本用法(1)传递数据从控制面板中拖拽出一个按钮到编辑区,设置标签为“设置x值”在其属性中的“行动”栏中输入以下代码pyCommunicator.run("x

=

6.66");

run函数用于向Python发送无需返回值的语句,如变量赋值或导入操作。示例代码将字符串传递给Python,定义一个值为6.66的浮点变量。PyCommunicator基本用法(1)传递数据从控制面板中拖拽出另一个按钮到编辑区,设置标签为“获取x”在其属性中的“行动”栏中输入以下代码需要从Python中检索值时,使用runResults函数。该代码的作用是传递double类以将所需变量(“x”)转换为预期的Java的double类型变量。double

xValue

=

pyCommunicator.runResults(double.class,

"x");

traceln(xValue);

PyCommunicator基本用法(1)传递数据运行模型,首先单击“设置x值”按钮,然后按“获取x”按钮按照顺序点击按钮后,指定的数字打印到控制台PyCommunicator基本用法(2)运行Python代码运行字符串形式的Python代码,使用run函数,可以直接调用Python运行String类型的Python代码,如以下代码:其中,pyname为智能体的名称;“xxx”为Python代码。pyname.run(“xxx”)

读取Python代码运行的结果,使用runResults,可以直接读取Python代码运行结果,如以下代码:其中,“file.read()”是Python代码,表示读取文件。pyname.runResults(String.class,

"file.read()");

获取Java中的参数,赋值给Python。使用函数String.format获取Java中的参数,赋值给Python代码run(

String.format("with

open('%s',

'w')

as

f:",

filename),

String.format("

f.write('''%s''')",

json)

);

PyCommunicator基本用法(3)调用.py文件使用runFile函数,如以下代码使用run("fromtsp_solverimportFacilityOrderSolver")导入模块中的指定方法。若该方法需要传递参数,可以通过run()调用并传入参数,例如以下代码:runFile(PythonCommandType.PYTHON,

"say_hello.py");

String.format(

//

pass

in

distance

matrix

and

home

index

"solver

=

FacilityOrderSolver(%s,

%s)",

pyCom.toJson(buildDistanceMatr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论