系统动力学课 第五讲课件_第1页
系统动力学课 第五讲课件_第2页
系统动力学课 第五讲课件_第3页
系统动力学课 第五讲课件_第4页
系统动力学课 第五讲课件_第5页
已阅读5页,还剩177页未读 继续免费阅读

下载本文档

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

文档简介

Vensim建模基础江苏大学工商管理学院李文元Vensim建模基础江苏大学工商管理学院李文元Contents概述变量与方程延迟、平滑和平滑函数函数1234准确度与运行时间单位的选择5Contents概述变量与方程延迟、平滑和平滑函数函数1235.1概述DYNAMO,取名来自DynamicModels(动态模型)的混合缩写。顾名思义,DYNAMO命名的涵意在于建立真实系统的模型,藉助计算机进行系统结构、功能与动态行为的模拟。DYNAMO和系统动力学的关系,可追溯到50年代系统动力学发展的初期。DYNAMO的前身称SIMPLE(SimulationofIndustrialManagementProblemswithLotsofEquation)5.1概述DYNAMO,取名来自DynamicModel以库存系统为例,为简单起见,考虑输入、输出速率为常数的情况。假定每月发货与入库各为100与80件,则库存INV每月减少20件,其动态行为是线性的,以图形表示就是随时间变化的直线。可用数学式表达:

INV现在=INV过去十(时间间隔)x(纯速率)若库存量在5个月前为l200件,则:

INV现在=1200件+(5月)*(80件/月-100件/月)=1200+5*(-20)=1200-100=1100(件)5.1概述以库存系统为例,为简单起见,考虑输入、输出速率为常数的情况。5.1概述2022/11/195.1概述2022/11/115.1概述2022/11/195.1概述2022/11/115.1概述当速率随时间变化时,可以把连续的时间分割成小的时间间隔,并假定在各小间隔内速率是固定的,然后,藉助计算机逐段地一一加以计算。若计算的时间间隔足够小,速率变动不大,则此结果将与从微分方程获得的精确解(如果可能求得的话)十分接近。2022/11/195.1概述当速率随时间变化时,可以把连续的时间分割成小的时间5.1概述在DYNAMO中,给变量带上时间下标以区别在时间上的先后。英文字母K表示现在,J表示刚刚过去的那一时刻,L表示紧随当前的未来的那一时刻。DT表示J与K或K与L之间的时间长度。5.1概述在DYNAMO中,给变量带上时间下标以区别在时间上5.1概述库存方程可用DYNAMO表示如下:INV.K=INV.J+DT*(ORRE.JK-SH.JK)式中:

INV.K––––

库存现有量;INV.J––––DT前的库存量;DT––––

计算的时间间隔;ORRE––––

在JK间隔内收到的订货量SH––––

在JK间隔内的发货量。5.1概述库存方程可用DYNAMO表示如下:4.2变量与方程5.2.1变量总类在Vensim中有如下几种变量Levelvariable:状态变量,是最终决定系统行为的变量,随着时间变化,当前时刻的值等于过去时刻的值加上这一段时间的变化量。Ratevaviable:速率变量,是直接改变状态变量值的变量,反映状态变量输入或输出的速度,本质上和辅助变量没有区别。Auxiliaryvariable:辅助变量,辅助变量值有系统中其他变量计算获得,当前时刻的值和历史的值都是相互独立的2022/11/194.2变量与方程5.2.1变量总类2022/11/115.2变量与方程Constantvariable:常量,常量值不随时间变化Exogenousvariable:外生变量,随时间变化,但是这种变化不是系统中其他变量引起的。2022/11/195.2变量与方程Constantvariable:常量,常5.2变量与方程5.2.2变量方程(1)状态变量2022/11/19LvS(t)——是t时刻状态变量值rateS(t)——是该状态变量变化的速率5.2变量与方程5.2.2变量方程2022/11/11LvS5.2变量与方程如果写成离散的方程形式LEVEL.K=LEVEL.J+DT*(INFLOW.JK-OUTFLOW.JK)式中:

LEVEL––––

水平(状态)变量;INFLOW––––

输入速率(变化率);OUTFLOW––––

输出速率(变化率);DT––––

