离散系统仿真与优化——面向工业工程的应用Chapter 2 - 离散事件系统仿真原理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1—2—3—4—5—6
header _ ptr 1
Q(1) (CUS1, 2.3) Q(2) (CUS 2, 2.8) Q(3) (CUS 3, 3.6) Q(4) (CUS 4, 3.9) Q(5) (CUS 5, 6.2) Q(6) (CUS 6, 6.6) Q(7) (CUS 7, 0.0) Q(8) (CUS8, 0.0) Q(9) (CUS 9, 0.0) Q(10) (CUS10, 0.0)
• 由众多实体(entity)构成,例如顾客或者机器设备,实体之间相互作用、相互影响,系统状 态随时间变化而可能发生变化,往往具有某种目的和目标
• 模型是对现实世界系统(real world system)的逻辑抽象,模型在结构、逻辑、数学关系描 述等方面与现实系统保持基本的一致(不一定完全一致,依赖于所研究的问题),模型所包 含的指标和内容有:系统状态、实体及其属性、集合、处理过程、事件、活动和时间延迟
• 事件发生是有时间顺序的,事件调度就是按照事件发生的时刻(instant)顺序,建立未来事 件列表(future event list,FEL),仿真时钟(simulation clock)仅按照事件列表中的事件 时刻推进,跳过那些没有事件和活动(activity)发生的时间段(duration)
顾客到达 A1
A2
A3
顾客离开
D1
时刻 t
0
2.9 3.7
6.1
事件
eA1
eA2
eD1
eA3
FEL (eA2 , eD1)
(eA3,
eD
)
2
(eD1, eA3)
D2
11.2
eD 2
例2.1 银行系统的事件调度和未来事件列表
Time
• 模型内部活动所引起的状态变化而产生的事件,源于系统内部行为,不受系统外因素的影响 • 例如,顾客离去事件、银行柜员午休,等等
录(bottom or tail) • 为了实现遍历的要求,通常使用指针,这个指针实现列表中记录的定位
• 将所有记录按照一定的顺序写到数组中,其物理顺序就是逻辑 顺序,比如队列中的顾客,就可以按照其到达时间的先后记录 在数组中,这样顾客之间的前后位置就固定了,如果按照先到 先服务的排队规则(first come first serve,FCFS),则只需 要从数组起始位置顺序读取记录即可,效率较高
• 该事件的产生是由系统外部因素引起的,系统只能承载事件的结果而不能影响事件的发生 • 顾客到达事件、订单到达事件,等等
• 在DES中,仿真时钟是面向事件的,即“踩着”事件发生的时刻跳跃前进,是一个离散的过
程,而不是按照自然时间连续平滑推进,这样可以提高仿真效率
• DES的时钟推进机制有两种模式:后续事件时间推进模式(Next-Event Time Advance,
• FEL主要包含未来事件的发生时间(time of occurrence)、事件编号(ID)等, • 理论上说,即使基于相同的统计分布和参数,每次仿真所获得的FEL列表应该是不同的,这是
由于所用随机数流(random stream)是不同的。但是实际上,为便于模型分析和方案比较, 可以设定采用相同的随机数流,此时FEL是相同的。 • FEL并不是一次性生成全部事件,主要是因为: • 避免事件取消而造成的FEL事件删除操作 • 减少计算机内存的消耗
• 依赖的是特定事件的统计分布
在DES中,仿真过程是面向事件的
需要按照各类事件的统计分布及其参数生成 其未来事件,这些不同类型的事件混合在一起,并按照时间顺序排序(chronologically), 这样所形成的一个包含各类事件的列表,称为未来事件列表(FEL)
• 列表是由记录(record)构成的可变对象,列表中的记录经过排序, 按顺序链接在一起
• 列表内容可以修改,主要涉及记录的添加、删除和移动 • 每个记录代表一个实体(entity)或者一个事件预告(event notice)。
由实体组成的列表称为实体列表,由事件预告组成的列表就是FEL • 列表由排序的记录组成,因此列表具有首记录(top or head)和尾记
• 瞬间发生的、能够改变系统状态的那些事情(occurrence)
• 载有事件发生时刻、事件相关数据的记录(record),例如记载事件类型和发生时间的信息 记录
• 由事件预告组成的、记录将要发生事件的列表,按照时间顺序排列,也被称为未来事件列表 (future event list)
• 活动是一个过程,持续时间长度大体上是确定的,即适合于特定的统计分布和参数,比如汽 车加油、零件加工、顾客购票等等,会有相关的实体参与。
• 模型中所有变量的所有可能的取值的集合,它包含了真实系统所有可能的状态
• 存在于系统中、可相互区别的具体的事物,例如顾客、服务员、自动柜员机、零件、车床、 车辆,等等
• 实体所具有的特征,例如类型、加工时间、优先级、颜色、材质、计量单位,等等
• 列表有两种含义,一是清单,例如实体名单、事件列表;二是队列,例如排队顾客所形成的 队列,且需要事先制订排队规则(先到先服务,优先级,等等)
NETA),固定步长时间推进模式(Fixed-Increment Time Advance,FITA)
事件
e1
e2 e3
e4
e5 e6
e7
e8 e9 e10
时刻 0
t1
t2 t3
t4
t5 t6
t7
t8 t9 t10
• 未来事件列表、队列和实体列表,需要借助列表处理(list processing) 方式进行管理
• 延迟也是一个过程,与活动不同,延迟时间长度是难以确定的,例如某一个顾客在队列中的 等待时间,就具有很大的随机性,难以预知。需要说明的是,队列中全部顾客的等待时间具 有统计学规律,拥有特定的期望值(expectation)。
• 用于仿真模型及其模拟过程,具有跳跃性和不连续性,与现实世界的时钟不完全对应,采用 大写以示区别。
• 随机性(randomness,stochastic),也称不确定性(uncertainty),是指那些影响系统 稳定性表现的干扰因素,也称噪声
• 一般情况下,系统的随机性是由多个可知或不可知因素造成的,这些因素相互作用和影响的 机制难以研究,并且随机特征随时间变化
• 为简化起见,我们将其作为一个整体影响因子去研究
header _ ptr 1
Q(1) (CUS1, 2.3) Q(2) (CUS 2, 2.8) Q(3) (CUS 3, 3.6) Q(4) (CUS 4, 3.9) Q(5) (CUS 5, 6.2) Q(6) (CUS 6, 6.6) Q(7) (CUS 7, 0.0) Q(8) (CUS8, 0.0) Q(9) (CUS 9, 0.0) Q(10) (CUS10, 0.0)
• 由众多实体(entity)构成,例如顾客或者机器设备,实体之间相互作用、相互影响,系统状 态随时间变化而可能发生变化,往往具有某种目的和目标
• 模型是对现实世界系统(real world system)的逻辑抽象,模型在结构、逻辑、数学关系描 述等方面与现实系统保持基本的一致(不一定完全一致,依赖于所研究的问题),模型所包 含的指标和内容有:系统状态、实体及其属性、集合、处理过程、事件、活动和时间延迟
• 事件发生是有时间顺序的,事件调度就是按照事件发生的时刻(instant)顺序,建立未来事 件列表(future event list,FEL),仿真时钟(simulation clock)仅按照事件列表中的事件 时刻推进,跳过那些没有事件和活动(activity)发生的时间段(duration)
顾客到达 A1
A2
A3
顾客离开
D1
时刻 t
0
2.9 3.7
6.1
事件
eA1
eA2
eD1
eA3
FEL (eA2 , eD1)
(eA3,
eD
)
2
(eD1, eA3)
D2
11.2
eD 2
例2.1 银行系统的事件调度和未来事件列表
Time
• 模型内部活动所引起的状态变化而产生的事件,源于系统内部行为,不受系统外因素的影响 • 例如,顾客离去事件、银行柜员午休,等等
录(bottom or tail) • 为了实现遍历的要求,通常使用指针,这个指针实现列表中记录的定位
• 将所有记录按照一定的顺序写到数组中,其物理顺序就是逻辑 顺序,比如队列中的顾客,就可以按照其到达时间的先后记录 在数组中,这样顾客之间的前后位置就固定了,如果按照先到 先服务的排队规则(first come first serve,FCFS),则只需 要从数组起始位置顺序读取记录即可,效率较高
• 该事件的产生是由系统外部因素引起的,系统只能承载事件的结果而不能影响事件的发生 • 顾客到达事件、订单到达事件,等等
• 在DES中,仿真时钟是面向事件的,即“踩着”事件发生的时刻跳跃前进,是一个离散的过
程,而不是按照自然时间连续平滑推进,这样可以提高仿真效率
• DES的时钟推进机制有两种模式:后续事件时间推进模式(Next-Event Time Advance,
• FEL主要包含未来事件的发生时间(time of occurrence)、事件编号(ID)等, • 理论上说,即使基于相同的统计分布和参数,每次仿真所获得的FEL列表应该是不同的,这是
由于所用随机数流(random stream)是不同的。但是实际上,为便于模型分析和方案比较, 可以设定采用相同的随机数流,此时FEL是相同的。 • FEL并不是一次性生成全部事件,主要是因为: • 避免事件取消而造成的FEL事件删除操作 • 减少计算机内存的消耗
• 依赖的是特定事件的统计分布
在DES中,仿真过程是面向事件的
需要按照各类事件的统计分布及其参数生成 其未来事件,这些不同类型的事件混合在一起,并按照时间顺序排序(chronologically), 这样所形成的一个包含各类事件的列表,称为未来事件列表(FEL)
• 列表是由记录(record)构成的可变对象,列表中的记录经过排序, 按顺序链接在一起
• 列表内容可以修改,主要涉及记录的添加、删除和移动 • 每个记录代表一个实体(entity)或者一个事件预告(event notice)。
由实体组成的列表称为实体列表,由事件预告组成的列表就是FEL • 列表由排序的记录组成,因此列表具有首记录(top or head)和尾记
• 瞬间发生的、能够改变系统状态的那些事情(occurrence)
• 载有事件发生时刻、事件相关数据的记录(record),例如记载事件类型和发生时间的信息 记录
• 由事件预告组成的、记录将要发生事件的列表,按照时间顺序排列,也被称为未来事件列表 (future event list)
• 活动是一个过程,持续时间长度大体上是确定的,即适合于特定的统计分布和参数,比如汽 车加油、零件加工、顾客购票等等,会有相关的实体参与。
• 模型中所有变量的所有可能的取值的集合,它包含了真实系统所有可能的状态
• 存在于系统中、可相互区别的具体的事物,例如顾客、服务员、自动柜员机、零件、车床、 车辆,等等
• 实体所具有的特征,例如类型、加工时间、优先级、颜色、材质、计量单位,等等
• 列表有两种含义,一是清单,例如实体名单、事件列表;二是队列,例如排队顾客所形成的 队列,且需要事先制订排队规则(先到先服务,优先级,等等)
NETA),固定步长时间推进模式(Fixed-Increment Time Advance,FITA)
事件
e1
e2 e3
e4
e5 e6
e7
e8 e9 e10
时刻 0
t1
t2 t3
t4
t5 t6
t7
t8 t9 t10
• 未来事件列表、队列和实体列表,需要借助列表处理(list processing) 方式进行管理
• 延迟也是一个过程,与活动不同,延迟时间长度是难以确定的,例如某一个顾客在队列中的 等待时间,就具有很大的随机性,难以预知。需要说明的是,队列中全部顾客的等待时间具 有统计学规律,拥有特定的期望值(expectation)。
• 用于仿真模型及其模拟过程,具有跳跃性和不连续性,与现实世界的时钟不完全对应,采用 大写以示区别。
• 随机性(randomness,stochastic),也称不确定性(uncertainty),是指那些影响系统 稳定性表现的干扰因素,也称噪声
• 一般情况下,系统的随机性是由多个可知或不可知因素造成的,这些因素相互作用和影响的 机制难以研究,并且随机特征随时间变化
• 为简化起见,我们将其作为一个整体影响因子去研究