离散系统仿真
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
离散系统仿真建模特点
❖ 系统描述
模型难以采用某种规范的形式,而一般采用流程图或 网络图的形式才能准确地定义实体在系统中的活动。
❖ 仿真策略
采用何种方法推进仿真时钟,以便在统一的时间基础 上建立起各类实体之间的逻辑联系,是离散事件系统 仿真建模的重要内容之一。
概念模型
❖ 实现仿真模型的两个阶段
- 概念性描述: (1)确定模型需满足的“研究目的”。 (2)通过逐次求精的过程,将一个初始的、一般 性的目标转变成一些更为特定的子目标。
- 主动性行为规则(转移规则)是一个“条件/行动”对。
❖ AOS程序
- 主程序和对象类描述
接口变量 实例变量
行为规则
❖ AOS是一个面向对象的产生式系统。
- 产生式系统(规则库、推理机、当前数据库)适合于各 种需要灵活的同步的并发系统。
- OO方法使我们可以达到更高水平的模块化和代码共享。
事件的时间调度(Event Scheduling)
❖ 基本思想:用事件的观点来分析真实系统,通过
定义事件及每个事件发生所引起系统状态的变化, 按时间顺序确定并执行每个事件发生时有关的逻辑 关系。
❖ 未来事件表(FEL: Future Event list)
- 事件Ei - 事件发生时间ti - FEL的表示形式: “事件/时间”对的列表,
❖ 基于FEL的排队系统仿真例子
到达间隔 0 8 6 1 8 …
基于FEL的排队系统仿真例子 服务时间 4 1 4 6 3 …
❖ 到达事件:1)如服务忙,等待线增加1人;如空,产生服务时间ts, 在ti+ts安排新的离开事件。2)产生新的到达间隔,安排下个到达 事件。
❖ 离开事件:1)如等线有排队,等待线减少1人,产生服务时间ts, 在ti+ts安排新的离开事件。如无,则回到时间进程。
❖ 因果型子系统的仿真策略
(1)由一个主控模块来管理时间前进进程、子模型执行 次序和子模型的集成。
(2)在层次结构的某一层上,一组功能子模型(FSM)对 应于一组同时并进、交互作用的功能子系统(FSS), 与功能子系统的因果关系有一对一的对应关系。
(3)功能子模型本身不必考虑其他功能子模型的作用, 由主控模块用输入/输出来管理各功能子模型间的 通信。
❖ 过程运行时间图
顾客进程运行时间图
4
X
3
进
X
程 号
2
1
时间
离散系统仿真的主动性对象系统
❖ 主动性对象系统 ❖ 简单排队系统 ❖ 生产线仿真
主动性对象系统(AOS)
❖ AOS对象具有标准化结构接口变量
- 用以建立对象间要求的连接。在实例化时接口变量被 连接相应的对象上。
❖ AOS对象具有的主动性行为规则
❖ 基于活动扫描的仿真方式
- 在仿真时间的每一瞬间,仿真模型扫视各条件算 法,并执行相应的行动算法。即:如果预定条件满 足的话,则相应的活动就得以进行。为保证顾及每 项活动,必须在每个时间点对整个活动集合进行扫 描。
❖ 面向活动(时间)的仿真结构框图
面向活动(时间)的仿真结构框图
启动
N TIME:=TIME+1
从事件表中选出最先要执行的事件作为当前事 件,使时间TIME拨至当前事件的发生时刻
TIME≤仿真时间 N
Y 按当前事件分叉转移处理
输出统计结果 结束
到达事件处理 离开事件处理
活动扫描(Activity Scanning)
❖ 基本思想:描述系统的实体所进行的活动以及预定
导致活动开始或结束的条件。活动开始或结束的事件
- 形式化描述: (1)用系统的输入/输出/状态以及时间的数学变 量来描述系统的研究目的。
❖ 用自然语言描述的概念模型
- 系统(状态,实体,属性,事件,活动等) - 目标(响应,因素,准确度和精度等) - 实验框架(输入/响应,运行次数,初始化等)
形式化模型
❖ 形式表示
- 将概念模型中的输入/输出/状态用数学变量来 表示。
并非由模型事先安排,而是由活动规定的条件所初始
化。随仿真时间的推移,对每项活动的开始或结束的
条件进行扫描。
到达活动 服务活动
❖ 条件/行动算法
到达事件 服务开始
事件
- 条件算法:根据当前Байду номын сангаас态与
服务结束 事件
规定的条件作比较,然后决定是否应作某项活动。
- 行动算法:用以计算进行活动后所处的新状态。
基于活动扫描的仿真过程
TIME=1
TIME≤仿真时间 N
Y
顾客到达
N
Y 到达行动处理
在这一时间内有服务完成否
Y 离开行动处理
输出统计结果 结束
过程交互作用(Process Interaction)
❖ 基本思想:为每个实体建立一个过程,该过程反映
某一动态实体从建立开始到结束为止的全部活动。
❖ 过程(也称进程)
- 过程由事件的时间序列以及若干活动所组成。
- 将概念模型中对应于功能子系统活动的抽象功
能,即相应子功能的变量间的相互关联用数学函
数来表示。
❖ 算法模型:计算机上可实现的形式化模型
(数学表达式、谓词演算、图形表示)
X(t+Δ)=X(t)+U(t)
Δ≈0 X(t):=X(t)+U(t)
因果型子系统的仿真策略(1)
❖ 以修理店为例:
- 喷漆和抛光两个子活动可以同时进行(对不同对象)。
- 决策活动D决定对某个到达的对象是作喷漆还是抛光。
- 如果D又取决于某个 D’ 的输出,则 D’ 必须先于D, 即这是因果关系。
但在时间上,D可看作是
喷漆
一个瞬时事件,而喷漆
D’
D
和抛光是两个耗时的活
抛光
动。所以在一个子系统
中,既有耗时的活动,
又有瞬时的事件,就必须有一个仿真策略。
因果型子系统的仿真策略(2)
时钟
0 4 8 9
系统状态 LQ(t) LS(t)
FEL 离开 到达
0
1 (D,4), (A,8), (E,60)
0
0
(A,8), (E,60)
0
1 (D,9), (A,14), (E,60)
0
0
(A,14), (E,60)
累加状态
B MQ
0
1
4
1
4
1
5
1
面向事件的仿真程序结构图
启动
调度第1次到达事件
内部按时间排序。 (Ei, ti) = (Ei={D/离开,A/到达,E/结束},ti)
基于FEL的仿真过程
❖ 基于FEL的仿真方式
- 每运行一步,从FEL取出当前时间ti将要发生的 事件Ei,然后计算新的状态和在此状态下的持续 时间,安排新的事件并插入FEL。
- 反复抽取这个FEL中最早的项就可以按时间产生 整个模型的行为。
❖ 系统描述
模型难以采用某种规范的形式,而一般采用流程图或 网络图的形式才能准确地定义实体在系统中的活动。
❖ 仿真策略
采用何种方法推进仿真时钟,以便在统一的时间基础 上建立起各类实体之间的逻辑联系,是离散事件系统 仿真建模的重要内容之一。
概念模型
❖ 实现仿真模型的两个阶段
- 概念性描述: (1)确定模型需满足的“研究目的”。 (2)通过逐次求精的过程,将一个初始的、一般 性的目标转变成一些更为特定的子目标。
- 主动性行为规则(转移规则)是一个“条件/行动”对。
❖ AOS程序
- 主程序和对象类描述
接口变量 实例变量
行为规则
❖ AOS是一个面向对象的产生式系统。
- 产生式系统(规则库、推理机、当前数据库)适合于各 种需要灵活的同步的并发系统。
- OO方法使我们可以达到更高水平的模块化和代码共享。
事件的时间调度(Event Scheduling)
❖ 基本思想:用事件的观点来分析真实系统,通过
定义事件及每个事件发生所引起系统状态的变化, 按时间顺序确定并执行每个事件发生时有关的逻辑 关系。
❖ 未来事件表(FEL: Future Event list)
- 事件Ei - 事件发生时间ti - FEL的表示形式: “事件/时间”对的列表,
❖ 基于FEL的排队系统仿真例子
到达间隔 0 8 6 1 8 …
基于FEL的排队系统仿真例子 服务时间 4 1 4 6 3 …
❖ 到达事件:1)如服务忙,等待线增加1人;如空,产生服务时间ts, 在ti+ts安排新的离开事件。2)产生新的到达间隔,安排下个到达 事件。
❖ 离开事件:1)如等线有排队,等待线减少1人,产生服务时间ts, 在ti+ts安排新的离开事件。如无,则回到时间进程。
❖ 因果型子系统的仿真策略
(1)由一个主控模块来管理时间前进进程、子模型执行 次序和子模型的集成。
(2)在层次结构的某一层上,一组功能子模型(FSM)对 应于一组同时并进、交互作用的功能子系统(FSS), 与功能子系统的因果关系有一对一的对应关系。
(3)功能子模型本身不必考虑其他功能子模型的作用, 由主控模块用输入/输出来管理各功能子模型间的 通信。
❖ 过程运行时间图
顾客进程运行时间图
4
X
3
进
X
程 号
2
1
时间
离散系统仿真的主动性对象系统
❖ 主动性对象系统 ❖ 简单排队系统 ❖ 生产线仿真
主动性对象系统(AOS)
❖ AOS对象具有标准化结构接口变量
- 用以建立对象间要求的连接。在实例化时接口变量被 连接相应的对象上。
❖ AOS对象具有的主动性行为规则
❖ 基于活动扫描的仿真方式
- 在仿真时间的每一瞬间,仿真模型扫视各条件算 法,并执行相应的行动算法。即:如果预定条件满 足的话,则相应的活动就得以进行。为保证顾及每 项活动,必须在每个时间点对整个活动集合进行扫 描。
❖ 面向活动(时间)的仿真结构框图
面向活动(时间)的仿真结构框图
启动
N TIME:=TIME+1
从事件表中选出最先要执行的事件作为当前事 件,使时间TIME拨至当前事件的发生时刻
TIME≤仿真时间 N
Y 按当前事件分叉转移处理
输出统计结果 结束
到达事件处理 离开事件处理
活动扫描(Activity Scanning)
❖ 基本思想:描述系统的实体所进行的活动以及预定
导致活动开始或结束的条件。活动开始或结束的事件
- 形式化描述: (1)用系统的输入/输出/状态以及时间的数学变 量来描述系统的研究目的。
❖ 用自然语言描述的概念模型
- 系统(状态,实体,属性,事件,活动等) - 目标(响应,因素,准确度和精度等) - 实验框架(输入/响应,运行次数,初始化等)
形式化模型
❖ 形式表示
- 将概念模型中的输入/输出/状态用数学变量来 表示。
并非由模型事先安排,而是由活动规定的条件所初始
化。随仿真时间的推移,对每项活动的开始或结束的
条件进行扫描。
到达活动 服务活动
❖ 条件/行动算法
到达事件 服务开始
事件
- 条件算法:根据当前Байду номын сангаас态与
服务结束 事件
规定的条件作比较,然后决定是否应作某项活动。
- 行动算法:用以计算进行活动后所处的新状态。
基于活动扫描的仿真过程
TIME=1
TIME≤仿真时间 N
Y
顾客到达
N
Y 到达行动处理
在这一时间内有服务完成否
Y 离开行动处理
输出统计结果 结束
过程交互作用(Process Interaction)
❖ 基本思想:为每个实体建立一个过程,该过程反映
某一动态实体从建立开始到结束为止的全部活动。
❖ 过程(也称进程)
- 过程由事件的时间序列以及若干活动所组成。
- 将概念模型中对应于功能子系统活动的抽象功
能,即相应子功能的变量间的相互关联用数学函
数来表示。
❖ 算法模型:计算机上可实现的形式化模型
(数学表达式、谓词演算、图形表示)
X(t+Δ)=X(t)+U(t)
Δ≈0 X(t):=X(t)+U(t)
因果型子系统的仿真策略(1)
❖ 以修理店为例:
- 喷漆和抛光两个子活动可以同时进行(对不同对象)。
- 决策活动D决定对某个到达的对象是作喷漆还是抛光。
- 如果D又取决于某个 D’ 的输出,则 D’ 必须先于D, 即这是因果关系。
但在时间上,D可看作是
喷漆
一个瞬时事件,而喷漆
D’
D
和抛光是两个耗时的活
抛光
动。所以在一个子系统
中,既有耗时的活动,
又有瞬时的事件,就必须有一个仿真策略。
因果型子系统的仿真策略(2)
时钟
0 4 8 9
系统状态 LQ(t) LS(t)
FEL 离开 到达
0
1 (D,4), (A,8), (E,60)
0
0
(A,8), (E,60)
0
1 (D,9), (A,14), (E,60)
0
0
(A,14), (E,60)
累加状态
B MQ
0
1
4
1
4
1
5
1
面向事件的仿真程序结构图
启动
调度第1次到达事件
内部按时间排序。 (Ei, ti) = (Ei={D/离开,A/到达,E/结束},ti)
基于FEL的仿真过程
❖ 基于FEL的仿真方式
- 每运行一步,从FEL取出当前时间ti将要发生的 事件Ei,然后计算新的状态和在此状态下的持续 时间,安排新的事件并插入FEL。
- 反复抽取这个FEL中最早的项就可以按时间产生 整个模型的行为。