物流工程与管理第5章物流系统仿真技术包装与印刷工程学院李光内容5.1物流系统仿真概述5.2物流系统模型与计算机仿真软件5.3计算机仿真在物流系统规划中的应用5.1物流系统仿真概述5.1.1物流系统仿真的概念5.1.2物流系统仿真的类型5.1.3物流系统仿真的作用5.1.3物流系统仿真的方法5.1.1系统仿真的概念什么是系统仿真?仿真是一种模仿行为,模仿现有系统或未来系统的运行状态。海湾战争以后,美军公布了在军事上战胜伊拉克过程中,采用系统仿真辅助作战的成功案例。美国总统办公室和国防部从1992年以来,一直将“建模与仿真”列入优先发展的先进技术。从一般意义上讲,系统仿真可以被理解为:在对一个已经存在或尚不存在的系统进行研究的过程中,为了解系统的内在特性,必须进行一定的实验;由于一些原因(未存在,危险性大,或者成本高昂),无法在原系统上直接进行实验,只能设法建立既能反映系统特征又能满足系统实验要求的系统模型,然后在该模型上进行实验,以达到了解或设计系统的目的。从近现代意义上讲,所谓系统仿真,是指:利用计算机来运行仿真模型,模仿实际系统的运行状态及其随时间的变化情况,并通过对仿真过程的观察和统计,得到仿真模型的输出参数和基本特征,以此来估计和推断实际系统的真实性能。所谓系统仿真,就是根据系统分析的目的,在分析系统各要素性质及其相互关系的基础上,建立能描述系统结构或行为过程的、且具有一定逻辑关系或数量关系的仿真模型,据此进行试验或定量分析,以获得正确决策所需的各种信息。系统仿真的实质(1)它是一种对系统问题求数值解的计算技术。尤其当系统无法通过建立数学模型求解时,仿真技术能有效地来处理。(2)仿真是一种人为的试验手段。仿真实验不是依据实际环境,而是在实际系统映象的系统模型,以及相应的“人造”环境下进行的。(3)仿真可以比较真实地描述系统的运行、演变及其发展过程。系统仿真的特点(1)系统仿真是一种有效的“实验”手段,它为一些复杂系统创造了一种计算机实验环境,使系统的未来性能和长期整体特性,能在极短的时间内在计算机上得到估计、验证和结论。(2)仿真模型通常具有面向实际过程或实际问题的特征,它可以反映系统中主要事物间的逻辑关系和数学关系。(3)仿真的输出结果是在仿真运行过程(即仿真实验过程)中,对系统行为和系统状态的参数值进行计算和统计而得到的。这种计算和统计是由仿真软件实现的。(4)复杂系统仿真往往需要考虑随机因素的影响,每一次模型的仿真运行只是对系统行为的一次随机抽样,因此,一个完整的仿真实验往往由仿真模型的多次独立重复运行组成。所得到的仿真结果也只是对真实系统进行具有一定样本量的仿真实验的随机样本。因此,需要通过必要的统计处理,才能得出对真实系统的性能的估计。系统仿真的缺点(1)仿真模型本身并不具备优化功能,每次仿真实验只能给出实际问题的一个可行解,如果要获得问题的最优解,需要对多种备选方案逐一实验,因此具有枚举法的弱点。(2)仿真建模是直接面向问题的建模过程,对于同一个问题,由于建模人员的素质或风格上的差异或对问题了解的深度不同,往往会构造出迥然不同的仿真模型,其运行结果自然也会有差异。按系统状态是否变化静态系统动态系统投针试验理发馆模型按系统状态的变化与时间的关系连续型系统:系统的状态随时间连续变化离散型系统:系统状态仅在某些时间点上发生变化按有无随机过程确定型系统:系统的输出取决与输入随机型系统:包含随机因素的系统物流系统仿真主要研究动态离散随机排队系统5.1.2系统仿真的类型还有一些用于系统(特别是社会经济和管理系统)仿真的特殊而有效的方法,如系统动力学方法、蒙特卡洛法等。系统动力学是一种连续系统仿真技术,研究对象主要是复杂的社会经济系统和生态系统,以及一些可以用一阶微分方程组描述的系统。通过建立系统动力学模型(系统结构框图、因果关系图、流图等)、利用DYNAMO仿真语言在计算机上实现对真实系统的仿真实验,从而研究系统结构、功能和行为之间的动态关系。蒙特卡洛(MonteCarlo)方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。这一方法源于美国在第二次世界大战研制原子弹的“曼哈顿计划”。该计划的主持人之一、数学家冯·诺伊曼用驰名世界的赌城,摩纳哥的MonteCarlo,来命名这种方法,为它蒙上了一层神秘色彩。蒙特卡洛法是基于概率论的随机抽样的计算方法,可以解决如下两类的静态或动态问题:问题-:某人每轮向靶子射10箭,已知其击中靶心的概率为25%,问一轮中射中7箭的概率为多少?问题二:有一银行营业点打算添置一台自动存取款机(12小时服务),顾客按一定的间隔时间到来,排队接受服务,先来者先用,后来者后用,顾客不愿在队列中等待太久,否则会离去。管理人员想了解等待时间超过3分钟的顾客的比例为多少,若该比例太大,则考虑再增设一台机器。问题一的求解方法:1.产生均匀分布随机数0.00~0.99(100个),某个数字出现的概率相等。若产生1000个这样的数,则(1)数值为0.00~0.24大约会有250个,比例大约为0.25;(2)数值为0.25~0.99大约会有750个,比例大约为0.75。2.以每产生一个随机数代表射1箭,若产生的随机数小于0.25,则代表击中靶心,如果产生的随机数大于或等于0.25,则表示没有击中靶心。若实验的次数很多(远大于1000),则击中靶心的频率接近于25%。若实验的次数无限多,则击中靶心的概率等于25%。3.确定一轮中击中7箭的概率(1)每轮由计算机产生10个均匀分布的随机数Ni(i=1,2,3,…10),代表射10箭;(2)其中若Ni小于0.25为击中,记下该轮中击中的次数;(3)重复(1)―(2)步,进行K轮实验;(4)找出K轮中所有每轮击中7次的总轮数M,则K轮中每轮击中7箭的频率为M/K,若K趋向无穷大时,M/K为每轮击中7箭的概率。问题二的求解方法:1.模拟过程顾客到达排队→使用存取款机→顾客离开2.调查数据观察100位顾客到达间隔时间和使用机器的持续时间,得到如下统计数据:3.产生均匀分布的二组随机数产生0.00-0.99间隔两组均匀分布的随机数。一组用于模拟顾客到达间隔时间,另一组模拟顾客用机时间。由第一组产生的一个随机数代表当前到达存取款机的一位顾客。如:随机数的值为0.70,通过表2.2-1,可以确定所模拟的该顾客到达的时间与前一位顾客到达时的间隔时间为5分钟。由第二组产生的一个随机数代表正在使用存取款机的一位顾客。如:随机数的值为0.90,通过表2.2-2,可以确定所模拟的该顾客使用存取款机的时间为4分钟。4.手工模拟步骤与结果(假设模拟开始时间为0)顾客编号到达间隔随机数间隔时间用机时间随机数用机时间到达时间开始使用时间离开时间等待时间10.5740.502446020.0310.8945610130.9590.311141415040.3830.80317172005.1.3系统仿真的作用(1)仿真的过程也是实验的过程,而且还是系统地收集和积累信息的过程。尤其是对一些复杂的随机问题,应用仿真技术是提供所需信息的唯一令人满意的方法。(2)对一些难以建立物理模型和数学模型的对象系统,可通过仿真模型来顺利地解决预测、分析和评价等系统问题。(3)通过系统仿真,可以把一个复杂系统降阶成若干子系统以便分析。(4)通过系统仿真,能启发新的思想或产生新的策略,还能暴露出原系统中隐藏着的一些问题,以便及时解决。5.1.4系统仿真的方法1.计算机仿真的过程计算机仿真的三项基本要素是:系统、模型和计算机,三者之间的关系如图5-1所示。而联系这三个要素的基本活动是:模型设计、模型实现和仿真实验,仿真过程三项基本活动之间的关系如图5-2所示。系统模型计算机图5-1仿真三要素关系图图5-2仿真的三项基本活动对象系统模型设计仿真模型数学模型模型实现模拟电路软件编程仿真实验数据处理结果评估(1)建模阶段在这一阶段,通常是先分块建立子系统的模型。若为数学模型则需要进行模型变换,即把数学模型变为可以在仿真计算机上运行的模型,并对其进行初步的校验;若为物理模型,需要在功能与性能上覆盖系统的对应部分。然后根据系统的工作原理,将子系统的模型进一步集成为全系统的仿真实验模型。(2)模型加载阶段在这一阶段,利用仿真软件将仿真模型输入计算机。根据实验目的的制定实验计划和实验大纲,在计划和大纲的指导下,设计一个好的流程,选定待测量变量和相应的测量点,以及适合的测量仪表。(3)仿真实验阶段在这一阶段,转入模型运行,即进行仿真实验并记录结果。(4)结果分析阶段在这一阶段,需要对实验数据进行去粗取精、去伪存真的科学分析,并根据分析结果做出正确的判断和决策。实验的结果反映的是仿真模型系统的行为,这种行为能否代表实际系统的行为,由仿真用户或熟悉系统领域的专家来判定。如果得到认可,则可以转入文档处理,否则,需要返回建模和模型实验阶段查找原因,或修改模型结构和参数,或检查实验流程和实验方法,然后再进行实验,直到获得满意结果。2.仿真算法和仿真软件1)仿真算法(1)集中参数系统数字仿真算法(2)分布参数系统数字仿真算法(3)离散事件系统数字仿真算法2)仿真软件仿真软件可提供基本的功能元素,使仿真的编程工作大大简化,常见的有Automod、Witness、eM-Plant、Flexim、Racl等。3.仿真结果的处理根据流程运行结果,进行系统是否存在“瓶颈”,流程是否畅通,物流量是否能满足要求。如果结果不理想,要根据相应的原因,调整方案或者改变参数,直至满足物流系统的需求。5.2物流系统模型与计算机仿真软件5.2.1物流系统模型5.2.2计算机仿真软件5.2.1物流系统模型1.物流系统建模方法1)物流系统建模的原则(1)模型的研究目标要有针对性。(2)模型的层次逻辑要清晰明确。(3)模型选取的精度要适当可靠。(4)模型要保证仿真试验的可行性。(5)尽量使用标准模型和标准接口。2)物流系统建模的思路(1)对于结构与特性相对比较清楚的物流系统,比较容易建立精确数学模型进行系统描述。(2)对于结构比较清楚,而系统特性不太明确的物流系统,采用逻辑图方式建立模型。(3)对于结构与特性都不很清楚,且又不能直接进行实验观察的物流系统,采用数据统计分析方法进行建模。(4)当系统结构复杂、性质不太清楚、缺乏足够的数据,且无法进行实验观察时,采用定性定量的启发式方法及系统动力学方法等建模。2.常见物流系统模型1)典型库存系统模型确定性库存系统:解析方法;随机性库存系统:计算机仿真。库存控制中的基本经济订购批量模型EOQ:其中:-最佳订购批量;-该物资在T时间内的总需求量;-每批次物资订购费用;-单位物资存储费用;-特定的存储时间。RTQKQ/2*T*QRQK2)典型排队问题模型排队论是运筹学的一个分支,也被称为随机服务系统理论。排队论主要研究各种系统的排队队长、排队等待时间及所提供服务等参数,以便求得更好的服务。研究排队问题实质上就是研究如何平衡等待时间与服务台空闲时间,即如何确定一个排队系统,使服务台效率要高,实体等待时间又不太长。例:理发馆系统在研究理发馆系统时,我们不考虑如下情况:(1)理发馆的设备与工具;(2)理发师的个人行为(道德品质,技术高低);(3)顾客对发型的偏好等。我们关注的是:(1)理发馆的服务能力;(2)理发师的忙闲状况;(3)顾客拥挤程度(等待理发排队的顾客有多少)。我们的研究目的为:(1)分析系统运行状况;(2)找出系统运行的瓶颈;(3)改造系统结构。分析理发排队系统:(1)若增加理发师,则排队减少,获得服务的顾客会增多,理发馆收入会增加,但理发师工资成本也会增加;(2)若减少理发师,则排队严重,获得服务的顾客会减少,理发馆收入会减少,但理发师工资成本也会降低。由此产生了矛盾的两个方面:(1)增加服务能力,收入会增加但成本也会增加;(2)