版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
同学们好!(ppt第1页)欢迎大家开始离散事件系统仿真这部分知识的学习!物流系统是典型的离散事件系统,物流系统仿真也基本上是离散事件系统仿真,由此离散事件系统仿真基础理论的学习就显得很必要了(第2页)。看到“物流系统仿真”这三个词的组合,不知道你对哪一词更熟悉(第3页)?本节我们从系统的概念出发,来深入理解系统仿真的概念,介绍物流系统仿真的基本情况。谈到系统(第4页),我相信大家都了解,这个概念源自于古希腊,它是由两个或者两个以上相互关联作用的单元有机结合起来的、完成一定功能的整体。当然,这个整体的功能是可能这些单元不具有的、或者是比这些单元更强的功能。谈到系统,我们回顾一下它的特征,刚才已经提到了它的整体性,在这里我们强调其目的性和关联性。目的性是指在客观世界中把某一些部分从逻辑上分离出来作为一个系统来进行研究,那是源于人们抱有一定的研究目的;而相关性是强调两个或者两个以上的单元和它们之间的关系。为什么要强调这个特点呢?那是因为在研究系统时,我们通常是基于系统的相关性来展开的。更具体地讲,系统模型的建立就是基于相关性完成的。系统模型要反映系统内部的要素及其关系,当这个系统和外部环境产生联系时,可以清楚地知道系统状态变化情况,这时我们希望看到的。(第5页)当然,根据研究目的不同,会有很多种系统,大类可分工程系统和非工程系统,现代物流中这两类都有。系统模型有形象模型和抽象模型,形象模型是指肉眼看得见的那些模型,主要提取系统的物理和几何特征;抽象模型包括概念模型、图标模型、数学模型等,比如在高等数学中公式,按变量类型还可以分确定模型和随机模型,大家还可以资料看其他分类。在此,为了加深对系统概念的理解,我们还可以从三个世界的角度来理解(第6页)。基于一定的研究目的,我们会将客观世界或现实世界中一部分的对象从逻辑上分离出来作深入地分析,针对专业而言,就是将物流领域的对象抠出来,通过抽象归纳总结,建立起系统模型,这就到了信息世界。系统模型有助于在人与人之间的交流,具体按照这个模型的计算求解需要人来完成,如果找机器帮忙,则还需要将其转换为仿真模型,这里的仿真模型就对应于机器世界,让机器来执行仿真模型,帮助我们分析系统状态的变化规律。这就是从三个世界的角度来认识系统、系统模型和系统仿真,它是本课程中的一个基础概念,可以指导大家的后续学习,有机会也可以用于其他地方。这里我们提到了“仿真”的概念了,大家回想下,第一次遇到这两个字,你会如何理解?(第7页)我是这样理解的,既然是仿真,它肯定就不是真的。就有些纳闷了,既然是假的,为什么我们还是要做呢?当然肯定是有原因的,比如分析火灾的原因,就可以用仿真来实现。很明显火灾发生后,我们是不可能让它再次发生的,新的火灾跟以前也是不一样的(第8页),也就是系统不可逆的情况下,仿真就派上用场了。这是仿真的原因之一,还有其他原因,比如我国的二胎生育政策,在30年后会使得我国人口发展成什么情况?如果等到30年后再去看,政策调整就来不及了,针对这种研究时间过长的情况,也会用到仿真手段。其他原因包括(第9页)安全方面的原因,比如福岛核电站事故救援,核辐射危害人的安全,可以通过仿真为救援方案提供支持;还有投资方面的原因,比如登月工程等项目,既有人身安全的原因,也有投资很大的原因,可以基于仿真来控制整个项目的风险。(第10页)甚至有一些仿真研究是源于人们的设想,真实的系统还没有建成之前用仿真来推演其可行性。从这些地方可以看出,采取仿真在很多情况下是必要的,甚至在某些情况下是唯一可用的方法。同时也告诉大家,假的未必就一定不好。我们如何可以实现仿真呢?这就需要用到相关的理论和技术(第11页)。通过前面的讲解可以知道,系统论肯定是需要的,还有信息论和控制论,这三论是上个世纪四五十年代提出来的,是仿真的一个基础。一个仿真系统它必须是可控制的,它里面的信息是可以收集进行分析的。仿真模型是假的,有可能比真实的模型小,所以相似理论也是需要的。也正因为是仿真,我们可以多次来做,由此数理统计的相关知识也是要用到的。至于相关的技术,强大的计算机一定要用,包括数据库方面的技术,网络方面的技术,都可以为仿真的实现提供支持。这里特别要强调的是系统仿真是利用人为控制的环境条件,改变某些特定的参数观察系统模型的反应,研究真实系统的现象和过程。总结起来,仿真就是以假修真,我们怎么去修真?是因为仔细地去观察系统模型的反应,这个概念大家一定要要记清楚,后面的仿真基于这样的思路往下实施的。(第12页)系统分很多类,那仿真可以也会分很多类。这里给出了三种分类,包括基于模型类型的分类、基于仿真实现方法、或者是人和设备的真实程度来进行划分的。在这里主要强调第一种,因为后续学习中会经常提到。它把系统分为定性系统和定量系统,而定量系统又分连续系统或者离散事件系统,当然还可以把连续系统和离散事件系统混合起来,物流系统通常是离散事件系统。仿真技术是支持仿真实施的一个很重要的支撑(第13页),它现在发展怎么样?这里作一些简要的介绍,给出了系统仿真技术的特征。系统仿真技术是一门通用的支撑性技术;其发展具有相对独立性,又与控制工程、系统工程和计算机技术等多个专业技术领域相关,其发展与应用需求密切相关。这里给出了技术和应用这两个方面的发展趋势,大家下来查阅相关的资料,了解更多的内容。接下来我们讲讲物流系统仿真(第14页)。物流系统是物流类专业学习中必然会接触到的系统,对它展开研究源于现代物流的快速发展。面对现代物流降本增效的需求,它越来越多的强调物流的系统性和综合化,强调整体优化,由此对研究探索的手段提出更高的要求。现代物流系统的复杂性和物流目标的多样性,增加了仿真技术的应用需求。为了让大家理解物流系统仿真的内涵,这里介绍其主要分类(第15页)。首先是物流过程的仿真,物流过程是指运输、仓储、装卸、包装、装卸搬运、流通加工等物流的功能过程。比如针对仓储过程,需要搞清楚在时间进程中这些过程如何推进?推进中发生了哪些事件?这些事件引起系统状态哪些状态变化。这些可以用离散事件系统的建模方法来实现,也是课程中主要介绍的内容。(第16页)再就是物流管理方面的仿真,为物流管理决策服务。比如布局规划中的网络布局、园区规划,以及供应链管理方面的决策问题,有可能会用到系统动力学的建模方法,这些内容在实验部分会涉及到。同时在管理中还有一个重要的物流成本问题。物流成本比较复杂,因为它往往和其他的成本混合在一起,难以分开。为了研究基于成本的物流过程或物流管理优化等问题,需要对其专门加以研究,为此有人把物流成本仿真独立出来作为一类。课程当中主要以物流过程的仿真为主。在后续的研究当学习中(第17页),我们将在本节系统仿真基础之上,详细介绍离散事件系统仿真的基础知识,并对其中的随机观测模拟、输入数据模型、仿真算法设计以及仿真结果分析等内容作详细讲解,共六个部分。大家也看到不同部分的颜色不同,黑色文本表示该部分已学习,红色文本表示该部分正在学习,蓝色文本表示待学习内容。很明显,每节知识都会对应一个红色文本的部分。(第18页)课程也配套了相应的中英文教材,课程内容包括理论和实践部分。配套中文教材实践部分使用的是Flexsim仿真平台,英文教材则使用的是Anylogic仿真平台,本课程实践部分用AnyLogic。(第19页)实践部分包括软件安装试用、排队系统仿真、库存系统仿真和仿真结果分析四部分,分别会用到AnyLogic的三种建模方式,即离散事件系统、系统动力学和基于智能体的建模。针对不同的实践内容,对应的部分、建模方法会用红色标识出来。(第20页)以上是本节课的内容,我们从系统的概念出发,先后引出了系统模型、系统仿真等概念,强调了系统的目的性、相关性,系统仿真的五个原因、七个支撑和三个分类,以及仿真技术的发展趋势;最后落脚到物流系统仿真,着重介绍了其主要分类,给出了课程的内容组织、参考教材和实践部分的安排。课后同学们要及时复习总结,(第21页)同时思考本节讲解中提到的问题,包括要如何阐述“概念”的?如果按照系统中变量的不同,可以把系统模型分成哪些类型等问题?还可以总结一下研究系统的思路与方法。这次课就到这里,谢谢大家。同学们好!(ppt第1页)上次课我们讲解了离散事件系统仿真的基本概念,这节课进一步深入下去,(第2页)继续打好离散事件系统仿真的知识基础。本节课的内容将从大家已学习连续系统和离散事件系统这两类的区别讲起(第3页),给出离散事件系统的组成要素,介绍重要的仿真钟概念。(第4页)大家还记得连续系统和离散事件系统的区别么?它们的区别在于系统状态与时间的变化关系。系统状态随时间连续变化就是连续系统,呈离散变化就是离散事件系统。虽然有这个差别,但二者可以用同样的六元组来表示。是哪六个元呢?根据我们已掌握的知识可以猜出几个,比如前面说跟时间有关系,那这里必定有与时间相关的,叫时间基T(第5页)。连续系统的时间基T是确定的,开始是系统启动的时刻,比如打开荧光灯时;离散事件系统的时间基是可变,比如可根据仿真目的的不同,仓储系统从上班时间开始也可上班后1小时开始,当然这两个时间不同导致仿真结果也有差别。根据系统的环境适应性,这六元中必定有输入U输出Y(第6页),在这一点上两类系统的区别在于连续系统的输入输出通常是确定的量,而离散事件系统通常是随机性的,所以肯定会用到随机变量。六元组中出现了三个元,还有三个呢?就是系统状态X,首先需要把系统状态表示出来,那就是系统状态变量,连续系统中的系统状态变量是连续变量,离散事件系统中的通常是非连续的,比如货位的状态是空或非空;那这里货位状态可能取值的集合是不是也考虑在六元组中?对,叫系统状态空间omiga(第7页),基于现代控制理论可以发现,二者在这一点上的内涵是一致的。系统状态在系统运行的过程中会发生变化,有没有规律可循呢?可以理解到系统状态变量是时间的函数,这种规律能用函数表示出来么?这就是六元组中的状态转移函数,即通常连续系统是可以的,而离散事件系统往往不可以,二者在这点上的差别比较大。为什么两类系统有这么些区别呢?究其原因在于离散事件系统中事件的发生具有随机性。那如何来研究离散事件系统呢?看看身边的例子,银行排队系统的顾客服务、交通路口的车辆通行、立体仓库中的货物进出,它们的组成及相互间关系似乎各有不同,有共同规律么?通过抽象是可以发现的(第8页)。这里从要素的角度给出了离散时间系统的五个组成,即实体、属性、事件、活动与进程。前面讲的银行系统服务台、立体仓库等都是实体,这两个通常是永久性实体,也就是在系统运行中它们一致存在;与之相对应的是临时性实体,比如银行系统中的顾客、库存系统中的货物,在系统运行中会流经系统,结束前会离开系统。这里有两个问题让大家思考,一个这两类实体哪个重要些?另一个是在仿真模型中哪两个实体必须要有?(第9页)这里的属性要素其实是指实体所拥有的特性。实体的特性很多,比如料箱,它有长有宽有高有重量有颜色,是都要用么?显然不可能,那到底用哪些属性呢?这里复习一下,还记得系统的目的性吧,通常基于仿真目标来确定选择使用实体相关的属性。(第10页)接下来看事件这个要素,在“离散事件系统”这个类名中就有“事件”两个字,事件是引起离散事件系统状态发生变化的一些行为,比如货物到达事件,如果到达输送线,则输送线的运输量增加;如果到达货位,则货位状态就从空变为非空,货物离开事件则相反,同时一个事件的发生还可能产生新的事件。在仿真软件中还有一类事件叫程序事件,比如仿真终止的事件,就是为了仿真控制需要而增加的。那什么是活动呢(第11页)?它是事件和事件之间的过程。货物到达输送线存在到达事件,货物离开输送线有离开事件,货物从到达输送线开始,到离开输送线结束,就是一个活动,叫输送活动;把这个从到达到离开的过程放在货位上来看,就是存储活动。从这个例子,可以感受到事件与活动的关系。如果一个货物进入仿真系统,先通过输送带,再去到立体仓库某个货位,存储一段时间取出后离开本系统,这整个过程就是最后一个要素进程(第12页),即有序的事件与活动组成的过程。这张图(第13页)给出了事件、活动与进程之间的关系,事件对应时刻点,活动与进程都对应时间段,即二者都要持续一定时间,进程包括多个活动,持续时间更长。特别要强调的是,事件、活动与进程不是指仿真系统发生了不同的反应,针对相同的输入,系统的反应是相同的。这三个要素是从三种不同的角度来观察仿真系统的反应,反应是啥?就是即系统状态变化(文本在第12页)。学习了离散事件系统的五个要素,让大家对于离散事件系统有了一个更清晰的认识。接下来,给大家讲解离散事件系统中的一个重要概念。这里,需要大家回忆一下,前面提到了仿真的原因中,有一个是研究时间过长;还举例说生育政策对人口数量的影响,假设这个政策要30年才能看到具体效果,通过仿真手段,可以1个月就可以得到一个参考结果。这里给我们什么启示?这里有两个时间,一个是仿真系统实际运行的时间,是1个月;另一个是仿真模拟的时间,是30年。仿真运行时间是我们现实的时间,如果计算机速度快,1个月还可缩短,对不?仿真模拟时间是虚拟的时间,二者是不一样的。由此带来的结果就是,离散事件系统需要自己单独管理自己的仿真虚拟时间,所以这里的重要概念就是离散事件系统的仿真钟(第14页)。那仿真系统有了自己的仿真钟,需要解决的问题是什么?就是钟怎么走,也就是这里的仿真钟推进方法。这个问题不复杂,我们经常看到表就是一格一格推进的,仿真钟应该也可以这样来推进(第15页)。确实是可以这样,这种方法称之为固定步长推进法,步长可以是1秒、10分钟、1天、也可以是几个月。这种方法对离散事件仿真有什么影响没?为什么要这么问,因为随机性事件肯定不会都发生在固定步长推进那些时刻点上,否则就成确定性事件了,对吧?恰好在推进的增量中间时刻有事件发生,一般采取简化的方法,把该事件假定为是在增量推进的时刻发生的。这个简化可以解决问题,感觉还是不太舒畅哈。还有没有其他推进方法呢?与固定步长相对应,很容易想到变步长推进法(第16页)。也就是在仿真过程当中,事先是没有一个确定的步长,如图所示(第17页),它是根据随机事件的发生进行随机步长的推进,其的推进长度其实就是最后已发生的事件和下一个最早发生事件之前的一个时间间隔,为什么可以这样做?(回到16页)那是因为在离散事件系统中,它的系统状态是呈离散变化的,没有变化那些点其实就是上一个状态的持续,我们就可以不管。所以采用变步长推进法是可以的。很明显,与固定步长推进方法相比,变步长推进方法的节奏与系统状态的变化更加吻合,这也是它比较常用的原因所在。以上是本节课的主要内容(第18页)。这节课基于六元组模型介绍了两类系统的区别,给出了离散事件系统的五个组成要素和两类仿真钟的推进方法,重点是理解离散事件系统事件存在随机性;课后(第19页)要及时总结复习,深入理解,比如从三个角度看系统仿真过程有什么差别?从信息论的角度,仿真过程中哪些数据应该记录下来?这些问题将在后续学习中我们进一步学习探讨。这次课就讲到这里,谢谢大家。同学们好!(ppt第1页)基于前面对离散事件系统仿真基础概念的学习,这节课给大家介绍离散事件系统仿真模型。基于对前面离散事件系统组成要素的理解,大家知道基于抽象归纳给出的,同样这里的仿真模型也有一定的抽象性,它对后续学习中的理解与深入尤为重要,所以虽然这部分内容对应参考教材仅1页,但也单独作为一节来加以介绍,它仍然(第2页)属于“离散事件系统仿真基础”这部分。(第3页)本节将在回顾前面基础知识的基础上,抓住离散事件系统中经常发生变化的部分展开,以变步长仿真为依托讲解仿真模型的组成和构造。(第4页)前面离散事件系统仿真基础概念可以用652来总结,即离散事件系统和连续系统的六个方面区别,对应六元组表示,还有离散事件系统的五个组曾要素,以及离散事件系统仿真钟的两种推进方法。(第5页)这个图前面大家已经看到了。它给出了两类系统的123区别,1是指时间基,2是指输入输出变量,3是指系统状态变量、状态空间和状态转移函数。接下来是实体、属性、事件、活动、过程这五个组成要素,最后是仿真钟的固定步长和变步长两种推进方法。接下来,基于这些基础概念,要做一个离散事件系统的仿真模型,会是怎么样的呢?结合前面仿真软件试用的体验感受,一个仿真模型的运行应该采用了循环结构,在没有单击将其停止下来之前不断循环,应该也是不知道预先循环次数的。有关的这部分内容,大家可以复习一下编程方面的知识。(第6页,根据下面的讲解进度把各部分显示出来)既然有使用循环,肯定每次循环中有些变量或组成部分是要发生变化的,否则就没必要循环,对不?那现在来看,哪些变量/组成部分是要变化的呢?还记得两类系统的区别么?记得仿真钟也行,这里也叫系统时钟。通过前面讲解,基于仿真运行时间和仿真模拟时间的不同,仿真钟必不可少;同时回顾一下离散事件系统和连续系统定义可知,是说系统状态与时间的变化关系;所以少不了时间,而且肯定要放在循环中,因为它变化的次数是未知的。随之而来的肯定少不了系统状态,在六元组中有三个元都与它有关系,这一点大家应该没有异议。除此之外,还可能有什么?还有引起系统状态变化的因素,在离散事件系统中是什么?就是具有随机性的那些事件,我们称之为事件列表。举个例子,在立体仓库中,对于某一货位,最初它的状态为“空”,经过一段时间到达了一箱货物,由此这个货位的状态发生变化,变为“非空”,由此这个货物到达事件,系统状态发生了变化。由于一个事件的发生还可能产生新的事件,所以事件列表也在这变化的组成部分之列。那还有么?我们把刚才立体仓库的例子,再推进一下,在那个货位存储货物一定时间后有发生了货物离开事件,由此这个货位的状态又由“非空”变化为“空”,结果这个时候仿真停止了。现在问大家,我们如何来分析这个仿真过程?是只关心仿真开始和仿真结束么?对于这个货位而言,开始时为空,结束时也为空,好像没干事一样,但我们都知道它在过程中干了事的,应该要考虑过程的变化。其实大家回顾一下仿真的目的也就清楚了。利用人为控制的环境条件,改变某些特定的参数,观察系统(模型)的反应,研究真实系统的现象或过程(参见01A系统仿真基础,第11页ppt)。系统的反应就是系统模型的反应,系统模型的反应就是系统状态的变化。而且这个状态的变化还应该被记录下来,这就会用到统计计数器,也就是在循环中肯定会发生变化的第四个组成部分(本节ppt第7页)。这四个分别是仿真钟,它提供当前仿真时刻的变量;系统状态是在某特定时刻用来描述系统的一组必要的状态变量;事件列表则列出当前或下一时刻将要发生的各种类型事件;统计计数器是一组用来记录系统运行的统计信息的变量;那这些变量是什么驱动呢?或者说基于什么发生变化的呢?(第8页)。仿真钟是时间推进程序驱动的,这个推进时间的子程序,它根据事件列表确定下一时刻要发生的事件,并将系统时钟推进到要发生这一事件的时刻;系统状态则是由事件发生程序驱动,它是用来更新系统状态的子程序,当某类型的特定事件发生后,根据该事件的类型,进行相应的系统状态更新;事件列表哪里来的呢?是基于概率分布产生随机观测值的一组子程序生成的,我们称之为随机观测生成程序库;最后的报告生成器则是基于统计计数器而设计的,用来计算由某种方法对系统运行绩效进行的评估结果,并在仿真结束时生成仿真报告。由此,我们就把循环部分的变量或组成部分基本梳理出来了,除了报告生成器通常放在循环之后外,其余都会出现在循环中。如果边循环边看结果,那报告生成器也会放在循环中。那这八个部分是离散事件系统的全部组成么?当然不是(第9页),在循环之前是不是要做准备工作啊?我们称之为初始化,特别注意的是,所有在循环中要变化的变量/组成部分都必须初始化。再加上对各个组成部分进行管理协调的主程序,一共十个部分(第10页),如图所示,可以理解为4乘以2再加上2。那这十个部分是如何有机结合起来的呢?这里我们以变步长仿真的流程图加以说明。这个流程给出它们之间的相互关系,最上面是开始,最下面是结束,中间有一个判断分支叫仿真结束。接下来看下我们前面讲解的循环体吧。这里把它分成了三个方框,中部左侧那个框就对应随机观测生成程序库的功能,中部中间的那个框,三个更新很明确,就是系统状态、事件列表和统计计数器,右侧上部的那个框就是更新系统时钟的功能。它是基于下一个最早发生的事件时间来推进仿真钟的,这里体现的是什么?对,变步长推进方法。得到的时间和事件需主程序激活时间推进程序和事件发生程序来实施,基于前面循环的概念,这两个程序再每次循环中都要执行。上部左侧方框用来实现初始化的功能,其中包括的内容也很熟悉了,连接主程序两个箭头上方的0,表示开始运行后,这部工作要放在最前面,接下来是1,后面循环是i。当仿真结束的判断为真,则循环终止,报告生成器基于统计计数器自动计算有关评价指标、生成仿真报告,仿真结束。(第12页)以上是本节课的内容,我们从离散事件系统652的基础概念出发,抓住了仿真模型中的循环部分,分析出其四个变量及其关联的驱动程序,明确了仿真模型的4乘2加2的十个组成部分,最后依托变步长推进方法给出了一个仿真流程图的例子。课后同学们要及时复习总结,(第13页)同时思考本节讲解中提到的问题,比如流程图例子中主程序通常会管理哪些内容?理解其中的变步长是如何实现的,如果还是采用变步长推进方法,站在活动的角度来看,仿真模型会有何不同?通过这些思考加深对本节内容的理解和掌握这次课就到这里,谢谢大家。同学们好!(ppt第1页)前面学习了离散事件系统仿真基础概念、仿真模型,这节课给大家讲解离散事件系统仿真步骤。这部分内容直接面向应用,即针对现代物流中的具体问题,如何通过仿真的手段给出解决方案。这对于同学们如何运用离散事件系统仿真的理论、技术与工具,以及其他相关知识来解决实际问题尤为重要,因此也单独作为一节来加以介绍,它仍然(第2页)属于“离散事件系统仿真基础”这部分。(第3页)本节将从系统仿真目标出发,详细介绍系统仿真的调研内容,并从三个世界的角度将整个仿真步骤加以梳理,让大家深入理解这部分内容。(第4页,01A系统仿真基础第4页)谈到系统仿真目标,大家会详细什么?嗯,系统的目的性,大家对这页ppt还有印象吧?在讲解系统概念时我们强调了系统的目的性,这里讲解离散事件系统仿真步骤,其实是这个概念的具体体现。(第5页)通常,不同的系统有着不同的研究目的。特别地,即使同一个系统也有可能有不同的仿真目的。因此,在仿真之初,明确系统仿真目标尤为重要。比如研究一个物流配送中心,可以提出各种不同的问题,如管理调度策略问题、设备配置问题、运作流程协调问题等。针对所关心的问题不同,建立的系统模型、设定的输入变量、输出变量等都各不相同。回想起来,大家还记得讲解离散事件系统的组成要素时,实体属性的选择都要基于系统目标来确定,由此应该可以明白其重要性了吧!所以,确定仿真要解决的问题,是系统调研等一系列仿真步骤的依据。在此先强调一下,在后续结果分析阶段,一个很重要的工作就是要确认仿真目标是否达成,如果没有达到则整个仿真步骤中好些工作需要重新梳理、甚至重新完成,当然也包括重新思考系统仿真目标是否合适。在明确系统仿真目标的基础上,就可以展开具体的仿真工作了。接下来就是要搞明白要仿真的系统到底是怎么样的(第6页)?要深入了解系统的总体流程、各种建模参数,以便建立系统模型。讲到这里,大家会想到什么?对,系统的相关性,那基本思路就清楚了,就是搞明白系统由哪些组成以及这些组成之间的关系。那具体怎么做呢?要从如下这七个方面展开系统调研。首先是参数方面,它包括结构参数、工艺参数、动态参数和逻辑参数四部分。结构参数是指描述系统结构的物理或者几何的一些参数,比如自动化立体仓库调研中,通常包括其平面布局、设备组成、存放的物品形状、尺寸等静态的参数。再就是工艺参数,它是指系统运行的工艺流程,包括各流程间的相互逻辑关系。比如自动化立体仓库,每种货物入出库经过的设备、工序,每个工序滞留的时间等。(第7页)还有动态参数和逻辑参数。动态参数是描述系统在运行过程当中的一些参数,比如自动化立体仓库中堆垛机的运行速度、加速度,在系统运行过程中有机会可以根据需要加以调整选择。逻辑参数是指系统运行过程当中业务流程和作业之间的逻辑关系。比如说排队规则,出现冲突时谁优先等,都是属于逻辑参数的内容。(第8页)同时还有两个变量,即系统状态变量和输入/输出变量。顾名思义,系统状态变量就是描述状态变化的变量,前面已经举了货位“空”与“非空”的例子,这里提到的堆垛机“闲”与“忙”都包含在系统状态变量中。至于输入/输出变量,也取决于系统目标,要注意的是离散事件系统中的输入输出变量有可能是随机的也有可能是确定性的,对于随机变量则需要确定其分布和参数。这在仿真软件试用中大家会遇到。(第8页)七项中最后一项是引起系统状态变化的事件列表,通过调研需搞清楚系统运行过程所发生的各种事件的类型与描述、事件发生的时间及其相关性。总结起来,系统调研要得到四类参数、两类变量和一个列表,大家要记下来。前面讲解的是离散事件系统仿真步骤中的前两步,因为很重要所以单独列出来,目的是要引起大家的重视(第9页)。通常离散事件系统仿真分九步,在这里罗列出来了,除了确定系统目标、系统调研,还有七步。看着内容还是不少,对吧?因为通常罗列项在5个以内比较容易记住,最多不要超过7项,否则需要通过分类来加以巩固。为了便于大家更深入地理解课程知识及相互关系,这里用三个世界的角度来讲解这些步骤(第10页)。大家还记得这张ppt么?这是在讲解系统和系统模型这个概念时提到,三个世界即现实世界或客观世界、信息世界和机器世界。十分巧合的是,离散事件系统仿真步骤就是遵循这三个世界的关系的。通常基于一定的研究目的,人们会将现实世界中一部分的对象从逻辑上分离出来作深入地分析,我们就是研究现代物流领域的问题。这是不是就对应系统目标的确定啊?接下来通过系统调研分析,把系统内的四类参数、两类变量和一个列表搞清楚,利用专业知识,当然包括常识,通过抽象归纳总结,就可以建立起系统模型,这就对应信息世界了,而仿真第三步就是建立系统模型(第11页)。在这一步中就是确定模型和模型参数,离散事件系统通常建立流程模型,包括临时实体到达模型、永久实体服务模型和排队规则等内容。为了让计算机可以帮着我们把仿真做出来,需要做两步工作,一就是确定仿真算法,再就是建立仿真模型。(第12页)前者具有一定的通用性,所以也有多个软件平台开发出来,我们选用的是AnyLogic。其中仿真算法是控制仿真钟推进的方法,是系统仿真的核心。通常有三种思路实现即事件调度法、活动扫描法及进程交互法。看到这里,可以回想起离散事件系统的组成要素吧,下来一定要复习。这里的仿真模型是针对具体的离散事件系统而言的,与上节讲的通用仿真模型有一定差别。由于仿真软件的存在,仿真算法可以不自己设计,仿真模型也可以基于软件提供的组件等来建立。(第10页)这里要强调的是系统模型与仿真模型的区别。如前面所讲,系统模型是信息世界的模型,仿真模型是机器世界的模型。这里也告诉大家,系统模型在很大程度上不能在机器上运行(第13页)。建立仿真模型是将系统模型规范化和数字化的过程,同时也需要根据计算机运行的特点增加一些必要的部件。具体内容可以参考“离散事件系统仿真模型”一节知识。既然二者有差距,那仿真模型会不会曲解系统模型的意思呢?由此,就有了第六步模型验证和确认(第14页),模型验证其实就是看仿真模型可否计算机执行,在软件试用中的Build成功则表示能执行;模型确认就是指仿真模型能否代表系统模型、甚至实际系统。前面这六步就可以顺利与三个世界对应起来了,剩下的步骤就相对简单了。就是把机器世界的仿真模型运行起来,收集在运行过程中其系统变化的信息,用于结果分析,看是否达到预期系统仿真目标,如果达到则输出结果。针对这三步分别有些地方需要注意:(第15页)运行仿真模型时通常有仿真终止的问题,可以事前确定仿真结束时间、也可以确定仿真结束事件个数,还可以用程序结束事件来实现。AnyLogic用的最后一种,前面的方法也可以实现;(第16页)对于仿真结果分析,通常有两种角度:第一种是从优化的角度考察仿真结果是否满意;第二种是从仿真结果可信度考察仿真结果多大可信度反映实际系统。这两种情况在后续学习中都会接触到。(第17页)最后的仿真结果输出也有两种情况,针对终止型仿真,我们可以在仿真结束时输出,而对于非终止型仿真则需要实时在线输出。(第18页)以上是本节课的内容,我们从系统的目的性和相关性讲解了系统目标和系统调研两步重要内容,记住421这个组合;同时基于三个世界的概念梳理了离散事件系统仿真的九个步骤,要清晰它们之间的对应关系,同时也还要将目标和结果对应起来。课后大家要及时复习总结,(第19页)梳理一下系统目标在哪些步骤中体现出来了?根据你对物流系统仿真的理解,后续学习应集中在哪些知识点上?结合AnyLogic试用情况,基于通用仿真模型建立某系统的仿真模型,还要人做哪些工作?这次课就到这里,谢谢大家。同学们好!(ppt第1页)前面学习了离散事件系统仿真基础概念、仿真模型和仿真步骤,这节课给大家讲解两类典型的离散事件系统,即排队系统和库存系统,这也是现代物流系统的典型系统,因此对这两类系统的学习是物流系统仿真的基础。显然(第2页)它同样属于“离散事件系统仿真基础”这部分。(第3页)本节课将分别讲解这两类系统的基本组成、主要特征、评价指标等基础概念,还会对它们进行比较,加深理解和掌握。(第4页)首先看下排队系统,排队是日常生活中经常出现的现象,到学校食堂吃饭、到隔壁银行取钱都会碰到,关于现代交通、物流中典型的仓储、机场、道路系统等系统也在这个表中用例子的方式给出来了。这里我们可以看到排队系统包括了临时实体顾客和永久实体服务台。为了深入地看下排队系统,这里给出了单服务台的示意图(第5页)。当顾客到服务台来接受服务时,通常会遇到两种情况,第一种情况就是到了就可以接受服务,这是我们最愿意看到的。另外一种情况就是服务台正在给其他顾客提供服务,此时需要排队等待,按照排队规则在自己接受服务后离开。从中可以看出,顾客以什么规律到达、服务台如何为顾客提供服务,即到达模式、服务模式以及前面已提及的排队规则是排队系统的主要组成。(第6页)到达模式,有时也称为输入过程,这里服务机构对应服务模式,还存在多服务台情形。这三个组成以及它们间的关系会直接影响到排队系统的运行情况。排队系统要达到哪样的效果为好呢?(第7页)有了买饭、存/取款等排队经验,我们可以感受到不排队为好,或者说即使排队也要时间短为好。这是顾客的角度,那对于服务台呢?前面的示意图以单服务台为例,其实可以多个服务台,使得排队时间可以变少,增加服务台对应的成本也增加,最好的办法是服务效率高。由此可以看出,排队系统其实就是顾客和服务台的效率问题,把排队系统的目标说得再具体一些,就是以最少的服务台服务最多的顾客。接下来,我们细致地看看排队系统(第8页)。我们可以从排队系统的主要特征来看,首先是顾客到达模式,顾客到达具有随机性,通常假设顾客到达事件具有独立性,可以用单位时间内到达的顾客数量、或顾客到达时间间隔来描述。也有相关的研究结论可以引用,比如在时间t内到达的顾客数量Nt服从参数为𝝀𝒕的泊松分布,则间隔时间T服从参数为𝝀的指数分布,这两个命题还是等价的;如果到达时间间隔明显不服从指数分布,还可以用Erlang分布来分析。这些相关知识大家可以查阅相关资料进一步学习。另一个是服务模式,主要体现在服务时间上,由于不同顾客的需求差异等原因,服务时间也是随机的,通常可以用指数分布来刻画。如果到达时间间隔和服务时间都服从指数分布,则排队系统都看作是生灭过程(第9页)。这里给出的是单服务台M/M/1/∞/∞/FCFS的例子,这里两个M表示顾客到达时间、服务时间均服从指数分布,1表示单服务台,FCFS表示先到先服务,两个无穷大表示系统容量和最大顾客数无限制。关于具体的排队系统模型的表示方法,大家下来要查阅资料学习。多服务台的情形还可能存在服务台之间流程的问题,第三个就是服务流程问题(第10页),当然每个服务台的服务时间可以参照服务模式的内容,增加的部分是它们之间的顺序关系。最后一个是排队规则,在现实生活中遇到较多的是先到先服务,即先入先出的规则,还有优先权规则,这在银行服务中会碰到,还有后入先出的规则,这在计算机堆栈工作中用到,根据实际情况也存在随机服务的情况。上述四个方面都会影响到排队系统的运作效率,那到底一个排队系统运作效率怎么样如何评价呢?主要有这四个参数(第11页),分别从时间和顾客数两个方面来给出的。这里大家看到的是平均等待时间和平均通过系统时间,都是时间,二者有什么差别呢?大家看这个表达式就会很快明白过来。平均等待时间只与排队等待时间有关,而平均通过系统时间还加上了顾客接受服务时间。同样的道理(第12页),平均队长和平均滞留实体数之间的差别也在这里,即前者只关心排队等待的顾客数,后者还加上了正在接受服务的顾客数。关于时间和顾客数这两类参数求取的表达式有些差异,大家可以注意到顾客数表示成了时间t的函数。(第13页)前面讲解了排队系统,接下来看看的库存系统,我们知道立体仓库就是一类典型的库存系统,这里我们给出了库存系统的示意图。图中库存的左右两侧分别给出供给和需求,即在库存系统中顾客需求和订货供给(库存补充)会不断发生,从而使库存量呈动态变化。为了保证需求能有效满足,可以多订货供给,当然这会导致库存量增加,流动资金积压。要减少资金积压,也就是减少库存,有可能出现顾客需求来了无法满足,也就是缺货的情况。从这里可以看出(第14页),库存系统需要比较各种订货策略,以降低原材料成本,保证供应,防止缺货,减少流动资金积压。将库存系统的目标总结出来就是在保证需求满足的情况下,尽可能降低库存。(第15页)库存系统中存储的对象是广义的,可以是有形的物资,比如说原材料,半成品;也可以是无形的对象,比如说人才、信息、数据等。对于任何一种存储对象,库存系统的基本规律都是适用的。同样,我们还是需要深入地看库存系统(第16页)。这里从三个方面来看,首先是补给模式,也就是存储对象的补给数量、时间和特点,补给常通过订货实现,比如定期补给、不定期补给,分别对应周期检查模型和连续检查模型,还要考虑是立即补充还是有备货过程等情形当然这个与需求模式相关,也就是顾客对物品出库的数量、频率和时间等的要求,通常假设需求是常数,连续均匀。最后一个是成本模式,指当库存欠缺或盈余时需要付出的代价,这当中和可能存在数量折扣等问题。显然这三部分的不同组合对应不同的库存系统,在《运筹学》中有库存系统的数量模型,比如经济订货批量模型EOQ等,大家可以查阅相关资料学习。(第17页)这里着重介绍下库存系统的主要参数,这对于任一类库存系统都适用,也是评价库存系统运作情况的着眼点。主要有三个参数,都是成本。首先是订货费,它包括两部分,一部分是每次订货需要的固定费用,包括外部采购的电信往来、文书工作、账务工作等,内部生产中启动或关闭机器的劳动力费用或空闲时间等,另一部分是货款,与订货量相关。再就是保管费,它是库存量的函数,库存量越大,保管费越高;(第18页)与之相类似的缺货费也是缺货量的函数,缺货量表示为负数,所以这里用了取绝对值符号。库存管理的目的就是这三个参数之和最小,即成本最低,从这里可以看出,库存问题是关于供给和需求之间的效益问题。(第19页)前面排队系统是效率问题,这里知道库存问题是效益问题,二者之间有不少差别,可以从要素、目标、性能指标等方面加以比较。(第20页)这里的比较其实也是本节的总结。两个系统的组成都是两个,分别是顾客与服务台、供给与需求,排队系统的目标是以最少的服务台满足最多的客户服务需求,用四个参数来评价,库存系统则是保证供应的前提下降低库存,用三个费用来评价。当然我们也可以用数字来加以总结(第21页),排队系统244,库存系统233,比较4。需说明的是,两类系统区别较大,但二者在实际应用中不一定截然分开(第22页)。课后复习总结的同时,大家思考下二者联系在一起的情形,比如库存系统中会不会也考虑效率提升?当然排队系统中也有时间成本问题,这些问题要如何解决值得思考。这节课就到这里,谢谢大家。同学们好!(ppt第1页)今天这节课给大家讲解排队系统的实验操作,(第2页)这部分内容通常放在《离散事件系统仿真基础》理论已上完之后,(第3页)排队系统实验主要用到AnyLogic软件的离散事件系统建模方法,在模型动画部分也会用到智能体。(第4页)这节课将从排队系统概念出发,完成银行排队系统的实验操作。(第5页)接下来首先回顾一下排队系统知识要点,看排队系统通常会看其三个基础组成部分、四个特征和四个输出参数,系统目标是以最少的服务台服务更多的顾客(使用文本方式在页面合适位置展示“排队系统目标是以最少的服务台服务更多的顾客”)。(第6页)这里的银行排队系统,从组成部分看:顾客到达模式为平均每分钟3人到达,服务模式/流程为进入银行后,一半去ATM机,一半去柜台(有4名柜台员工),办理完业务后离开。(第7页)排队规则为先到先服务,不同类型的业务办理有其相应的时间。ATM机的业务办理时间最短0.5min,最长1.5min,最常见1min;柜台业务办理时间最短2min,最长6min,最常见4min。这里给出了两种业务办理时间,对应三角形概率分布函数的三个参数。输出参数方面关注ATM机的利用率、柜台服务队长和ATM机前面的平均排队长度、顾客在银行里花费的时间分布。那如何通过AnyLogic来模拟这样的银行排队系统呢?(第8页)通常可以通过如下三个阶段来实现,即创建银行排队流程模型、建立模型动画和增加统计图表。前后两个阶段都容易理解,中间阶段是为了实现模型的可视化,会用到智能体。下面分步进行介绍。第一个阶段,创建银行排队流程模型,最终建立的模型如图所示(第9页),其中有7个实体,很明显少不了两个实体,是什么?对,输入与输出,就是系统的环境适应性。在仿真中用什么来表示它们呢?(第10页)就是这里的Source和Sink。这两个实体在任何一个离散事件系统中都会有。接下来,按照这些关系在AnyLogic中建立仿真模型。新建模型,指定模型名称BankService、存放位置及仿真时间单位(分钟);在过程建模库中拖入Source,两种业务办理的选择通过SelectOutPut实现,ATM机和Service分别对应两种业务办理模式,必须说明的是Service有容量(20)和延迟(三角分布)两个参数,而ATM用delay来表示(三角分布),ATM机前并不是每次去都没有人等待,因此在其前面增加Queue实体(容量20);另外Service有4个柜员,所以还用到resourcePool资源池(容量为4,与Service关联起来),业务办理完毕后去向Sink。这些实体间顺序连线系统可能自动完成,如果没自动完成可双击实体旁绿色的点,显示出线头的时候拖向另一个实体的绿色点,连接起来后可以删除,也可以双击对其进行编辑。接下来,设置6个实体的属性。确认流程模型图中六个实体的属性设置是否正确(第11页),确认之后可以运行模型。可以进入阶段2:建立模型动画,这里首先需要建立对应顾客的智能体Person,拖拽一个智能体,在弹出的对话框中选择“从头”创建新智能体类型、确定智能体动画、添加智能体参数,参数列表如表所示(第12页),设置完毕后,可以在主界面的图形化编辑器中增加一个Tab,你也可以在这个界面中增删参数。接下来添加“演示”库中的三维窗口,它为后续动画演示提供支持,放入main界面即可。随后可以分别绘制ATM机和Service柜台服务的路径。在流程库中双击“路径”可到图形化编辑器中绘制路径,选用点节点表示ATM,表示在这个路径上排队后接收ATM服务;同样Service柜台前也可以绘制出路径,可以转弯,用矩形节点表示接收服务,四个柜员使用4个吸引子,规则地放到矩形中,即让排队的顾客有秩序的接收服务。点节点旁加上“3维物体”中的ATM立体图,吸引子位置再添加上“3维物体”中的柜台立体图。还需要将直线路径与Queue、点节点与delay、转弯路径和矩形节点与Service实体关联起来,完成后可以再次运行仿真模型,可以看到动画效果。(第13页)最后完成阶段3:增加统计图表。图表主要用于仿真结果分析,针对银行排队系统,其实就是查看输出参数。这里我们使用饼状图表示ATM使用率、使用时间折线图表示柜台实际队长和ATM平均队长、(第14页)用直方图表示顾客在银行中花费的时间,也就是顾客通过系统时间。首先需要获取数据,添加“分析”库中数据类里的“数据集”“统计”“直方图”到main中,它们在仿真运行时不显示出来。再添加“分析”库中图标类里的“饼状图”“时间折线图”“直方图”到main中,放适当位置,它们将在仿真运行时显示出来。设置饼状图的标题和值如表所示(第13页显示后展示操作视频),需要在全英文状态下输入。需说明的是:可使用AnyLogic系统函数的提示功能,可通过几步完成设置快捷键:主菜单工具>>偏好>>组合键,同时按住Alt键和X键设置,单击应用>>确定(视频展示)。在输入过程中按Alt+X自动列出可选的系统函数等供选择。同样,设置时间折线图的标题和值(第13页显示后展示操作视频);最后,编写Source离开时和Sink进入时的代码(第14页显示后展示操作视频),需要注意的是:前面定义的dataset、data、statistics都在这里用到了。完成上述设置后可构建模型、运行模型,查看仿真运行结果,查看流程图、动画和图表统计的变化情况。上面是本节课的主要内容,从排队系统的概念出发,给出了银行排队系统的问题,随后分三个阶段完成了实验操作(第15页)。课后同学们要按照视频的指导步骤完成本次实验。同时思考两个问题(第16页),一个是总结本节课离散事件系统建模的实验操作,包括智能体,另一个是如果部分接受ATM机服务的顾客还需要柜台服务后才离开,如何实现?这次课就到这里,谢谢大家。视频录制需按本讲义从前往后完成(不录制音频,电脑桌面尽量干净,不打开其他文件),不宜弄成两个模型、不宜交叉顺序,如有需要调整顺序必须及时交流,录制完成后再交由制作方剪辑。括号中蓝色文本提示给制作者。同学们好!(ppt第1页)今天这节课给大家讲解库存系统操作实验,这个实验内容较多,分成两个部分,今天讲第1部分A,(第2页)这部分实验可穿插在“输入数据模型”部分来做,(第3页)库存系统实验用到了离散事件系统和智能体两种建模方式,与排队系统类似,智能体主要用来实现动画,(第4页)为此,本节的主要内容包括仓储问题、流程模型和动画模型。(第5页)同样,这里简要回顾一下库存系统的概念,主要就是三个主要特征、三个主要参数,其目标是保证供应的情况下成本最低。(第6页)那我们这个库存系统实验要解决的问题是什么呢?这里要说明下:本次实验对象主要是仓储系统,还模拟了生产部分,其中存在库存问题,在课程中称之为库存系统实验。通过实验想了解这个库存系统的运作情况,比如设备利用率、货物在系统的时间等性能。同学们可进一步熟悉AnyLogic基础操作,加深对仓储管理的理解和认识。我们先看下这个库存系统的已知条件:(第7页)货物到达速率为每分钟10件,货物在每一阶段仓库暂存区的容量为500件,货物到达指定地点后由叉车直接打包运走,并且叉车数量完全足够,叉车在打包运完货物后,又返回原地,叉车数量为3;传送带长度为10m,传送带速度为0.5m/s;(第8页)仓库中有两个货架且货物到每个货架存储的概率为0.5,每个货架为2层每层300个货位,层高为2m,总共5m高,货物在仓库中存放时间为服从(0.5,1.0,1.5)的三角形分布。(第9页)本节实验的基本步骤包括创建新模型,并将模型命名为inventory.alp,随后库存系统流程模型、建立库存系统动画模型,动画模型也成为智能体位置模型,当然还要建立智能体位置模型与流程中实体的关联关系。首先我们创建库存系统的流程模型(第10页),会用到流程库中多个实体,包括在排队系统中用到的source、selectoutput、queue、delay、sink,还包括seize、release、conveyor、moveTo,跟仓储密切相关的rackStore和rackPick,在库内保存时间用delay实现。首先我们根据业务流程建立模型,(第11页)主要包括:生产流程、暂存流程、输送流程、叉车搬运流程、入出库流程。下面分别详细介绍(全为视频展示,如下文本为讲解用):(1)生产过程主要由控件source实现,产生货物的速度为每分钟10个;(2)暂存流程包括上传送带运输前暂存由moveTo表示、以及叉车装车前暂存由delay表示。(3)输送流程用传送带(conveyor)实现,传送带长度为20m,速度为0.5m/s(4)搬运流程通过叉车实现控件seize实现打包装车,队列容量设置为50;(5)入出库流程,入库流程由selectoutput、rackStore、rackStore1、delay、delay1、rackPick、rackPick1实现。其中一条仓库入库流程连接顺序为selectoutput、rackStore、delay、rackPick、sink,其中selectoutput代表选择的那个仓库货架,另一条仓库入库流程连接顺序为selectoutput、rackStore1、delay1、rackPick1、sink,其中selectoutput代表选择的那个仓库货架只有两种选择,rackStore和rackStore1代表进入到两个仓库货架;delay和delay1分别代表在两个仓库货架的存储时间;rackPick和rackPick1代表从两个仓库货架中出来;sink代表仓储活动结束。建好业务流程模型后,构建模型、运行模型,查看其仿真情况。(第12页)接下来第二阶段建立模型动画,(第13页)需要对应仓储流程绘制仓储智能体位置,包括货物产生区域、暂存区、传送带、暂存区1、仓库入口、叉车停放区、货架区域及货物离开区,下面分别详细介绍(全为视频展示,如下文本为讲解用)(1)货物产生区,使用矩形区域表示;(2)是暂存区,同样用矩形区域表示,在该区域货物的货物是随机放置的。与货物产生区的路径关系;(3)传送带使用路径表示,同时可以修改路径属性为传送带。(4)仓库口为货架前面的一条通道,用路径表示。(5)叉车停放区,使用矩形区域表示,此处用以停放叉车。(6)货架区:叉车运送货物在两排货架中间的路径中运行,从左往右放置货物,在卸货都的叉车由指定的路径放回叉车制定区域或者直接前往运货。(7)货物离开区;货物离开区域为制定的货架后的一个矩形区域,该区域只要是用于叉车卸货。(视频操作展示)接下来连接各区域,在过程中确认各实体属性。各区域连接顺序为:node(代表货物产生区域)、path(生产后排队出厂区域)、node1(暂存区域)依次连接;path1(叉车返回仓库生产区域)从node1出发连接到node;path2(代表传送带)从node1出发连接到node2(代表货物装车)、path3(代表货物装车后运送到货架前的路程)、node4(叉车运货到货架前的暂存区域)、node4(叉车停车区域)。在node3后面是path4直接通往货架,同时path5连接这path4,主要是空叉车回到node4,在path4末端两侧是货架,path6和path7分别是到两个货架的路径,在path6和path7末端是node5代表货物离开区域。到这里动画模型就建立完成了。(第14页)完成上述位置模型后,需要将仓储流程模型和仓储智能体动画模型关联起来,实体与智能体关联关系如表所示,包括各实体的属性。(全为视频展示)完成关联后,再次构建模型、运行模型,查看仿真情况(约7-10秒)。(第15页)到这里,仓储管理实验的第1部分已完成。我们在复习库存系统相关概念基础上,先后完成了库存系统的流程建模、动画建模以及二者的关联。下来同学们对照其中步骤完成这部分实验。同学们在完成本节实验的过程中(第16页)同时思考几个问题:与排队系统相比,库存系统有何不同?结合理论知识学习,尝试分析实验中系统哪些地方可以改善并尝试实现;从具体操作上也可以思考有没其他来实现seize的功能?这次课就到这里,谢谢大家。视频录制需按本讲义从前往后完成(不录制音频,电脑桌面尽量干净,不打开其他文件),不宜弄成两个模型、不宜交叉顺序,如有需要调整顺序必须及时交流,录制完成后再交由制作方剪辑。括号中蓝色文本由制作者实现。
同学们好!(ppt第1页)今天这节课继续讲解库存系统操作实验的第2部分B,(第2页)这部分实验可穿插在“仿真算法设计”部分来做,(第3页)库存系统实验的这部分更多的是智能体建模的运用,(第4页)在添加好两类智能体后,本节还将介绍如何收集库存系统的数据,以及如何建立库存系统三维动画。(第5页)接下来,我们首先增加货物和叉车两类智能体。货物智能体如何增加的呢?在流程库中的智能体类型,命名为货物,并选择智能体动画为盒子类型中的盒子关,动画点击完成即可。(把整个操作过程分步骤详细讲解出来,对应视频操作)操作下来会发现图形化编辑器中增加了一个Tab页,名称为货物;接下来增加叉车智能体,在流程库中的资源类型,命名为叉车,并选择智能体动画为仓储和集装箱码头中的叉车,点击完成即可。(把整个操作过程分步骤详细讲解出来,对应视频操作)操作下来会发现图形化编辑器中增加了一个Tab页,名称为叉车;最后,将新建的两个智能体拿来使用,将source的智能体设置为货物,sourcepool的智能体设置为叉车;(第6页)完成了这部分操作,接下来明确要收集的数据,根据最初设定要查看库存系统运行状况的目的,需要查看叉车利用率、货架利用率,以及一定时间通过系统得货物数量、货物通过系统的最大最小时间、平均时间等数据。接下来需要添加必要的智能体参数、增加收集数据的实体、还要编写事件代码。(第7页)首先为货物智能体货物中添加参数timeIn和timeStay,在添加三个数据收集的实体,在Anylogic的统计库拖入数据集dataset、统计statistics、直方图数据histogram、饼状图PieChart添加到main中(展示拖入视频)。其中dataset统计系统中货物个数,以及单个停留时间。statistics统计的是货物平均、最大、最小、以及货物平均停留时间,histogram统计货物(智能体)停留时间(与后文Queue3、Queue2对应么,前面修改了)。要让仿真运行的数据写入这三个实体,还需要编写代码(第8页)在source实体属性的进入事件中编写代码agent.timeIn=time(MINUTE);注意所有的代码为英文,包括最后的分号也是英文,不能缺少,以下同。在sink实体属性的离开事件中编写四行代码(显示对应的操作视频)agent.timeStay=time()-agent.timeIn;dataset.add(self.count(),agent.timeStay);statistics.add(agent.timeStay);data.add(agent.timeStay);第1句是获取每个货物的进出系统时间差值,即货物通过系统时间,后面三句则分别为前面三个收集数据的实体添加数据。在饼状图的数据中分别增加两段代码delay.statsUtilization.mean()和1-delay.statsUtilization.mean(),(显示对应的操作视频)即对应显示叉车的使用率和闲置率。在直方图数据中分别增加Queue3.statsSize.mean()和Queue2.statsSize.mean(),(显示对应的操作视频)即对应显示两个队列的队长均值。(显示对应的操作视频)完成上述设置后,再次构建模型、运行模型,查看仿真情况:饼状图和直方图分别图示出了对应的数据,并随时间发生变化。(第9页)最后一步实现库存系统的三维动画显示,操作比较简单:在演示库中将3D窗口拖到main的可视空白区域,重新运行仿真,就可以看到三维的库存系统了。(第10页)到这里,仓储管理实验的第2部分已完成。这部分操作中运用两类智能体对库存系统做了完善,并实现系统中的数据收集与图形展示,最后将库存系统用三维立体方式运行起来。下来同学们对照其中步骤完成这部分实验。同学们在完成本节实验的过程中(第11页)同时思考几个问题:总结库存系统中哪些因素会影响到其性能?会不会包括入库速率、叉车数量、单位叉车运输量、仓储延迟时间、入库前排队时间等,比如入库速率与仓储整体时间成反比,仓储延迟时间与总的仓储流程时间成正比,这里就不一一列举了。从另一个方面看,实验中对库存系统的效率关注较多,还可以进一步考虑如何计算库存成本,甚至缺货成本?结合理论和实验思考来降低库存成本的方法。通过本节实验可以发现:排队系统与库存系统并非截然分开的,在实际问题中二者通常相互关联。这次课就到这里,谢谢大家。视频录制需按本讲义从前往后完成(不录制音频,电脑桌面尽量干净,不打开其他文件),不宜弄成两个模型、不宜交叉顺序,如有需要调整顺序必须及时交流,录制完成后再交由制作方剪辑。括号中蓝色文本由制作者实现。同学们好!(ppt第1页)今天这节课给大家讲解库存系统操作实验,这个实验内容较多,分成两个部分,今天讲第1部分A,(第2页)这部分实验可穿插在“仿真算法设计”部分来做,(第3页)库存系统实验用到了离散事件系统和智能体两种建模方式,与排队系统类似,智能体主要用来实现动画,(第4页)为此,本节的主要内容包括仓储问题、流程模型和动画模型。(第5页)同样,这里简要回顾一下库存系统的概念,主要就是三个主要特征、三个主要参数,其目标是保证供应的情况下成本最低。(第6、7页)那我们这个库存系统实验要解决的问题是什么呢?(1)通过实验,加深对Anylogic流程库仿真操作的认识并能对仿真系统存在的错误进行调试,通过与智能体建模相结合增强仿真的真实性和美观性。(2)在理论知识上,通过实验操作,进一步加深对仓储管理的认识,比如货架数量增加对仓库利用率和仓库效率的正负影响。我们先看下这个库存系统的已知条件:(第8页)货物到达速率为每分钟10件,货物在每一阶段仓库暂存区的容量为500件,货物到达指定地点后由叉车直接打包运走,并且叉车数量完全足够,叉车在打包运完货物后,又返回原地,叉车数量为3;传送带长度为10m,传送带速度为0.5m/s;(第9页)仓库中有两个货架且货物到每个货架存储的概率为0.5,每个货架为2层每层300个货位,货架层高为2m,总共5m高,货物在仓库中存放时间为服从(0.5,1.0,1.5)的三角型分布。(第10页)本节实验的基本步骤包括创建新模型,并将模型命名为inventory.alp,随后库存系统流程模型、建立库存系统动画模型,当然还要建立动画模型与流程中实体的关联关系。首先我们创建库存系统的流程模型,会用到过程库中多个实体,包括在排队系统中用到的source、selectoutput、queue、delay、sink,还包括seize、release、conveyor、moveTo,跟仓储密切相关的rackStore和rackPick,在库内保存时间用delay实现。首先我们根据业务流程建立模型,(第11页)主要包括:生产流程、暂存流程、输送流程、叉车搬运流程、入出库流程。下面分别详细介绍(全为视频展示,如下文本为讲解用):生产流程由:控件source、queue、seize、moveTo、release、queue、组成,并按顺序依次连接。运输流程由:conveyor连接上queue、delay、seize、moveTo、release、queue、selectoutput组成按此顺序连接。入出库流程,入库流程由selectoutput、rackStore、rackStore1、delay、delay1、rackPick、rackPick1实现。其中一条仓库入库流程连接顺序为selectoutput、rackStore、delay、rackPick、sink,其中selectoutput代表选择的那个仓库货架,另一条仓库入库流程连接顺序为selectoutput、rackStore1、delay1、rackPick1、sink,其中selectoutput代表选择的那个仓库货架只有两种选择,rackStore和rackStore1代表进入到两个仓库货架;delay和delay1分别代表在两个仓库货架的存储时间;rackPick和rackPick1代表从两个仓库货架中出来;sink代表仓储活动结束。建好业务流程模型后,构建模型、运行模型,查看其仿真情况。(第13页)接下来第二阶段建立模型动画,(第14页)需要对应仓储流程绘制仓储智能体位置,包括货物产生区域、暂存区、传送带、暂存区1、仓库入口、叉车停放区、货架区域及货物离开区,下面分别详细介绍(全为视频展示,如下文本为讲解用)货物产生区,使用矩形区域表示;暂存区,同样用矩形区域表示,在该区域货物的货物是随机放置的。与货物产生区的路径关系;传送带,传送带使用路径表示,同时可以修改路径属性为传送带。仓库口,仓库口为货架前面的一条通道,用路径表示。叉车停放区,使用矩形区域表示,此处用以停放叉车。货架区:叉车运送货物在两排货架中间的路径中运行,从左往右放置货物,在卸货都的叉车由指定的路径放回叉车制定区域或者直接前往运货。货物离开区;货物离开区域为制定的货架后的一个矩形区域,该区域只要是用于叉车卸货。(视频操作展示)各区域连接顺序为:node(代表货物产生区域)、path(生产后排队出厂区域)、node1(暂存区域)依次连接;path1(叉车返回仓库生产区域)从node1出发连接到node;path2(代表传送带)从node1出发连接到node2(代表货物装车)、path3(代表货物装车后运送到货架前的路程)、node4(叉车运货到货架前的暂存区域)、node4(叉车停车区域)。在node3后面是path4直接通往货架,同时path5连接这path4,主要是空叉车回到node4,在path4末端两侧是货架,path6和path7分别是到两个货架的路径,在path6和path7末端是node5代表货物离开区域。到这里动画模型就建立完成了。(第15页)完成上述位置模型后,需要将仓储流程模型和仓储智能体动画模型关联起来,实体与智能体关联关系如表所示。(全为视频展示)完成关联后,再次构建模型、运行模型,查看仿真情况(约7-10秒)。(第16页)到这里,仓储管理实验的第1部分已完成。我们在复习库存系统相关概念基础上,先后完成了库存系统的流程建模、动画建模以及二者的关联。下来同学们对照其中步骤完成这部分实验。同学们在完成本节实验的过程中(第17页)同时思考几个问题:这种人工手动优化的方式适合哪种应用场景?还可尝试分析2-3个人工手动调节的变量一起对仓储的影响,自学完成巴斯模型的优化实验后进一步比较二者的区别。这次课就到这里,谢谢大家。视频录制需按本讲义从前往后完成(不录制音频,电脑桌面尽量干净,不打开其他文件),不宜弄成两个模型、不宜交叉顺序,如有需要调整顺序必须及时交流,录制完成后再交由制作方剪辑。括号中蓝色文本由制作者实现。
同学们好!(ppt第1页)今天这节课继续讲解库存系统操作实验的第2部分B,(第2页)这部分实验可穿插在“仿真算法设计”部分来做,(第3页)库存系统实验的这部分更多的是智能体建模的运用,(第4页)在添加好两类智能体后,本节还将介绍如何收集库存系统的数据,以及如何建立库存系统三维动画。(第5页)接下来,我们首先增加货物和叉车两类智能体。货物智能体如何增加的呢?在增加叉车智能体动画时,我们只需选择流程库中的智能体类型,命名为货物,并选择智能体动画为盒子类型中的:盒子关,动画点击完成即可。(把整个操作过程分步骤详细讲解出来,对应视频操作)操作下来会发现图形化编辑器中增加了一个Tab页,名称为货物;接下来增加叉车智能体,增加货物智能体动画时只需选择流程库中的资源类型,命名为叉车,并选择智能体动画为仓储和集装箱码头中的:叉车,点击完成即可。(把整个操作过程分步骤详细讲解出来,对应视频操作)操作下来会发现图形化编辑器中增加了一个Tab页,名称为叉车;最后,将新建的两个智能体拿来使用,将source的智能体设置为货物,sourcepool的智能体设置为叉车;(第6页)完成了这部分操作,接下来明确要收集的数据,根据最初设定要查看库存系统运行状况的目的,需要查看叉车利用率、货架利用率,以及一定时间通过系统得货物数量、货物通过系统的最大最小时间、平均时间等数据。接下来需要添加必要的智能体参数、增加收集数据的实体、还要编写事件代码。(第7页)首先为货物智能体货物中添加参数timeIn和timeStay,在添加三个数据收集的实体,在Anylogic的统计库拖入数据集dataset、统计statistics、直方图数据histogram、饼状图PieChart添加到main中(展示拖入视频)。其中dataset统计系统中货物个数,以及单个停留时间。statistics统计的是货物平均、最大、最小、以及货物平均停留时间,histogram统计智能体停留时间(与后文Queue3、Queue2对应么,前面修改了)。要让仿真运行的数据写入这三个实体,还需要编写代码(第8页)在source实体属性的进入事件中编写代码agent.timeIn=time(MINUTE);注意所有的代码为英文,包括最后的分号也是英文,不能缺少,以下同。在sink实体属性的离开事件中编写四行代码(显示对应的操作视频)agent.timeStay=time()-agent.timeIn;dataset.add(self.count(),agent.timeStay);statistics.add(agent.timeStay);data.add(agent.timeStay);第1句是获取每个货物的进出系统时间差值,即货物通过系统时间,后面三句则分别为前面三个收集数据的实体添加数据。在饼状图的数据中分别增加两段代码delay.statsUtilization.mean()和1-delay.statsUtilization.mean(),(显示对应的操作视频)即对应显示叉车的使用率和闲置率。(饼状图在前面哪个地方拖入的?第7页)在直方图数据中分别增加Queue3.statsSize.mean()和Queue2.statsSize.mean(),(显示对应的操作视频)即对应显示两个队列的队长均值。(饼状图在前面哪个地方拖入的?第7页)(显示对应的操作视频)完成上述设置后,再次构建模型、运行模型,查看仿真情况:饼状图和直方图分别图示出了对应的数据,并随时间发生变化。(原有第9页不用,直接看视频操作即可)(第9页)最后一步实现库存系统的三维动画显示,操作比较简单:在演示库中将3D窗口拖到main的可视空白区域,重新运行仿真,就可以看到三维的库存系统了。(第10页)到这里,仓储管理实验的第2部分已完成。这部分操作中运用两类智能体对库存系统做了完善,并实现系统中的数据收集与图形展示,最后将库存系统用三维立体方式运行起来。下来同学们对照其中步骤完成这部分实验。同学们在完成本节实验的过程中(第11页)同时思考几个问题:总结库存系统中哪些因素会影响到其性能?会不会包括入库速率、叉车数量、单位叉车运输量、仓储延迟时间、入库前排队时间等,比如入库速率与仓储整体时间成反比,仓储延迟时间与总的仓储流程时间成正比,这里就不一一列举了。进一步在库存系统中如何计算库存成本,甚至缺货成本?结合理论和实验思考来降低库存成本的方法。这次课就到这里,谢谢大家。视频录制需按本讲义从前往后完成(不录制音频,电脑桌面尽量干净,不打开其他文件),不宜弄成两个模型、不宜交叉顺序,如有需要调整顺序必须及时交流,录制完成后再交由制作方剪辑。括号中蓝色文本由制作者实现。同学们好!(ppt第1页)前面我们学习了离散事件系统仿真的基础知识,了解到离散事件系统中的事件发生具有随机性。为了更好地掌握离散事件系统仿真的理论知识,有必要对概率论和数理统计中的相关知识进行学习。这节课给大家回顾一下概率论中随机变量的相关知识,(第2页)它属于“随机观测模拟”这个部分,本节内容是这部分知识的重要基础。(第3页)在概率轮中有两个重要的概念,也就是随机变量和分布函数,在这节中会加以回顾,同时还会讲到随机变量的两种基本类型,最后说明下其常见表示方法并加以总结.(第4页)随机变量是概率论中很重要的概念。在传统的古典概率中,一般都假定基本事件的发生是等可能的,其概率的计算都使用排列、组合的基本知识对基本事件进行技术,所以传统的古典概率应用是有限的,这显然不能应用于更广泛、更复杂的情形。那怎么引入随机变量呢?为了深入研究、全面掌握随机现象所反映的统计规律,可将随机试验的结果和一个实数对应起来,即通过试验结果数量化来实现随机变量的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年美工小雨伞教案
- 1.3 信息系统的应用说课稿2025学年高中信息技术浙教版2019必修2 信息系统与社会-浙教版2019
- 1.6 解三角形说课稿2025学年高中数学湘教版2019必修第二册-湘教版2019
- 2025-2026学年马术教学设计美术课件
- 2025-2026学年边城情境教学设计
- 1.2 集合之间的关系说课稿2025学年中职基础课-基础模块 上册-北师大版(2021)-(数学)-51
- 2025-2026学年课文灯光教学设计
- 审计毕业实习报告(16篇)
- 2025-2026学年民俗的魅力教案
- 2025-2026学年非攻 教学设计
- T/TMAC 246-2025多参数水质分析仪
- 2026秋初中《知识点总结》9年级上册(历史)背诵版
- 新版部编人教版四年级上册道德与法治全册教案(完整版)教学设计
- 办公楼物业服务标准(保洁服务类)
- 设备及管道拆除施工方案
- 护理带教中的领导力培养
- 中级注册安全工程师《安全生产法律法规》2026年考点归纳
- 公路工程隐蔽验收监理实施细则
- XF846-2009 消防产品身份信息管理
- 《生活垃圾渗滤液浓缩液固化原地利用技术规程》编制说明
- 湖南省定向选调考试真题2024
评论
0/150
提交评论