2.1.1 建模仿真技术
1 模型和数字制造模型
模型是对现实系统有关结构信息和行为的某种形式的描述,是对系统的特征与变化规律的一种定量抽象,是人们认识事物的一种手段或工具。模型大致可以分为三类:
1)物理模型:指不以人的意志为转移的客观存在的实体,如飞行器研制中的飞行模型,船舶制造中的船舶模型等。
2)形式化模型:用某种规范表述方法构建的、对客观事物或过程的一种表达。形式化模型实现了一种客观世界的抽象,便于分析和研究。例如,数学模型,是从一定的功能或结构上进行抽象,用数学的方法来再现原型的功能或结构特征。
3)仿真模型:指根据系统的形式化模型,用仿真语言转化为计算机可以实施的模型。
模型的构建,一般都会有一套规范的建模体系,包括模型描述语言、模型描述方法、模型构建方法等。数学就是一种表达客观世界最常用的建模语言。在软件工程里面常用的统一建模语言(UML)也是一种通用的建模体系,支持面向对象的建模方法。
在制造行业,数字制造模型是数字制造全生命周期中的一个不可缺少的工具。数字制造全生命周期包括数据处理、数字传输、执行控制、事务管理和决策支持等,它是由一系列有序的模型构成的,这些有序模型通常为:功能模型、信息模型、数据模型、控制模型和决策模型,有序通常指这些模型分别是在数字制造的不同生命周期阶段上建立的。
数字制造模型有多种分类方式。从形式上分,有全局结构模型(如制造系统体系结构)、局部结构模型(如柔性制造系统模型)、产品结构模型和生产计划调度模型等;从方法上分,有数学解析模型(如状态空间模型)、图示概念模型(如集成计算机辅助制造定义模型)及图示-解析混合模型(如Petri网模型)等;从功能上分,有结构描述模型、系统分析模型、系统设计实施模型和系统运行管理模型等[36]。
在数字制造中,需要用模型加以描述的对象包括:
1)产品:产品的生命周期需要采用各种产品模型和过程模型来描述。
2)资源:机器设备、资金、各种物料、人、计算设备、各种应用软件等制造系统中的资源,需要用相应模型描述。
3)信息:对数字制造全过程的信息的采集、处理和运用,需要建立适当的信息模型。
4)组织和决策:将数字制造的组织和决策过程模型化是实现优化决策的重要途径。
5)生产过程:将生产过程模型化是实现制造系统生产、调度过程优化的前提。
数字制造建模就是运用适当的建模方法将数字制造全生命周期的各个对象、过程等抽象地表达出来,并通过研究其结构和特性,进行分析、综合、仿真及优化。
2 仿真的基本概念
对于仿真,人们一般先进行一些数学处理,然后,通过计算来推理和研究。后来,电子计算机技术产生和发展,人们发现可以利用模拟电路去研究工业控制过程中的实际问题,由此产生了现代控制理论。而这个模拟电路就是工业控制系统的一个模型,通过在这个模型上进行实验,就可以解决实际控制过程中产生的问题。例如,在飞机设计过程中,由于飞机造价的昂贵,用真实的飞机进行实验是不现实的。为了获得飞机外形的气动数据,尤其是飞机机翼的气动数据,必须制作各种不同形状的机翼模型放到风洞中进行实验。风洞实验的结果改进了飞机的设计理论,而利用这个理论又可以去设计新型的飞机。诸如解决这些问题的方法,就是现代仿真技术,在这个时期,人们在利用仿真方法研究或求解问题时,都是利用实物去构造与实际系统成比例的物理模型,在这个模型上进行实验。因此,从一般意义上讲,在对一个已经存在或尚不存在但正在开发的系统进行研究的过程中,为了了解系统的内在特性,必须进行一定的试验,由于系统不存在或其他一些原因,无法在原系统上直接进行实验,只能设法构造既能反映系统特征又能符合系统实验要求的系统模型,并在该系统模型上进行实验,以达到了解或设计系统的目的,于是,仿真技术就产生了[36]。
根据ISO(国际标准化组织)定义,模拟(Simulation)即选取一个物理的或抽象的系统的某些行为特征,用另一系统来表示它们的过程。仿真(Emulation)即用另一数据处理系统,主要是用硬件来全部或部分地模仿某一数据处理系统,使得模仿的系统能像被模仿的系统一样接收同样的数据,执行同样的程序,获得同样的结果。从这个意义上讲,在计算机中构建真实系统的模型,进行分析的过程应该称为“计算机模拟”,但是目前习惯上还是称为“计算机仿真”。在不引起歧义的情况下,本书统一用习惯用语“仿真”来表述上述的“模拟”和“仿真”的概念。
仿真就是建立系统的模型(数学模型、物理模型或数学-物理效应模型),并在模型上进行实验。仿真是建立在控制理论、相似理论、信息处理技术和计算技术等理论基础之上的,以计算机和其他专用物理效应设备为工具,利用系统模型对真实或假想的系统进行实验,并借助于专家经验知识、统计数据和资料对实验结果进行分析研究并做出决策的一门综合性和实验性的学科。
3 仿真模型
建模与仿真是指构造现实世界实际系统的模型和在计算机上进行仿真的复杂活动,它主要包括实际系统、模型和计算机三个基本部分,同时考虑三个基本部分之间的关系,即建模关系和仿真关系。建模关系是通过对实际系统观测和检测,在忽略次要因素及不可监测变量的基础上,用规范表述方法(如数学的方法)进行描述,从而获得实际系统的简化近似模型。仿真关系主要研究计算机程序的实现与模型之间的关系,其程序能为计算机所接受并在计算机上运行。
仿真研究就是把构建好的形式化模型(如数学模型)放在计算机上运行求解。数学模型是人类用数学语言描述客观事物的一种表达,它不能直接在计算机上进行运算。一个真实系统的数学模型往往相当复杂,依靠人工计算来求解,是非常困难的,必须借助于计算机的高速运算来进行求解。因此,人们就需要把数学模型转换成计算机可以理解的模型,即按照计算机语言和计算机运算的特点(或者说按照一定的算法)进行重新构造模型,这个过程被称为仿真建模。至此,根据仿真模型就可以利用计算机语言编写程序了,再把编写好的程序在计算机上运算求解,并用数字或图形等方式表示计算结果,这就是计算机仿真的基本过程。
根据仿真建模技术的基本原理,建模与仿真分别代表了两个不同的过程,建模是指根据被仿真的对象或系统的结构构成要素、运动规律、约束条件和物理特性等,建立其形式化模型的过程,仿真则是利用计算机建立、校验、运行实际系统的模型,以得到模型的行为特征,从而分析研究该系统的过程。图2-2表示了这个过程,整个过程有两个抽象和转换的过程,其一是从物理系统到形式化模型(如数学模型),这个是物理空间到信息空间的一个抽象,其二是形式化模型(如数学模型)到计算机仿真模型的转换,这个过程是为了保障仿真能顺利开展。建模是仿真的基础,仿真是建模的目的。在仿真技术的实际应用中,人们总是追求两者之间具有清晰的关系,主要表现为建模框架和仿真框架的分离,这样便于实现通用的仿真控制和实验环境,使得研究人员可以集中精力于对仿真对象系统的建模研究上,同时实现较高的建模灵活性、可维护性以及代码可重用性。仿真框架则主要提供对仿真系统的控制功能的描述。在传统的面向过程的仿真建模方法中,仿真系统的控制功能被嵌入描述模型的过程,代码中仿真涉及的各种控制功能与模型的建模元素不能明确地区分开,这种建模结构与控制结构混为一体的方式使得模型结构复杂,缺乏可扩展性,难于维护和修改,代码可重用性低。
图2-2 建模和仿真的一般过程
在选择建模方法时,应该考虑被讨论的系统的特征,以及所要跟踪问题的性质。常用的仿真建模方法包括静态/动态建模方法、连续/离散建模方法、随机/确定性建模方法以及面向对象和多智能体仿真建模方法。
4 仿真建模方法
仿真建模已经在广泛而多样的应用领域中积累了众多的成功案例。随着新的建模方法和技术的涌现,以及计算机性能的快速增长,仿真建模技术将应用到更加广泛的领域中。以生产系统为例,仿真建模的应用如图2-3所示。
图2-3列出了生产系统各个层次对应的仿真建模应用。底层是设备级建模,表示在现实世界中具有最大细节化的实体。在这个层面的仿真,很多是多学科的,包括机械、电子/电气、液压/气动以及控制系统的建模和仿真,用于分析某个产品或某个设备的运行情况,验证设计方案。
图2-3中最上面的是企业层高度抽象的仿真,针对企业宏观决策、应对策略等方面的建模与仿真,例如,针对社会、经济因素的系统仿真,供应链仿真等。这些模型往往定性和定量结合,建模涉及的周期长,是针对一个较长时间范围内的仿真。
图2-3 生产系统各个层次对应的仿真建模应用[36]
在这两个层面之间的,是一个中间规模和中等细节的建模。例如,物流仿真、生产过程仿真、工艺仿真等。
选择合适的抽象层,对于建模至关重要。前面说过,模型是对实际系统的一个抽象,只有明确了模型所需要包含和舍弃的部分,才能构建出复杂程度适合、能真正解决实际问题的仿真模型。
仿真建模方法,就是一个映射真实世界的常规模型框架。仿真建模方法给出了适用于仿真的建模语言与一系列术语和条件,目前为止,在生产系统领域,主要建模方法包括:离散事件建模、基于智能体建模和系统动力学建模。
每一种建模方法都适用于其特定的抽象层级范围。系统动力学建模适合较高的抽象层级,其在决策建模中已经得到了典型应用;离散事件建模支持中层和偏下层的抽象层级;基于智能体建模适合多抽象层级的模型,既可以实现较低抽样层级的物理对象细节建模,也可以实现公司和政府等较高抽象层级的建模。仿真建模方法的选择要基于所需模拟的系统和建模的目标来决定。