计算间隔(从J时刻到K时刻)。2022/11/195.2变量与方程如果写成离散的方程形式2022/11/115.2变量与方程2022/11/195.2变量与方程2022/11/115.2变量与方程2022/11/19式中:Pop为人口数量(人);births为出生率(人/年);deaths为死亡率(人/年);immigration为迁入率(人/年);emigration为迁出率(人/年)5.2变量与方程2022/11/11式中:Pop为人口数量(5.2变量与方程(2)速率变量2022/11/19rateS(t)是状态变量变化的速率;LvS(t)是t时刻状态变量值;aux(t),exo(t)分别是t时刻辅助变量和外生变量;const是常数5.2变量与方程(2)速率变量2022/11/11rateS4.2变量与方程Births和deaths表示每年出生和死亡的人口数量,有births=Pop(t)×BR;deaths=Pop(t)/AL式中:Pop为人口数量(人);births为出生率(人/年);deaths为死亡率(人/年);BR为出生率系数(1/年)AL为平均寿命(年)2022/11/194.2变量与方程Births和deaths表示每年出生和死亡5.2变量与方程(3)辅助方程辅助方程是在反馈系统中描述信息的运算方程2022/11/195.2变量与方程(3)辅助方程2022/11/115.2变量与方程2022/11/195.2变量与方程2022/11/115.2变量与方程5.2.3表函数模型中往往需要用辅助变量描述某些变量间的非线性关系,显然简单地由其它变量进行代数组合的辅助变量已不能胜任。比较方便是能够以图形方式给出这种非线性关系。Vensim建模中可以通过表函数(lookupfunction)来实现这一功能。2022/11/195.2变量与方程5.2.3表函数2022/11/115.2变量与方程建立表函数的步骤确定表函数中自变量和因变量明确变量的取值变化范围,通常通过历史数据和历史数据来确定考虑曲线的形状和斜率,在什么范围内事平缓的,什么范围内曲线坡度高,要符合自变量和因变量之间影响关系,其中正斜率表示正反馈,负斜率表示反馈选择合适的曲线端点、驻点、拐点等。做出图形,通常X轴表示自变量,Y轴表示因变量2022/11/195.2变量与方程建立表函数的步骤2022/11/115.2变量与方程Vensim中表函数的数学描述形式是lookupname2022/11/195.2变量与方程Vensim中表函数的数学描述形式是20225.2变量与方程考虑一个企业建设的例子。企业建设BC是变化率,方程如下:BC.KL=NCF*BS.K*ELBC.K

式中:BC——

企业建设(个/年);NCF——

额定建设系数(1/年);

BS——

企业(个);ELBC——

土地对企业建设的影响(无量纲)。2022/11/195.2变量与方程考虑一个企业建设的例子。企业建设BC是变化率5.2变量与方程讨论辅助变量ELBC方程的建立问题。假定,ELBC为土地占用系数LF0的函数,LFO变化范围为从零至1。当LPO=0时,表示土地未被占用,LFO=1则表示土地被全部占用。ELBC与LFO的非线性关系,可用图表表示。5.2变量与方程讨论辅助变量ELBC方程的建立问题。5.2变量与方程LPO=0,土地未被占用LFO=1,土地被全部占用5.2变量与方程LPO=0,土地未被占用5.3延迟、平滑和平滑函数系统动力学模型中包含的物质流与信息流可能存在延迟。在现实生活中,延迟的现象比比皆是:厂家向顾客交付订货;感染-潜伏期-病症;播种与收获;投资与回报;。。。。延迟是信息反馈系统结构中颇为重要的一个角色。2022/11/195.3延迟、平滑和平滑函数系统动力学模型中包含的物质流与信息5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数加入的新状态变量为处于潜伏期人口INC,其输入速率是感染率INF,输出速率是疾病症候显现率SYMP,有方程组如下:

INC(t0)=TSS*INF(t0)SYMP(t)=INC(t)/TSS式中TSS为潜伏期,比如流感的潜伏期为3天。2022/11/195.3延迟、平滑和平滑函数加入的新状态变量为处于潜伏期人口I5.3延迟、平滑和平滑函数上述方程式可用Vensim中的DELAYl函数代替,功能相同,但简明方便得多(可以取消INC变量,即INC为隐含水平变量)SYMP(t)=DELAYl(INF(t),TSS)2022/11/195.3延迟、平滑和平滑函数上述方程式可用Vensim中的DE5.3延迟、平滑和平滑函数(1)DELAY1:一阶延迟DELAY1是指一阶物质延迟。它隐含了一个状态变量(INC)。以DELAY1替代一组方程,使用方便,缺点是该状态变量被隐含,不能输出的它的结果。2022/11/19DELAY1(INF,TSS)5.3延迟、平滑和平滑函数(1)DELAY1:一阶延迟2025.3延迟、平滑和平滑函数(2)DELAY1I:一阶延迟DELAY1I形式是DELAY1I({in},{dtime},{init}),含义是DELAY1I(input,delaytime,initialvalue)DELAY1I=LV(t)/DT2022/11/19式中:IV和DT分别表示initialvalue和delaytime5.3延迟、平滑和平滑函数(2)DELAY1I:一阶延迟25.3延迟、平滑和平滑函数如果式中IV等于input初始值,则DELAY1I就简化为DELAY1,形式为DELAY1(input,delaytime)此时,系统自动根据上面的方程组计算出LV的初始值,使输入input和延迟输出DELAY1相等。2022/11/195.3延迟、平滑和平滑函数如果式中IV等于input初始值,5.3延迟、平滑和平滑函数(3)三阶延迟2022/11/19DELAY3(INF,TSS)5.3延迟、平滑和平滑函数(3)三阶延迟2022/11/115.3延迟、平滑和平滑函数DELAY3I形式是DELAY1I({in},{dtime},{init}),含义是DELAY3I(input,delaytime,initialvalue)反映的方程组为:DL=delaytime/32022/11/195.3延迟、平滑和平滑函数DELAY3I形式是DELAY1I5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数如果式中IV等于input初始值,则DELAY3I就简化为DELAY3,形式为DELAY3(input,delaytime)2022/11/195.3延迟、平滑和平滑函数如果式中IV等于input初始值,5.3延迟、平滑和平滑函数(4)DELAYFIXEDDELAYFIXED函数是DELAYFIXED({in},{dtime},{init})。这个函数的作用是将input值延迟一段时间后等值输出,在延迟这一段时间内输出initialvalue.这里的delaytime可以是一个表达式,但必须满足在0时刻能计算出初值。2022/11/195.3延迟、平滑和平滑函数(4)DELAYFIXED2025.3延迟、平滑和平滑函数对于DELAYFIXED函数只可以在其内部建立表达式,但是其本身不可以作为表达式的一部分,不可以与其他表达式共同构成更大的表达式。D=DELAYFIXED(B,T,B)+1:错误DM=DELAYFIXED(MAX(A,B),C,A)正确2022/11/195.3延迟、平滑和平滑函数对于DELAYFIXED函数只可5.3延迟、平滑和平滑函数2022/11/19平均延迟时间averagedelaytime=305.3延迟、平滑和平滑函数2022/11/11平均延迟时间a5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/11物质延迟的阶次阶次的含义在延迟结构中,指的是延迟环节内部包含的水平变量数。下图给出了不同阶次延迟环节的输入量发生突变时,(即为阶跃输入时),其相应的输出量的曲线。这是一簇曲线,包括1,2,3,6和12阶延迟的响应。曲线簇表明,l阶与3阶的延迟特性彼此差别很大。1阶延迟表现出简单的指数形增长的特性,2阶延迟开始表现出S形增长特性,3阶时的S形增长特性已较明显,6阶与12阶的S形增长特性也就更加突出了。随着阶数的增加,延迟环节的响应的增长模式本质相同,其错开程度取决于延迟时间。显而易见,l阶与3阶的曲线差别很大,增长模式全然不同,但3阶曲线与6阶甚至12阶曲线相比则无本质差别,只是程度上差异而已,同样是S形模式。因此,vensim中仅备有DELAYl与DELAY3函数,而无更高阶次的单个函数。物质延迟的阶次阶次的含义在延迟结构中,指的是延迟环节内部包含5.3延迟、平滑和平滑函数5.3.2平滑函数与信息平滑与物质在系统中流动存在延迟类似,信息在系统中传递也存在延迟。商品信息的传递一般都带有延迟的特性。这种信息传递的延迟,往往是系统结构中不可避免的组成部分。平均或平滑信息导致延迟。系统动力学中描述信息的延迟可用平滑函数。2022/11/195.3延迟、平滑和平滑函数5.3.2平滑函数与信息平滑2025.3延迟、平滑和平滑函数以生产经营管理中的现象为例,企业领导人决不会认定某日销售额突增的信息作为长远的趋势,把它作为库存、生产安排与招工等问题决策的依据。决策者总是力图从销售信息中排除随机的因素,找出真实的趋势。换言之,对销售信息应求其在一段期间内的平均值。这种“平均”与“平滑”的处理方式在系统动力学的模型中屡见不鲜。Vensim提供这一功能的函数称为平滑。信息的平滑或平均实质上是一种积累过程。它们可以包含一个或多个水平变量。2022/11/195.3延迟、平滑和平滑函数以生产经营管理中的现象为例,企业领5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数在Vensim中,用SMOOTH函数可以表示上述方程组2022/11/195.3延迟、平滑和平滑函数在Vensim中,用SMOOTH函5.3延迟、平滑和平滑函数被平滑的变量可以是水平、速率和辅助变量。平滑时间STIME通常为常数,但也可以是变量。直观地看,平滑时间系指变量VAR经积累达到指数加权滑动平均值所需的时间。2022/11/195.3延迟、平滑和平滑函数被平滑的变量可以是水平、速率和辅助平滑函数对输入量的响应持性若变量VAR为阶跃函数(突增后保持恒定),其平滑值SVAR将渐渐趋于此恒定值。若VAR是一个脉冲,SVAR不能达到VAR的幅值,并按另一指数式的寻的特性下降。若VAR是一振荡的输入量,其平滑值SVAR亦将随着振荡,但幅值要小得多。因此平滑函数具有平滑原变量的激烈起伏功能。经平滑得到的平均值正是所期望的真实趋势。平滑函数对输入量的响应持性若变量VAR为阶跃函数(突增后保持5.3延迟、平滑和平滑函数5.3.3信息延迟(1)一阶信息延迟函数SMOOTHISMOOTHI的函数形式是SMOOTHI({in},{stime},{inival})含义是SMOOTHI(input,delaytime,initialvalue)2022/11/195.3延迟、平滑和平滑函数5.3.3信息延迟2022/11/5.3延迟、平滑和平滑函数方程组是2022/11/195.3延迟、平滑和平滑函数方程组是2022/11/115.3延迟、平滑和平滑函数(2)三阶信息延迟函数SMOOTH3ISMOOTHI的函数形式是SMOOTH3I({in},{stime},{inival})含义是SMOOTH3I(input,delaytime,initialvalue)2022/11/195.3延迟、平滑和平滑函数(2)三阶信息延迟函数SMOOTH5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.4函数5.4.1数学函数2022/11/195.4函数5.4.1数学函数2022/11/115.4函数2022/11/195.4函数2022/11/115.4函数2022/11/195.4函数2022/11/115.4函数5.4.2逻辑函数(1)MAX(A,B)取A,B中较大者(2)MIN(A,B)取A,B中较小者2022/11/195.4函数5.4.2逻辑函数2022/11/115.4函数(3)条件函数IFTHENELSE({cond},{ontrue},{onfalse})=2022/11/195.4函数(3)条件函数2022/11/115.4函数5.4.3测试函数2022/11/195.4函数5.4.3测试函数2022/11/115.4函数方程发货率SHIP=正常发货率NSHIP+测试函数输入值TEST发货率平滑时间TAS=2平均发货率AVSHIP=SMOOTH(发货率SHIP,发货率平滑时间TAS)库存INV=INTEG(订货率ORDERS-发货率SHIP,300)库存调节时间LAT=22022/11/195.4函数方程2022/11/115.4函数库存调节率INVADJ=(期望库存DSINV-库存INV)/库存调节时间LAT延迟时间DEL=3期望库存DSINV=期望库存覆盖时间DIC*正常发货率NSHIP期望库存覆盖时间DIC=3正常发货率NSHIP=100测试函数输入值TEST=STEP(10,2)订货率ORDERS=DELAY3(平均发货率AVSHIP+库存调节率INVADJ,延迟时间DEL)2022/11/195.4函数库存调节率INVADJ=(期望库存DSINV-库存5.4函数(1)阶跃函数阶跃函数是幅值在特定时刻发生突变的函数,常被用来突然改变变量数值STEP({height},{stime})Height表示阶跃的幅度,stime表示阶跃发生的时刻。在时刻steptime前STEP函数值是0;当时间等于或大于steptime时,STEP的值等于height2022/11/195.4函数(1)阶跃函数2022/11/115.4函数2022/11/19发货率SHIP的正常值NSHIP为100件/周,阶跃函数于第2周(STRT=2),由0突增加10件/周,使SHIP增加了10%,达110件/周并保持不变。虚线为发货率SHIP随时间变化曲线;实线为库存INV相应的变化特性。当发货率突增10%后,库存量从期望值DSINV300件,迅速下降,与此同时,订货率ORDRS增加,以补充库存的减少。然而从订货到厂家交货存在延迟(模型中设定为平均3周),所以库存量继续下降,大约到第6周达谷底;之后才回升。由于整个系统存在延迟环节与负反馈的调节作用,库存量呈现为围绕其期望值衰减振荡特性。5.4函数2022/11/11发货率SHIP的正常值NSHI5.4函数(2)斜坡函数斜坡函数是一种连续增长或下降的时间的线性函数,其形式是RAMP({slope},{start},{finish})式中:slope表示线性函数的斜率,start表示斜坡函数的起始时刻,finish表示函数结束的时刻,在star时刻前,ramp函数值取0,在start时刻到finish时刻之间,RAMP=slop*(time-start);在finish时刻后,RAMP=slop*(finish-start)2022/11/195.4函数(2)斜坡函数2022/11/115.4函数Test=RAMP(20,2,25)RAMP函数代表对发货率线性增长的需求。INV几乎跌落至0,但对发货率无任何影响。可以预料,若斜坡函数的斜率值再大些,INV将出现负值。显然这是不合理的。在现实生活中,库存INV的下降情况需对发货率SHIP施加负反馈的信息,这一点在此简化库存模型中未予考虑2022/11/195.4函数Test=RAMP(20,2,25)2025.4函数(3)脉冲函数脉冲函数提供瞬时冲击的方法,在现实生活中描述变量的独立变化现象,也就是变量在每一次变动后回复原值。两种脉冲函数:PULSE({start},{duration})PULSETRAIN({start},{duration},{repeattime},{end})2022/11/195.4函数(3)脉冲函数2022/11/115.4函数PULSE({start},{duration})是一个单脉冲函数,函数值在(start,start+duration)时间内等于1,其他时刻为0.PULSE(2,0.25)*102022/11/195.4函数PULSE({start},{duratio5.4函数PULSE(2,0.5)*102022/11/195.4函数PULSE(2,0.5)*102022/11/5.4函数2022/11/195.4函数2022/11/115.4函数PULSETRAIN({start},{duration},{repeattime},{end})是一个周期性脉冲函数,脉冲从时刻start开始,函数值为1,延续时间为duration,然后再start+repeattime时刻重复一次前面的脉冲,这样周期性脉冲直到end时刻结束,相邻两个脉冲的时间间隔为repeattime,在脉冲时间之外函数值均为0,需要注意的是,如果repeattime时间小于duration,则脉冲会从start一直持续到end。如果duration小于时间步长,则按1个步长计算Test=PULSETRAIN(2,0.25,5,25)*102022/11/195.4函数PULSETRAIN({start},{d5.4函数2022/11/195.4函数2022/11/115.4函数(4)正弦函数正弦函数可用来测试模型对于振荡(比如正弦)输入变量的响应。正弦函数的DYNAMO表达式为:

A*SIN(6.283*TIME/B)式中:

A——

振荡幅度;

B——

振荡周期;6.283——2pi(pi为圆周率)。2022/11/195.4函数(4)正弦函数2022/11/115.4函数2022/11/19TEST=AMP*SIN(6.283*TIME/PER)AMP=10PER=5(左图)5.4函数2022/11/11TEST=AMP*SIN(5.4函数2022/11/19TEST=AMP*SIN(6.283*TIME/PER)AMP=10PER=105.4函数2022/11/11TEST=AMP*SIN(2022/11/192022/11/115.4函数(5)正态分布函数RANDOMNORMAL({min},{max},{mean},{stdev},{seed})Seed是噪声的种子,通过它可以得到不同的随机数,当他为0时,将采用系统默认的种子2022/11/195.4函数(5)正态分布函数2022/11/11RANDOMNORMAL(-10,10,0,1,0)2022/11/19RANDOMNORMAL(-10,10,0,1,RANDOMNORMAL(-10,10,0,2,0)2022/11/19RANDOMNORMAL(-10,10,0,2,2022/11/192022/11/115.5准确度与运行时间选择计算间隔DT的取值对计算结果究竟有多大影响?离散数值模拟的结果与连续函数的解析解有多大误差?抛开计算机计算准确度的理论问题,可以从实例出发加以比较。2022/11/195.5准确度与运行时间选择计算间隔DT的取值对计算结果究竟有5.5准确度与运行时间选择2022/11/195.5准确度与运行时间选择2022/11/115.5准确度与运行时间选择2022/11/195.5准确度与运行时间选择2022/11/115.5准确度与运行时间选择2022/11/195.5准确度与运行时间选择2022/11/115.5准确度与运行时间选择取timestep分别为0.125、0.5、1、5运行结果2022/11/195.5准确度与运行时间选择取timestep分别为0.122022/11/192022/11/115.5准确度与运行时间选择2022/11/195.5准确度与运行时间选择2022/11/115.5准确度与运行时间选择当DT<1时,计算相对误差小于8%;DT=5时相对误差大于55%,显然DT值取得太大了。第一步计算后TEA就降至室温200C和TEA变比的真实过程大相径庭,根本无法描述茶水的降温过程2022/11/195.5准确度与运行时间选择当DT<1时,计算相对误差小于8%5.5准确度与运行时间选择可见选用合适的计算间隔DT值是颇为重要的,不合理的DT值(过大或过小)特使计算机模拟失去意义。选择DT的经验法则是,取其值为(0.1~0.5)倍的模型最小时间常数。取小于0.5倍可防止出现不合理的计算结果。但若取小于0.1倍则对于计算的准确度提高不大,且需耗费大量的计算机时。以茶水冷却模型而言,模型的最小时间常数为1/CONST=1/0.2=5,故可取DT为:

DT=(0.1~0.5)*5=0.5~2.5(分钟)2022/11/195.5准确度与运行时间选择可见选用合适的计算间隔DT值是颇为CompanyLogoThankYou!YourCompanySloganCompanyLoVensim建模基础江苏大学工商管理学院李文元Vensim建模基础江苏大学工商管理学院李文元Contents概述变量与方程延迟、平滑和平滑函数函数1234准确度与运行时间单位的选择5Contents概述变量与方程延迟、平滑和平滑函数函数1235.1概述DYNAMO,取名来自DynamicModels(动态模型)的混合缩写。顾名思义,DYNAMO命名的涵意在于建立真实系统的模型,藉助计算机进行系统结构、功能与动态行为的模拟。DYNAMO和系统动力学的关系,可追溯到50年代系统动力学发展的初期。DYNAMO的前身称SIMPLE(SimulationofIndustrialManagementProblemswithLotsofEquation)5.1概述DYNAMO,取名来自DynamicModel以库存系统为例,为简单起见,考虑输入、输出速率为常数的情况。假定每月发货与入库各为100与80件,则库存INV每月减少20件,其动态行为是线性的,以图形表示就是随时间变化的直线。可用数学式表达:

INV现在=INV过去十(时间间隔)x(纯速率)若库存量在5个月前为l200件,则:

INV现在=1200件+(5月)*(80件/月-100件/月)=1200+5*(-20)=1200-100=1100(件)5.1概述以库存系统为例,为简单起见,考虑输入、输出速率为常数的情况。5.1概述2022/11/195.1概述2022/11/115.1概述2022/11/195.1概述2022/11/115.1概述当速率随时间变化时,可以把连续的时间分割成小的时间间隔,并假定在各小间隔内速率是固定的,然后,藉助计算机逐段地一一加以计算。若计算的时间间隔足够小,速率变动不大,则此结果将与从微分方程获得的精确解(如果可能求得的话)十分接近。2022/11/195.1概述当速率随时间变化时,可以把连续的时间分割成小的时间5.1概述在DYNAMO中,给变量带上时间下标以区别在时间上的先后。英文字母K表示现在,J表示刚刚过去的那一时刻,L表示紧随当前的未来的那一时刻。DT表示J与K或K与L之间的时间长度。5.1概述在DYNAMO中,给变量带上时间下标以区别在时间上5.1概述库存方程可用DYNAMO表示如下:INV.K=INV.J+DT*(ORRE.JK-SH.JK)式中:

INV.K––––

库存现有量;INV.J––––DT前的库存量;DT––––

计算的时间间隔;ORRE––––

在JK间隔内收到的订货量SH––––

在JK间隔内的发货量。5.1概述库存方程可用DYNAMO表示如下:4.2变量与方程5.2.1变量总类在Vensim中有如下几种变量Levelvariable:状态变量,是最终决定系统行为的变量,随着时间变化,当前时刻的值等于过去时刻的值加上这一段时间的变化量。Ratevaviable:速率变量,是直接改变状态变量值的变量,反映状态变量输入或输出的速度,本质上和辅助变量没有区别。Auxiliaryvariable:辅助变量,辅助变量值有系统中其他变量计算获得,当前时刻的值和历史的值都是相互独立的2022/11/194.2变量与方程5.2.1变量总类2022/11/115.2变量与方程Constantvariable:常量,常量值不随时间变化Exogenousvariable:外生变量,随时间变化,但是这种变化不是系统中其他变量引起的。2022/11/195.2变量与方程Constantvariable:常量,常5.2变量与方程5.2.2变量方程(1)状态变量2022/11/19LvS(t)——是t时刻状态变量值rateS(t)——是该状态变量变化的速率5.2变量与方程5.2.2变量方程2022/11/11LvS5.2变量与方程如果写成离散的方程形式LEVEL.K=LEVEL.J+DT*(INFLOW.JK-OUTFLOW.JK)式中:

LEVEL––––

水平(状态)变量;INFLOW––––

输入速率(变化率);OUTFLOW––––

输出速率(变化率);DT––––

计算间隔(从J时刻到K时刻)。2022/11/195.2变量与方程如果写成离散的方程形式2022/11/115.2变量与方程2022/11/195.2变量与方程2022/11/115.2变量与方程2022/11/19式中:Pop为人口数量(人);births为出生率(人/年);deaths为死亡率(人/年);immigration为迁入率(人/年);emigration为迁出率(人/年)5.2变量与方程2022/11/11式中:Pop为人口数量(5.2变量与方程(2)速率变量2022/11/19rateS(t)是状态变量变化的速率;LvS(t)是t时刻状态变量值;aux(t),exo(t)分别是t时刻辅助变量和外生变量;const是常数5.2变量与方程(2)速率变量2022/11/11rateS4.2变量与方程Births和deaths表示每年出生和死亡的人口数量,有births=Pop(t)×BR;deaths=Pop(t)/AL式中:Pop为人口数量(人);births为出生率(人/年);deaths为死亡率(人/年);BR为出生率系数(1/年)AL为平均寿命(年)2022/11/194.2变量与方程Births和deaths表示每年出生和死亡5.2变量与方程(3)辅助方程辅助方程是在反馈系统中描述信息的运算方程2022/11/195.2变量与方程(3)辅助方程2022/11/115.2变量与方程2022/11/195.2变量与方程2022/11/115.2变量与方程5.2.3表函数模型中往往需要用辅助变量描述某些变量间的非线性关系,显然简单地由其它变量进行代数组合的辅助变量已不能胜任。比较方便是能够以图形方式给出这种非线性关系。Vensim建模中可以通过表函数(lookupfunction)来实现这一功能。2022/11/195.2变量与方程5.2.3表函数2022/11/115.2变量与方程建立表函数的步骤确定表函数中自变量和因变量明确变量的取值变化范围,通常通过历史数据和历史数据来确定考虑曲线的形状和斜率,在什么范围内事平缓的,什么范围内曲线坡度高,要符合自变量和因变量之间影响关系,其中正斜率表示正反馈,负斜率表示反馈选择合适的曲线端点、驻点、拐点等。做出图形,通常X轴表示自变量,Y轴表示因变量2022/11/195.2变量与方程建立表函数的步骤2022/11/115.2变量与方程Vensim中表函数的数学描述形式是lookupname2022/11/195.2变量与方程Vensim中表函数的数学描述形式是20225.2变量与方程考虑一个企业建设的例子。企业建设BC是变化率,方程如下:BC.KL=NCF*BS.K*ELBC.K

式中:BC——

企业建设(个/年);NCF——

额定建设系数(1/年);

BS——

企业(个);ELBC——

土地对企业建设的影响(无量纲)。2022/11/195.2变量与方程考虑一个企业建设的例子。企业建设BC是变化率5.2变量与方程讨论辅助变量ELBC方程的建立问题。假定,ELBC为土地占用系数LF0的函数,LFO变化范围为从零至1。当LPO=0时,表示土地未被占用,LFO=1则表示土地被全部占用。ELBC与LFO的非线性关系,可用图表表示。5.2变量与方程讨论辅助变量ELBC方程的建立问题。5.2变量与方程LPO=0,土地未被占用LFO=1,土地被全部占用5.2变量与方程LPO=0,土地未被占用5.3延迟、平滑和平滑函数系统动力学模型中包含的物质流与信息流可能存在延迟。在现实生活中,延迟的现象比比皆是:厂家向顾客交付订货;感染-潜伏期-病症;播种与收获;投资与回报;。。。。延迟是信息反馈系统结构中颇为重要的一个角色。2022/11/195.3延迟、平滑和平滑函数系统动力学模型中包含的物质流与信息5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数加入的新状态变量为处于潜伏期人口INC,其输入速率是感染率INF,输出速率是疾病症候显现率SYMP,有方程组如下:

INC(t0)=TSS*INF(t0)SYMP(t)=INC(t)/TSS式中TSS为潜伏期,比如流感的潜伏期为3天。2022/11/195.3延迟、平滑和平滑函数加入的新状态变量为处于潜伏期人口I5.3延迟、平滑和平滑函数上述方程式可用Vensim中的DELAYl函数代替,功能相同,但简明方便得多(可以取消INC变量,即INC为隐含水平变量)SYMP(t)=DELAYl(INF(t),TSS)2022/11/195.3延迟、平滑和平滑函数上述方程式可用Vensim中的DE5.3延迟、平滑和平滑函数(1)DELAY1:一阶延迟DELAY1是指一阶物质延迟。它隐含了一个状态变量(INC)。以DELAY1替代一组方程,使用方便,缺点是该状态变量被隐含,不能输出的它的结果。2022/11/19DELAY1(INF,TSS)5.3延迟、平滑和平滑函数(1)DELAY1:一阶延迟2025.3延迟、平滑和平滑函数(2)DELAY1I:一阶延迟DELAY1I形式是DELAY1I({in},{dtime},{init}),含义是DELAY1I(input,delaytime,initialvalue)DELAY1I=LV(t)/DT2022/11/19式中:IV和DT分别表示initialvalue和delaytime5.3延迟、平滑和平滑函数(2)DELAY1I:一阶延迟25.3延迟、平滑和平滑函数如果式中IV等于input初始值,则DELAY1I就简化为DELAY1,形式为DELAY1(input,delaytime)此时,系统自动根据上面的方程组计算出LV的初始值,使输入input和延迟输出DELAY1相等。2022/11/195.3延迟、平滑和平滑函数如果式中IV等于input初始值,5.3延迟、平滑和平滑函数(3)三阶延迟2022/11/19DELAY3(INF,TSS)5.3延迟、平滑和平滑函数(3)三阶延迟2022/11/115.3延迟、平滑和平滑函数DELAY3I形式是DELAY1I({in},{dtime},{init}),含义是DELAY3I(input,delaytime,initialvalue)反映的方程组为:DL=delaytime/32022/11/195.3延迟、平滑和平滑函数DELAY3I形式是DELAY1I5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数如果式中IV等于input初始值,则DELAY3I就简化为DELAY3,形式为DELAY3(input,delaytime)2022/11/195.3延迟、平滑和平滑函数如果式中IV等于input初始值,5.3延迟、平滑和平滑函数(4)DELAYFIXEDDELAYFIXED函数是DELAYFIXED({in},{dtime},{init})。这个函数的作用是将input值延迟一段时间后等值输出,在延迟这一段时间内输出initialvalue.这里的delaytime可以是一个表达式,但必须满足在0时刻能计算出初值。2022/11/195.3延迟、平滑和平滑函数(4)DELAYFIXED2025.3延迟、平滑和平滑函数对于DELAYFIXED函数只可以在其内部建立表达式,但是其本身不可以作为表达式的一部分,不可以与其他表达式共同构成更大的表达式。D=DELAYFIXED(B,T,B)+1:错误DM=DELAYFIXED(MAX(A,B),C,A)正确2022/11/195.3延迟、平滑和平滑函数对于DELAYFIXED函数只可5.3延迟、平滑和平滑函数2022/11/19平均延迟时间averagedelaytime=305.3延迟、平滑和平滑函数2022/11/11平均延迟时间a5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/11物质延迟的阶次阶次的含义在延迟结构中,指的是延迟环节内部包含的水平变量数。下图给出了不同阶次延迟环节的输入量发生突变时,(即为阶跃输入时),其相应的输出量的曲线。这是一簇曲线,包括1,2,3,6和12阶延迟的响应。曲线簇表明,l阶与3阶的延迟特性彼此差别很大。1阶延迟表现出简单的指数形增长的特性,2阶延迟开始表现出S形增长特性,3阶时的S形增长特性已较明显,6阶与12阶的S形增长特性也就更加突出了。随着阶数的增加,延迟环节的响应的增长模式本质相同,其错开程度取决于延迟时间。显而易见,l阶与3阶的曲线差别很大,增长模式全然不同,但3阶曲线与6阶甚至12阶曲线相比则无本质差别,只是程度上差异而已,同样是S形模式。因此,vensim中仅备有DELAYl与DELAY3函数,而无更高阶次的单个函数。物质延迟的阶次阶次的含义在延迟结构中,指的是延迟环节内部包含5.3延迟、平滑和平滑函数5.3.2平滑函数与信息平滑与物质在系统中流动存在延迟类似,信息在系统中传递也存在延迟。商品信息的传递一般都带有延迟的特性。这种信息传递的延迟,往往是系统结构中不可避免的组成部分。平均或平滑信息导致延迟。系统动力学中描述信息的延迟可用平滑函数。2022/11/195.3延迟、平滑和平滑函数5.3.2平滑函数与信息平滑2025.3延迟、平滑和平滑函数以生产经营管理中的现象为例,企业领导人决不会认定某日销售额突增的信息作为长远的趋势,把它作为库存、生产安排与招工等问题决策的依据。决策者总是力图从销售信息中排除随机的因素,找出真实的趋势。换言之,对销售信息应求其在一段期间内的平均值。这种“平均”与“平滑”的处理方式在系统动力学的模型中屡见不鲜。Vensim提供这一功能的函数称为平滑。信息的平滑或平均实质上是一种积累过程。它们可以包含一个或多个水平变量。2022/11/195.3延迟、平滑和平滑函数以生产经营管理中的现象为例,企业领5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.3延迟、平滑和平滑函数在Vensim中,用SMOOTH函数可以表示上述方程组2022/11/195.3延迟、平滑和平滑函数在Vensim中,用SMOOTH函5.3延迟、平滑和平滑函数被平滑的变量可以是水平、速率和辅助变量。平滑时间STIME通常为常数,但也可以是变量。直观地看,平滑时间系指变量VAR经积累达到指数加权滑动平均值所需的时间。2022/11/195.3延迟、平滑和平滑函数被平滑的变量可以是水平、速率和辅助平滑函数对输入量的响应持性若变量VAR为阶跃函数(突增后保持恒定),其平滑值SVAR将渐渐趋于此恒定值。若VAR是一个脉冲,SVAR不能达到VAR的幅值,并按另一指数式的寻的特性下降。若VAR是一振荡的输入量,其平滑值SVAR亦将随着振荡,但幅值要小得多。因此平滑函数具有平滑原变量的激烈起伏功能。经平滑得到的平均值正是所期望的真实趋势。平滑函数对输入量的响应持性若变量VAR为阶跃函数(突增后保持5.3延迟、平滑和平滑函数5.3.3信息延迟(1)一阶信息延迟函数SMOOTHISMOOTHI的函数形式是SMOOTHI({in},{stime},{inival})含义是SMOOTHI(input,delaytime,initialvalue)2022/11/195.3延迟、平滑和平滑函数5.3.3信息延迟2022/11/5.3延迟、平滑和平滑函数方程组是2022/11/195.3延迟、平滑和平滑函数方程组是2022/11/115.3延迟、平滑和平滑函数(2)三阶信息延迟函数SMOOTH3ISMOOTHI的函数形式是SMOOTH3I({in},{stime},{inival})含义是SMOOTH3I(input,delaytime,initialvalue)2022/11/195.3延迟、平滑和平滑函数(2)三阶信息延迟函数SMOOTH5.3延迟、平滑和平滑函数2022/11/195.3延迟、平滑和平滑函数2022/11/115.4函数5.4.1数学函数2022/11/195.4函数5.4.1数学函数2022/11/115.4函数2022/11/195.4函数2022/11/115.4函数2022/11/195.4函数2022/11/115.4函数5.4.2逻辑函数(1)MAX(A,B)取A,B中较大者(2)MIN(A,B)取A,B中较小者2022/11/195.4函数5.4.2逻辑函数2022/11/115.4函数(3)条件函数IFTHENELSE({cond},{ontrue},{onfalse})=2022/11/195.4函数(3)条件函数2022/11/115.4函数5.4.3测试函数2022/11/195.4函数5.4.3测试函数2022/11/115.4函数方程发货率SHIP=正常发货率NSHIP+测试函数输入值TEST发货率平滑时间TAS=2平均发货率AVSHIP=SMOOTH(发货率SHIP,发货率平滑时间TAS)库存INV=INTEG(订货率ORDERS-发货率SHIP,300)库存调节时间LAT=22022/11/195.4函数方程2022/11/115.4函数库存调节率INVADJ=(期望库存DSINV-库存INV)/库存调节时间LAT延迟时间DEL=3期望库存DSINV=期望库存覆盖时间DIC*正常发货率NSHIP期望库存覆盖时间DIC=3正常发货率NSHIP=100测试函数输入值TEST=STEP(10,2)订货率ORDERS=DELAY3(平均发货率AVSHIP+库存调节率INVADJ,延迟时间DEL)2022/11/195.4函数库存调节率INVADJ=(期望库存DSINV-库存5.4函数(1)阶跃函数阶跃函数是幅值在特定时刻发生突变的函数,常被用来突然改变变量数值STEP({height},{stime})Height表示阶跃的幅度,stime表示阶跃发生的时刻。在时刻steptime前STEP函数值是0;当时间等于或大于steptime时,STEP的值等于height2022/11/195.4函数(1)阶跃函数2022/11/115.4函数2022/11/19发货率SHIP的正常值NSHIP为100件/周,阶跃函数于第2周(STRT=2),由0突增加10件/周,使SHIP增加了10%,达110件/周并保持不变。虚线为发货率SHIP随时间变化曲线;实线为库存INV相应的变化特性。当发货率突增10%后,库存量从期望值DSINV300件,迅速下降,与此同时,订货率ORDRS增加,以补充库存的减少。然而从订货到厂家交货存在延迟(模型中设定为平均3周),所以库存量继续下降,大约到第6周达谷底;之后才回升。由于整个系统存在延迟环节与负反馈的调节作用,库存量呈现为围绕其期望值衰减振荡特性。5.4函数2022/11/11发货率SHIP的正常值NSHI5.4函数(2)斜坡函数斜坡函数是一种连续增长或下降的时间的线性函数,其形式是RAMP({slope},{start},{finish})式中:slope表示线性函数的斜率,start表示斜坡函数的起始时刻,finish表示函数结束的时刻,在star时刻前,ramp函数值取0,在start时刻到finish时刻之间,RAMP=slop*(time-start);在finish时刻后,RAMP=slop*(finish-start)2022/11/195.4函数(2)斜坡函数2022/11/115.4函数Test=RAMP(20,2,25)RAMP函数代表对发货率线性增长的需求。INV几乎跌落至0,但对发货率无任何影响。可以预料,若斜坡函数的斜率值再大些,INV将出现负值。显然这是不合理的。在现实生活中,库存INV的下降情况需对发货率SHIP施加负反馈的信息,这一点在此简化库存模型中未予考虑2022/11/195.4函数Test=RAMP(20,2,25)2025.4函数(3)脉冲函数脉冲函数提供瞬时冲击的方法,在现实生活中描述变量的独立变化现象,也就是变量在每一次变动后回复原值。两种脉冲函数:PULSE({start},{duration})PULSETRAIN({start},{dur

温馨提示

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

评论

0/150

提交评论