CN110580373A - 预处理协同仿真方法和装置 - Google Patents

预处理协同仿真方法和装置 Download PDF

Info

Publication number
CN110580373A
CN110580373A CN201910498048.2A CN201910498048A CN110580373A CN 110580373 A CN110580373 A CN 110580373A CN 201910498048 A CN201910498048 A CN 201910498048A CN 110580373 A CN110580373 A CN 110580373A
Authority
CN
China
Prior art keywords
parameter
subsystem
simulation
time
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910498048.2A
Other languages
English (en)
Other versions
CN110580373B (zh
Inventor
贝内迪克特·马丁
珍瑟·西蒙
伯纳什·约斯特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Capability Center Virtual Vehicle Research Co
Original Assignee
Capability Center Virtual Vehicle Research Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Capability Center Virtual Vehicle Research Co filed Critical Capability Center Virtual Vehicle Research Co
Publication of CN110580373A publication Critical patent/CN110580373A/zh
Application granted granted Critical
Publication of CN110580373B publication Critical patent/CN110580373B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • G06F17/13Differential equations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/08HW-SW co-design, e.g. HW-SW partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种用于利用替换子***的偏导数的多个子***的协同仿真的预处理协同仿真方法和装置。在此基础上,通过对误差微分方程求值来近似计算各个子***的输出变量的精确解,以便估计近似计算的精确输出变量的未来进展;在当前协同仿真时间增量之前通过优化确定相应输入变量。预处理协同仿真方法在计算机可执行程序内实现,并在计算节点网络中实施。

Description

预处理协同仿真方法和装置
技术领域
本发明涉及一种基于预处理(pre-step)协同仿真***模拟真实实体模型的方法和基于预处理协同仿真***模拟真实实体模型的模拟装置。
背景技术
如今,数值模拟在技术***的设计、分析和工程中的应用是工业中的常见做法,并且有许多不同的建模方法和定制的数值求解器。实体***的行为通常由常微分方程(ODE)或微分代数方程(DAE)来描述。数值求解器用于在特定时间点近似计算其解析解,但是产生离散误差。存在有不同的校正方法,通常使用迭代(隐式)求解器。在实时仿真即时间并发仿真的情况下,迭代导致未定义的运行时行为,因此,在显式仿真时间增量之后采用校正措施。然而,在协同仿真中也发生类似的情况。
协同仿真是一门特殊仿真学科,其中多个子***在协同仿真时间增量上独立地进行模拟,并且在特定时间点交换数据以实现同步。当无法在单个仿真工具内对整个***进行建模或仿真时,该方法通常用于整体***仿真。
与上述传统的数值模拟方法相比,在协同仿真的情况下,需要另外的主算法,即更高级数值求解器来求解整个***仿真。由于所涉及的仿真工具的接口连接和协同仿真能力有限或受限,迭代(隐式)协同仿真方法通常不适用;它们只用于少数(通常是两个或三个)子***模拟的专用集成。另一方面,非迭代协同仿真是常见做法,其缺点是在较高的主算法级别上产生了较大的耦合误差,即协同仿真离散误差。与传统的数值模拟方法相比,由于所涉及的仿真工具的接口连接和协同仿真能力有限,例如,无法访问子***内部的***状态或重置子***模拟增量,这种协同仿真离散误差的减小受到限制。近年来,随着协同仿真在不同行业的应用越来越广泛,为了解决这一特定问题,人们开发了几种方法。
EP 2442248 B1描述了一种对子***输入进行修改用于补偿后续协同仿真时间增量上的协同仿真离散误差的方法。最近,Sadjina-2016提出了对这种方法的扩展,其中利用另外的模型信息即被称为接口-雅可比行列的输出和输入偏导数来修正相关的子***输入,尤其是用于处理代数循环。EP 2 680 157 A1示例性地使用接口-雅可比矩阵的交换和利用。这种另外的子***信息使主算法能够处理与***仿真关键属性(如刚度或代数循环)相关的稳定性问题。然而,目前在非迭代协同仿真中用于减小协同仿真离散误差的现有方法仅在耦合时刻处即后处理的当前协同仿真时间增量之后应用,并对整个***仿真产生延迟影响。这可能导致稳定性问题或降低整体协同仿真的准确性。此外,当前方法基于可限制协同仿真性能的中央式方案。
发明内容
本发明的目的可以是提供一种可以更精确且更有效地模拟真实实体模型的方法和装置。
该目的可以通过根据独立权利要求的主题的用于模拟真实实体模型的方法和模拟装置来解决。
根据本发明的第一方面,提出一种基于预处理协同仿真***模拟真实实体模型的方法。根据该方法,提供第一子***,其在第一方程组(例如,行为模型)(局部)的基础上模拟真实实体模型的至少一个第一参数(例如,车辆的速度v),其中第一方程组被配置为用于在至少一个第二参数(例如,车辆的推进力F)的基础上来确定第一参数(v)。
此外,提出第二子***,其在第二方程组(局部)的基础上模拟真实实体模型的至少一个第二参数(F),其中第二方程组被配置为用于在至少一个第一参数(v)的基础上来确定第二参数(F)。在第一耦合时间点通过外推法来估计第二子***中第一参数(v)的第一输入值(v_in)和第一子***中第二参数(F)的第二输入值(F_in)。该方法进一步包括由第一子***确定第一参数(v)的第一输出值(v_out)和由第二子***确定第二参数(F)的第二输出值(F_out)。
该方法进一步包括在后续第二耦合时间点确定估计的第一输入值(v_in)与确定的第一输出参数(v_out)之间的第一误差和估计的第二输入值(F_in)与确定的第二输出参数(F_out)之间的第二误差。
此外,根据该方法,定义了基于第一子***的偏导数的真实实体模型的第一局部替换模型,并且定义了基于第二子***的偏导数的真实实体模型的第二局部替换模型。
由此,局部替换模型表示抽象和简化模型并且模拟相应模拟的真实实体子***(参见等式10-11)的行为,其中模拟第一局部替换模型和相应第一子***产生基于相等的第二输入变量的几乎相似的第一输出变量,并且模拟第二局部替换模型和相应第二子***产生基于相等的第一输入变量的几乎相似的第二输出变量。局部替换模型是基于偏导数的,偏导数本质上描述了子***输出参数相对于相应输入和输出参数变化的灵敏度。
在第一局部替换模型和第二局部替换模型的基础上,定义了误差微分方程,其中误差微分方程被配置为接收第一误差和第二误差,用于确定第一参数随时间的第一特性和/或第二参数随第一耦合时间点与后续第二耦合时间点之间的时间的第二特性。在第一参数的第一特性和/或第二参数的第二特性的基础上,在第二耦合时间点优化第一参数(v)的第一输入值(v_in)和/或第二参数(F)的第二输入值(F_in)用于模拟第一子***中的第一参数(v)和/或第二子***中的第二参数(F)。
由此,误差微分方程基于第一误差和第二误差分别描述第一参数的第一特性和/或第二参数的第二特性与对应第一和/或第二输出值的导数。
根据另一方面,提出一种基于预处理协同仿真***模拟真实实体模型的模拟装置。模拟装置包括用于处理上述方法的单元。因此,模拟装置包括第一子***单元,其具有在第一方程组的基础上模拟真实实体模型的至少一个第一参数的第一子***,其中第一方程组被配置为用于在至少一个第二参数的基础上确定第一参数。该装置进一步包括第二子***单元,其具有在第二方程组的基础上模拟真实实体模型的至少一个第二参数的第二子***,其中第二方程组被配置为用于在至少一个第一参数的基础上确定第二参数。
此外,该装置包括估计单元,其被配置为在第一耦合时间点(Tk-1)通过外推法来估计第二子***中第一参数的第一输入值和第一子***中第二参数的第二输入值,其中第一参数的第一输出值由第一子***确定,第二参数的第二输出值由第二子***确定。
此外,该装置包括误差确定单元,其在后续第二耦合时间点确定第一参数的估计的第一输入值与第一参数的确定的第一输出值之间的第一误差和第二参数的估计的第二输入值与第二参数的确定的第二输出值之间的第二误差。
该装置进一步包括误差微分方程单元,其用于定义基于第一子***的偏导数的真实实体模型的第一局部替换模型,并且用于定义基于第二子***的偏导数的真实实体模型的第二局部替换模型,其中在第一局部替换模型和第二局部替换模型的基础上,误差微分方程由误差微分方程单元来定义。
误差微分方程被配置为接收第一误差和第二误差,用于确定第一参数随时间的第一特性和/或第二参数随第一耦合时间点与后续第二耦合时间点之间的时间的第二特性。
该装置进一步包括优化单元,该优化单元被配置为在第一参数的第一特性和/或第二参数的第二特性的基础上,在后续耦合时间点优化第一参数的第一输入值和/或第二参数的第二输入值用于模拟第一子***中的第一参数和/或第二子***中的第二参数。
通过本发明,描述了一种用于多个子***的协同仿真的预处理协同仿真方法和装置,利用偏导数来建立子***的替换模型。在此基础上,通过对误差微分方程求值,近似计算各个子***的输出变量的精确解,即各个子***的输出变量的特征,以估计近似精确输出变量的未来进展;在当前协同仿真时间增量之前通过优化确定相应输入变量。预处理协同仿真方法在计算机可执行程序内实现,并可在计算节点网络中实施。
此外,在相关方法的现有技术进程中,如果提供更多的硬件资源,诸如更快的处理器和更大的存储装置,则仿真结果变得更加精确。通过本发明,在不需要更多硬件资源的情况下实现了更精确的仿真结果。此外,本发明考虑了更大的耦合步长,并且由此导致在耦合时间点减少的数据交换量-第一参数和第二参数的交换-这使得整个预处理协同仿真方法更高效。
例如,真实实体模型可以是必须在真实条件和真实参数下模拟的车辆,诸如汽车。模拟真实实体模型非常复杂。因此,使用协同仿真技术,其中复杂的真实实体模型被分成各自的子***。每个各自的子***计算所需的参数。然而,子***有时需要另外子***的参数的计算输出值作为输入参数,该另外子***未计算耦合时间点各自的输入参数的值,此时子***需要参数的各自的输入值。
因此,特别是如果第一子***和第二子***通过它们各自的参数彼此依赖,则必须对各自的子***的参数的输入值进行近似或计算。目的是提供一个非常精确的参数的各自的输入值的近似值。
各自的子***模拟所需的参数。因此,在由各自的第一***模拟参数之后,确定各自的参数的输出值。例如,该参数可以是速度、制动力、阻力、车轴转矩、冲击力、车辆的燃料消耗等。
每个子***包括各自的方程组,该方程组描述可以由多个方程组成的子***行为。然而,由于实际上并未给出参数的所有必要输入值,因此无法正确求解方程组。
因此,根据本发明,在第一耦合时间点通过外推法来估计第二子***中第一参数的第一输入值和第一子***中第二参数的第二输入值。因此,通过外推法,第一和第二子***给出各自的参数的基本第一输入值和第二输入值,以便提供第一模拟步骤。因此,第一子***可以确定第一参数的第一输出值并且第二子***可以确定第二参数的第二输出值。
随后,确定第二子***中第一参数的估计的第一输入值与第一子***的第一参数的模拟的第一输出值之间的第一误差。因此,确定第一子***中第二参数的估计的第二输入值与第二子***的第二参数的模拟的第二输出值之间的第二误差。
此外,基于第一子***和第二子***的偏导数可以确定各自的局部替换模型。基于原始子***矩阵计算局部替换模型的偏导数。在第一替换模型和第二替换模型的基础上,定义了误差微分方程。在误差微分方程中输入第一误差和第二误差,用于确定第一参数随时间的第一特性和/或第二参数随在第一耦合时间点与后续第二耦合时间点之间的时间的第二特性。第一参数和第二参数的特性定义了两个耦合时间点即启动子***的第一模拟的第一耦合时间点以及后续第二耦合时间点之间的各自的参数的精确解和行为。
耦合时间点定义时间点,其中各自的参数的各自的值在子***之间交换。第二耦合时间点在时间上紧随第一耦合时间点之后。第一耦合时间点可以是在仿真开始时的初始耦合时间点或在仿真期间的特定耦合时间点。
在各自的参数的第一特性和第二特性的基础上,在后续第二耦合时间点对第一参数的第一输入值和第二参数的第二输入值进行优化。由此,也优化了第一子***的第一参数和第二子***的第二参数的仿真。
因此,通过本发明,局部替换模型由偏导数定义,使得可以确定两个耦合时间点之间的各自的参数的特性。这样就可以更精确的估计各自的子***中参数的输入值,使得可以更精确地模拟真实实体模型。此外,由于精确度的提高,增大耦合步长(例如,耦合时间点之间的时间增量)可能导致数据交换量的减少,使得整体协同仿真变得更高效。因此,可以模拟更复杂的真实实体模型,由此可以在现实中设计更复杂的真实实体模型。由于真实实体模型(例如,汽车或飞机)的***复杂性不断增加,硬件资源无法模拟真实的实体模型。因此,通过本发明,现有的硬件资源(例如,现有的处理器(CPU))可以实现仿真并且由此开发了越来越复杂的真实实体模型。
根据另一示例性实施例,定义了基于第一子***的偏导数和第二子***的偏导数的真实实体模型的全局替换模型,其中全局替换模型被配置为用于估计第一参数和/或第二参数在第二耦合时间点与后续第三耦合时间点之间的未来特性,使得可以确定在第二耦合时间点的第一参数的下一第一输入值和第二参数的下一第二输入值。第三耦合时间点在时间上在第一和第二耦合时间点之后。
根据另一示例性实施例,全局替换模型是基于第一子***和第二子***的转换,通过第一参数的第一输出值(Vout)和第二参数的第二输出值(Fout)的时间推导得到的。
根据另一示例性实施例,误差微分方程的解通过显式或隐式数值求解器来近似计算(参见例如等式21)。
根据另一示例性实施例,通过外推法的估计是一种用于预测各自的参数的近似计算的精确输出变量/值的基于模型的外推法。
在该背景下,基于模型的外推法被称为一种利用相应局部替换模型的偏导数来构建全局替换模型的方法,基于第一和第二输入值,对该全局替换模型进行模拟。然后,得到的第一和第二输出参数分别表示基于模型的外推参数。
根据另一示例性实施例,通过外推法的估计是一种用于预测近似计算的精确输出变量的基于信号的外推法。
根据另一示例性实施例,优化输入变量基于变分方法。
例如,为了优化输入变量,基于替换***矩阵(等式10-11)计算转换矩阵(等式29)。输入变量的优化可以基于能量保存方面。
根据另一示例性实施例,特别地通过使用子空间***识别算法,即时计算第一子***的偏导数和第二子***的偏导数。即时(即在线)识别子***/模型的偏导数(参见例如等式10-11)。
由此,子空间***识别算法表示一种从真实实体子***的输入和输出值的时间序列确定线性替换模型的方法,其中相应真实实体子***的最重要动态由算法自动识别,并且底层线性替换模型的矩阵表示原始子***的偏导数。
根据另一示例性实施例,在第一误差和第二误差的基础上调整第一耦合时间点与第二耦合时间点之间的时间增量。因此,如果各自的第一或第二参数的估计的输入值与分别确定的输出值之间的第一误差和第二误差小,则可以增加两个耦合时间点之间的时间增量以用于后续仿真即后续耦合。因此,如果各自的第一或第二参数的估计的输入值与分别确定的输出值之间的第一误差和第二误差大,则可以减小两个耦合时间点之间的时间增量以用于后续仿真即后续耦合。因此,可以利用输出变量与近似计算的精确输出变量的偏差(等式19),基于误差指示符(等式22-24)自适应地确定当前协同仿真时间增量。
根据另一示例性实施例,模拟装置包括:单个或多个计算节点,其通过通信网络连接到计算节点的网络;存储器区域,存储第一参数和第二参数的输入值、偏导数、第一参数和第二参数的输出值,并且特别输出导数变量、子***的计算的偏导数以及第一方程和第二方程;以及至少一个处理器,访问计算节点的存储器并且被配置为执行上述方法。
根据模拟装置的另一示例性实施例,计算节点表示实时***,并且异步执行数据传输。
根据另一示例性实施例,提供了一种计算机可读介质,其上存储有用于模拟真实实体模型的计算机程序,该计算机程序在由数据处理器执行时适于执行和/或控制上述方法。
根据另一示例性实施例,提供了一种用于模拟真实实体模型的编程元件。当由数据处理器执行时,编程元件适于控制上述方法。
总结本发明,定义了一种预处理协同仿真方法,包括计算各个替换子***的偏导数(参见例如等式10-11)并组合导出的矩阵(参见例如等式15-16)。该方法进一步包括通过对误差微分方程求值来近似精确的输出变量,并且基于替换***动态和***输入矩阵估计每个单独子***的近似精确输出变量的未来进展。最后,在协同仿真时间增量之前优化输入变量。
公开了一种利用替换子***的偏导数进行多个子***的协同仿真的预处理协同仿真方法和装置。在此基础上,通过对误差微分方程求值来近似计算各个子***的输出变量的精确解,以估计近似计算的精确输出变量的未来进展;在当前协同仿真时间增量之前通过优化确定相应输入变量。预处理协同仿真方法在计算机可执行程序内实现,并且在计算节点网络中实施。
必须注意的是,已经参考不同的主题描述了本发明的实施例。特别地,已经参***类型权利要求描述了一些实施例,并且已经参考方法类型权利要求描述了其它实施例。然而,除非另有通知,否则本领域技术人员将从以上和以下描述中收集除了属于一种主题类型的特征的任意结合之外的与不同主题相关的特征之间的任意结合,并且特别地,在设备类型权利要求的特征与方法类型权利要求的特征之间的内容被认为是与本申请一起公开。
附图说明
本发明的上述方面和其它方面从下文将描述的实施例的示例是显而易见的,并且参照实施例的示例进行解释。下面将参照实施例的示例更详细地描述本发明,但本发明不限于此。
图1示出说明关于本文描述的计算机实施的预处理协同仿真方法的用于协同仿真的完整循环的流程图。
图2示出表示为实现预处理协同仿真方法而待执行的不同步骤的示图。
图3示出说明本文描述的协同仿真装置的体系结构以及预处理协同仿真方法的中央式和分布式实施可能性的示意性框图。
图4示出通过应用本文描述的计算机实施的协同仿真方法来指示性能改进的仿真结果。
具体实施方式
附图中的图示是示意性的。注意的是,在不同的附图中,相似或相同的元件设有相同的附图标记。
在一方面,本发明描述了一种可用于模拟复杂实体***和包括任意数量的子***308的真实实体模型的预处理协同仿真方法100、200(参见图1和图2)和装置300(参见图3)。子***308可以表示在专用仿真工具中模拟的真实对象的模型,或者甚至是在实时应用的情况下安装在定制的测试平台上的真实硬件组件。由于用于同步目的的协同仿真的模块化特性,数据通过网络302(参见图3)传输,并且在专用通信时间点(耦合时间点)在子***之间进行专门交换。子***308在这些通信点实例之间独立地运行。
图1示出说明关于本文描述的计算机实施的预处理协同仿真方法的用于协同仿真的完整循环的流程图。预处理协同仿真方法进一步包括步骤101(计算所有各个子***的(替换)子***的偏导数)中的步骤104(计算所有各个子***的(替换)子***的偏导数)中的计算替换***(等式10-11)矩阵和步骤105(基于线性替换子***组合所需的(全局)矩阵)中的组合导出矩阵(等式15-16)、步骤106(全局求解误差微分方程并且近似计算精确输出)中的通过对误差微分方程求值来近似计算各个子***的各自的参数的精确输出变量/值、步骤107(局部地确定足够的步长)中可选地调整(局部)协同仿真时间增量、步骤108((全局地)预测精确输出的未来进展)中的预测精确输出变量的未来进展以及在步骤111(子***的局部仿真)中的当前协同仿真时间增量之前步骤109(基于预测的未来进展(局部地)优化输入变量)中的优化第一参数和第二参数的相应输入值。
图2示出指示根据本发明的为实现模拟真实实体模型的预处理协同仿真方法而待执行的不同步骤的示图。图2示出在一个子***308的特定耦合时间点Tk处的仿真图。提供了各自的第一子***308,用以在第一方程组(例如行为模型)(局部)的基础上模拟真实实体模型的至少一个第一参数(例如,车辆的速度v),其中第一方程组被配置为在至少一个第二参数(例如,车辆F的轴转矩)的基础上确定第一参数(v)。
此外,第二子***308在第二方程组(局部)的基础上模拟真实实体模型的至少一个第二参数(F),其中第二方程组被配置为在至少一个第一参数(v)的基础上确定第二参数(F)。在第一(例如初始)耦合时间点(Tk-1)通过外推法(曲线201)来估计第二子***中第一参数(v)的第一输入值(v_in)和第一子***的第二参数(F)的第二输入值(F_in)。该方法进一步包括由第一子***确定第一参数(v)的第一输出值(v_out)和由第二子***确定第二参数(F)的第二输出值(F_out)(曲线202)。
该方法进一步包括在后续耦合时间点确定估计的第一输入值(v_in)(曲线201)与确定的第一输出参数(v_out)(曲线202)之间的第一误差和估计的第二输入值(F_in)(曲线201)与确定的第二输出参数(F_out)(曲线202)之间的第二误差(在Tk处的误差)。
定义了基于第一子***的偏导数的真实实体模型的第一局部替换模型,并且定义了基于第二子***的偏导数的真实实体模型的第二局部替换模型。
在第一局部替换模型和第二局部替换模型的基础上,定义了误差微分方程,其中误差微分方程被配置为接收第一误差和第二误差,用于确定第一参数随时间的第一特性和/或第二参数随第一耦合时间点与后续第二耦合时间点之间的时间的第二特性(在耦合时间点Tk即Tk-1与Tk之间的曲线203)。在第一参数的第一特性和/或第二参数的第二特性的基础上,在后续耦合时间点优化第一参数(v)的第一输入值(v_in)和/或第二参数(F)的第二输入值(F_in)用于模拟第一子***中的第一参数(v)和/或第二子***中的第二参数(F)。
由此,该优化是通过利用全局替换模型在第二耦合时间点到第三耦合时间点基于第一特性和第二特性(204)的外推法进行。
图3示出说明本文描述的协同仿真装置的体系结构以及预处理协同仿真方法的中央式和分布式实施可能性的示意性框图。
预处理协同仿真方法在由计算节点301和通信网络302组成的中央式或分布式协同仿真计算架构300内实现。每个计算节点301由用于存储数据的存储器305、用于数据传输的网络接口装置306以及用于处理程序指令的处理器303组成,其中单个节点也可以承载并执行多个程序。
预处理协同仿真方法在协同仿真程序304、307内实现,协同仿真程序304、307通过在通信点实例处启动、暂停、继续、停止和传送数据来协调所有子***308仿真进程,用于局部同步目的或与其它相关计算节点301同步。特别地,协同仿真程序304、307能够从存储器读取诸如以下的数据并且将该数据写入到存储器305:相关的输入和输出变量及其时间导数和可选的所有子***的相应偏导数。当由处理器303执行时,处理器进行(图1中的步骤101中的)计算(参见图1中的步骤104)替换***(等式10-11)矩阵并且组合(参见图1中的步骤105)导出的矩阵(等式15-16)、对误差微分方程求值(参见图1中的步骤106)来调整协同仿真时间增量(参见图1中的步骤107)并且近似计算子***的输出变量的精确解(参见图1中的步骤108),并且通过优化确定输入变量(参见图1中的步骤109)。此外,当由处理器303执行时,处理器在当前协同仿真时间增量之前将得到的输入传送到对应子***仿真计算节点并且远程协调即启动、继续、暂停、停止各个子***仿真进程。
在非迭代协同仿真期间,通过使用定制的固定或可变步长求解器来独立地求解耦合子***308。在协同仿真的背景下,δΤ表示由底层求解器在各个子***308内的执行的数字步骤。此外,为了同步目的,引入了附加的步长。而且,这种所谓的协同仿真时间增量ΔT可以随时间而变化,并且确定在子***仿真之间交换耦合数据的时间点其中k表示第k协同仿真时间增量,i表示第i子***。在大多数情况下,不是仅在耦合时刻更新值,而是交换最后协同仿真时间增量的时间间隔中的所有可用值。此功能由高性能协同仿真平台支持,并且提高了同步功能。
由于子***308与协同仿真的模块化(分布式)特性之间的双向依赖性,一些输入信号(第一参数和第二参数的输入值)对于当前协同仿真时间增量的时间间隔是未知的,因此,一些耦合信号的分段外推法对于解决整个耦合***是必要的。外推法与估计误差直接相关,因此引入了固有的协同仿真离散误差。
本文描述的本发明通过公开一种预处理协同仿真方法和相应装置来解决这个问题。
图1示出针对单个协同仿真时间增量的流程图100,该流程图100描述了本文所述的预处理协同仿真方法的步骤。在下文中,详细描述了流程图100的各个步骤。
通过常微分方程(ODE)来描述实体真实世界物体的行为是一种常见的做法。通常,在一些情况下,规定了附加代数约束,这通过如等式(1-3)所示的微分代数方程(DAE)直接产生子***308描述;省略了对时间的显式依赖:
yi=gi(xi,ui), (2)
0=hi(xi,ui),i=1...r. (3)
其中,xi表示第i子***308的状态变量和参数;ui和yi分别表示子***的相应输入201和输出202(参见图2)变量;并且r表示子***的数量。这些子***在特殊仿真工具中建模,并且通常由定制的数值求解器308求解。为了公开本发明,DAE***的线性版本概述如下:
yi=gi(xi,ui)≈Ci·xi+Di·ui, (5)
0=hi(xi,ui)≈Ei·xi+Fi·ui. (6)
根据整个***仿真,各个子***的专用输入和输出互连。通过耦合矩阵来描述这种互连,其中基于从整个协同仿真***生成的有向图的邻接矩阵(节点表示子***和边表示互连)来识别耦合矩阵。对于包括两个完全耦合的子***的***,即u1=y2和u2=y1,由耦合矩阵L描述子***互连:
与已知方法相比,本文公开的发明基于替换子***,该替换子***可以通过所有子***的输出变量的时间导数从经典DAE描述(等式1-3)导出,直到输入变量出现在右手侧。代数约束方程的导数如等式(8)和(9)所示:
为简单起见,本文基于子***输出的单个时间导数来描述关于所公开的发明的方法;对于小于1的相对度,对多个时间导数和更高相对度的推广更直接。这样,原始***(等式1-3)被转换为新的状态空间形式(等式8-9)。下面,描述了两种选择来确定替换子***的参数,两种选择都基于近似的线性***描述:
选择1:通过利用***识别算法(见下文),其中算法的输入分别表示子***的输入ui变量和输出yi变量及其时间导数在这种情况下,不必执行原始子***的矩阵的显式转换。
选择2:通过实现***转换(等式12-14)。因此,关于所有原始子***(等式1-6)的状态和输入变量的状态导数的偏导数以及关于状态和输入变量的输出的偏导数必须是可用的。这些矩阵可以由子***本身通过增强的协同仿真接口(例如Blochwitz的功能模型接口)传递,或者通过适当的***识别方法在线识别。替换子***动态和输入矩阵确定如下:
其中
值得注意的是,矩阵Ci必须是规则的以确保求逆。然而,在其它情况下,通过计算众所周知的伪逆的求逆用作替代方法。
以上提到了两次***识别。对于离线(非实时)和在线(实时)识别,存在不同的方法,并且本领域技术人员可以应用这些方法。然而,为完整起见,本文提到了众所周知的子空间方法。基于子***的输入变量和输出变量,子空间方法能够识别状态空间表示,如等式(10-11)中所述。这样,因为该方法基于取决于输入变量和输出变量的奇异值分解自动选择最佳模型顺序,所以不需要指定替换子***的顺序。
为确保特别刚性***的稳定协同仿真,必须考虑互连子***的交叉耦合效应;因此,在耦合时间实例中,各个子***308的各个替换***(等式10-11)和导出矩阵(等式15-16)被组合成全局***矩阵(参见图1中的步骤101)。
根据手头的***,减少更新次数是可能的,例如,每三个协同仿真增量或每次***动态的重大变化。为简单起见,以下详细说明了由两个(r=2)子***308组成的协同仿真。对由更多子***组成的更复杂***的推广更直接。
以下(全局)矩阵将会用在误差微分方程上(参见图1中的步骤106),并且其结果用于调整协同仿真时间增量(参见图1中的步骤107)并近似计算子***的精确输出变量(108):
为了概括(全局)矩阵,本质上必须考虑耦合矩阵L,耦合矩阵L在此省略并且可以由本领域技术人员推导出。
另一方面,为了(全局)预测输出变量的未来进展(参见图1中的步骤108),基于以下(全局)矩阵执行基于模型的外推法:
由于矩阵在任何情况下都保持块对角矩阵,所以在不知道耦合矩阵的情况下概括是有效的。
在图1中,流程图(100)描绘了本发明的协同仿真算法的主要步骤。图2示出示例性地显示单个协同仿真时间增量的步骤的示图(200)。在耦合时刻tk之前的计算的协同仿真结果(202)被传送到主算法。在该时间点(tk),用于组合(全局)矩阵(等式15-16)的在经过间隔[tk-1,tk]的tk-1确定且应用的输入ui(201)、协同仿真结果(202)即在经过间隔[tk-1,tk]的tk的输出yi以及各个偏导数都可用。
在第一步骤中,应用的过去输入ui(201)与所得输出yi(202)之间的偏差用于确定随过去协同仿真时间增量的协同仿真离散误差∈i
i=yi-ui (17)
在此基础上,通过对(全局)误差微分方程(106)求值来近似计算过去步骤的精确输出(203):
其中δ=(δ1,δ2)T和∈=(∈1,∈2)T,导致额外的误差测量δi:。
其中,是整个***的组合的矩阵(等式15)。然后,通过以下公式确定(106)中的精确输出(203)的近似值:
由于等式(18)表示常微分方程,因此存在多种求解它的方法;重点是采用线性隐含方法。由于yi通常表示物理信号,它必须是连续的,因此δi也是连续的。将具有全局初始值δ(tstart)=0的这种属性与等式(18)的结合会产生初始值问题。利用线性隐式Euler方案,即数值求解器,可以得到:
注意:Errro微分方程方法可以用于以独立方式确定子***的精确输出的近似值,而无需协同仿真离散误差。
由于误差δi和∈i,可以局部确定适当的协同仿真时间增量(107)。由于δi和∈i独立于其它子***,因此对每个子***选择不同的恒定协同仿真时间增量是可行的。可以在每个子***的每个通信点处更新协同仿真时间增量,从而实现局部和自适应协同仿真时间增量控制(107)。下面列出了三种可能的选择:
选择1:与大多数众所周知的步长控制一样,如果大于给定阈值,则利用误差指示符:
用于减小协同仿真时间增量的目的,并且如果小于给定阈值则增加协同仿真时间增量。
选择2:如果基于δT的数值步骤可用,则策略是对求值,然后计算:
作为所需的误差指示符。采用协同仿真时间增量的策略与上面的选择1相同,只是误差指示符变为
选择3:基于模型的步长控制利用外推输出变量的斜率并计算误差指示符
其中表示第i子***在局部输出变量外推的斜率。确定协同仿真时间增量的策略与上面的选择1中的策略相同,只是误差指示符变为
注意:上述所有三个选择都基于局部变量,因此可以局部地确定协同仿真时间增量,对每个子***都是独立的。对于实际问题,可以实施所有选择的附加组合。
为了确保该预处理协同仿真算法的隐含性质,表示为(图2中的曲线图204)的对近似精确输出(图2中的曲线图203)随下一协同仿真时间增量的未来进展的预测(参见图1中的步骤108)是必要的。根据可用信息,用于预测未来进展有两种选择:
选择1:执行基于(全局)模型的外推法,其基于(全局)组合的动态矩阵和输入矩阵(等式16)
其中用于初始值问题的解(等式25)的初始条件源于求解误差微分方程,它包含:
选择2:基于精确输出(图2中的曲线图203)的近似值和在耦合时刻之前的可用数据来执行基于(局部)信号的外推法(图2中的曲线图204)。局部意味着每个子***都可以独立执行自己的外推法。众所周知的外推技术有很多种,例如使用信号的时间导数的多项式外推。有许多众所周知的计算导数的方法;本文的提议是使用最近提出的DELC-方法,参见Genser-2017。
值得注意的是,因为考虑了子***的交叉耦合效应,这对于处理刚性***积分是必不可少的,所以选择1是优选的。
在基于近似输出203预测未来进展204之后,下一协同仿真时间增量的输入201必须由全局或局部优化109确定。局部意味着,可以在不同的计算节点301处局部计算307这部分预处理协同仿真方法,并且在该算法的该部分中不需要全局组合的矩阵。通过经过下一协同仿真时间增量最小化以下目标函数来完成优化:
由于该优化109和得到的输入变量201也是在下一协同仿真增量之前的耦合时刻计算的,因此该方法称为预处理协同仿真方法。注意,在处理DAE子***的特定情况下,代数子***方程如(等式11)必须被视为输入优化中的附加约束。以下五种选择是可能的。
选择1:下一协同仿真时间增量的输入201可以由能量守恒装置确定,其中预测未来进展204对下一协同仿真时间增量的积分和输入201对下一协同仿真时间增量的积分等于:
选择2:可以通过显式求解最小化问题来确定对下一协同仿真时间增量的输入201(等式27)。通过离散化最小化问题(等式27)例如通过协同仿真时间增量ΔT来确定输入,从而得到显式代数方程:
其中表示与局部替换子***的动态矩阵和输入矩阵对应的众所周知的转换矩阵。该等式基于常数(零阶保持)输入变量201,即对下一协同仿真时间增量的恒定输入值,如图2所示,但是这可以推广到其它形式/种类的输入201外推,例如一般来说,一阶保持或一系列的值(为了简单起见,这里省略了)。
选择3:下一协同仿真时间增量的输入201可以通过将最小化问题(等式27)解决为一般的变分方法来确定。
选择4:在另一方面,输入201通过在流程图100中引入附加部分113,可以迭代方式确定,而无需求解子***308。在确定输入109之后并且在子***103的局部仿真之前,对于下一协同仿真时间增量,通过使用重新定义的离散误差迭代求解误差微分方程若干次:
在此基础上,在协同仿真增量之前的耦合时刻处迭代地确定新的输入变量201。
选择5:可以通过在下一协同仿真时间增量上利用协同仿真子***的计算输出变量202,(真正地)迭代地确定下一协同仿真时间增量的输入(图2中的曲线图201)。通过这种方法,对各个子***(真正地)迭代地进行多次求解。与上面提到的其它非迭代协同仿真选择相比,这将产生迭代协同仿真方法。执行迭代直到达到预定义的精度阈值。
以上部分描述了预处理协同仿真算法。根据可用的计算体系结构,如图3所示,存在两种实施的可能性:中央式主设备304方法和分布式主设备304、307方法。
选择1:中央式主设备304方法的特征在于在专用计算节点301上运行的单个计算机可执行程序中实现整个预处理协同仿真算法100。该方法可被视为单个主方法。其中如果所有必要的数据即子***的输入和输出变量及其时间导数,以及可选的各个(替换)子***的偏导数由子***本身提供,则它们通过通信网络302被传送到单个主算法程序304。在这种情况下,中央式主设备304方法可选地分别基于子***的输入201变量和输出202变量及其时间导数识别各个子***308的替换子***矩阵(等式10-11)、组合所需的矩阵(等式15-16,101)、对误差微分方程106求值、确定下一协同仿真时间增量107、对近似精确解108的未来进展执行预测并且在当前耦合时刻优化下一协同仿真时间增量109的输入变量。
为了实现预处理协同仿真,必须考虑运行中央式主程序304、计算各个子***111的协同仿真时间增量和传送数据112的专用顺序。这由如下所述控制各个子***308的中央式主程序304确保。在第一种情况下,在每个耦合时刻Tk,主算法分别收集子***308的参数的初始输入201和输出202变量及其时间导数,以及如果在子***的各个计算节点处确定,则可选地收集各个(替换)子***的偏导数(等式10-11),基于输入201和输出202变量和它们的时间导数来可选地计算104替换子***的所需偏导数(等式10-11)并且组合105所需的矩阵(等式15-16、101),对误差微分方程106求值,确定下一协同仿真时间增量107,执行近似精确解108的未来进展的预测以及优化下一协同仿真时间增量的输入变量109。在第二步骤中,确定的输入201和偏导数存储到存储器305,通过通信网络110发送到相应子***,这直接触发子***协同仿真步骤111的执行。在当前子***时间增量结束时,子***仿真被暂停并且得到的输出变量202通过通信网络被发送回中央式主节点301并由中央式主算法304存储110,这直接触发下一协同仿真步骤的执行。该过程重复用于计算后续协同仿真时间增量,直到完成整个协同仿真,其中子***仿真被中央式主设备304方法强制停止。
选择2:分布式主设备304、307方法的特征在于将预处理协同仿真算法分成在不同计算节点上运行的若干部分,以便在速度方面改善整体仿真性能。第一部分由在专用计算节点上运行的计算机可执行程序304表示,其中所有必要数据即子***308的各自输入201和输出202变量及其时间导数,以及如果在子***的各个计算节点处确定,则可选地来自各个(替换)子***的偏导数(等式10-11)通过网络302被传送到该部分主算法304。该部分算法基于输入201变量、输入导数以及输出202变量可选地计算104各个子***308的所需偏导数(等式10-11)并且组合105所需矩阵(等式15-16,101),对误差微分方程106求值,可选地确定局部下一协同仿真时间增量107并且可选地在当前耦合时刻对下一协同仿真时间增量的近似精确解108的未来进展执行(基于模型的)全局预测。其它部分由在也执行子***308的计算节点301上运行的计算机可执行程序307表示,其中这些部分中的每一个基于子***的输入201、输入导数和输出202变量及其时间导数局部并且可选地计算104各个子***308的所需偏导数(等式10-11),可选地确定局部下一协同仿真时间增量107,可选地执行下一协同仿真时间增量的近似精确解108的未来进展的(基于模型或基于信号的)全局预测以及在当前耦合时刻执行下一协同仿真时间增量的输入201变量的优化109。
为了实现预处理协同仿真100,必须考虑运行分布式主程序304、307,计算各个子***308的协同仿真时间增量111和通过通信网络302传送数据的专用顺序。这由如下所述控制各个子***308的分布式主程序304、307确保。
在第一种情况下,在每个耦合时刻Tk,主算法304分别收集子***308的初始输入201和输出202变量及其时间导数,以及如果在子***的各个计算节点处确定,则可选地收集各个(替换)子***的偏导数(等式10-11),基于输入201和输出202变量和它们的时间导数可选地计算104各个子***308的替换子***的偏导数(等式10-11)并且组合105所需的矩阵(等式15-16、101),对误差微分方程106求值,可选地确定局部下一协同仿真时间增量107,并且可选地执行近似精确解108的未来进展的(基于模型的)预测。与中央式主方法相比,在第二步骤中,可选地,确定的精确解204或近似精确解108的(基于模型的)预测未来进展被发送到子***计算节点301处的相应局部主设备307,其中可选地,(基于模型或基于信号)局部预测近似精确解的未来进展;可选地,确定下一协同仿真时间增量107以及优化109下一协同仿真时间增量的输入变量201。在局部优化109之后,得到的输入变量201被存储并且通过通信网络302传送110到主设备304的另一部分,并且触发111子***协同仿真步骤的执行。在当前子***时间增量结束时,暂停子***仿真;可选地,所需的子***偏导数被局部计算并存储在存储器305中,并且得到的输出变量202被发送回分布式主程序304,这直接触发下一协同仿真步骤的执行。该过程重复用于计算后续协同仿真时间增量,直到完成整个协同仿真,其中子***仿真被分布式主控强制停止。
以下部分描述了用于执行预处理协同仿真方法的相关协同仿真装置300。图3示出协同仿真装置的体系结构,其通常由不同的计算节点301和通信网络302组成。
计算节点301包括至少一个中央处理单元、CPU 303、存储器305和网络接口卡(NIC)306。可以指示计算节点自动执行在计算机可执行程序中定义的任意算术或逻辑操作序列。一方面,计算节点的存储器305用于存储立即使用的信息,以便执行算术或逻辑运算(存储在随机存取存储器、RAM存储装置中)并且另一方面用于存储程序和相关数据(存储在硬盘驱动器、HDD存储装置中)。网络接口卡306是将计算节点连接到计算节点302的网络的计算节点的硬件组件,网络接口卡306由网络接口控制器组成,该网络接口控制器用于通过利用诸如TCP/IP、UDP、CAN的专用通信协议经由局域网(LAN)或广域网(WAN)进行数据传输或用于无线通信。采用基于GSM/EDGE和UMTS/HSPA技术的蓝牙或LTE。对于实时应用,通常实施EtherCAT或TT-Ethernet。
为了实现预处理协同仿真方法,概述的算法100、200在用于中央式或分布式主方法的计算机可执行程序304、307内实现。子***仿真模型通过专用仿真工具(子***)308内的定制求解器来求解。在专用协同仿真场景的情况下,不同的计算机可执行算法304、307、308分布在现有计算节点301的网络上,而且多个计算机可执行程序可以在单个计算节点上运行。
在预处理协同仿真方法的示例性应用中,主程序304由相应计算节点301的中央处理单元303执行,并且在启动主程序304之后的第一步骤中,处理器303进行计算所有子***101的(替换)子***矩阵。原始子***的可选地存储的偏导数从局部HDD存储器读取,或者分别基于子***的可用输入201和输出202变量及其时间导数通过利用***识别方案,例如通过应用子空间识别方法可选地确定以计算104各个(替换)子***308的所需偏导数(等式10-11)并组合105所需矩阵(等式15-16、101)。处理器随后进行将得到的矩阵写入计算节点的局部RAM存储器。这些矩阵由主程序的后续指令用于对误差微分方程求值、近似计算精确输出变量106、随后确定下一协同仿真时间增量107的长度,用于预测下一协同仿真时间增量的精确输出变量108的未来进展,以及用于优化下一协同仿真时间增量的输入变量109。对于这些计算,主程序304的指令使处理器303执行相关的算术和逻辑运算以及对局部RAM或HDD存储器305执行变量的中间读取和写入。
在其在分布式计算网络300中实现的分布式协同仿真场景的情况下,不同的计算机可执行程序(主设备304、307和若干子***仿真程序308)被分配到计算节点的网络内的不同计算节点301。主计算节点301的处理器303从存储器读取相应值并且迫使网络接口卡306的网络接口控制器通过利用实施的通信网络302和相应通信协议将输入变量201和可选的它们的时间导数分别传输到各个子***仿真计算节点301。一旦在子***计算节点301处接收到传输的数据,网络接口卡306上的相应网络接口控制器就指示新输入变量到达子***仿真308,子***仿真308将这些值存储到局部存储器305并触发协同仿真时间增量111的执行。在协同仿真时间增量结束时,各个子***仿真308的得到的输出变量202被存储到局部存储器305中。由局部处理器303执行的子***仿真程序308通过网络接口卡306由局部网络接口控制器将输出变量传输到主计算节点301。一旦主计算节点接收到传输的数据,网络接口卡306上的相应网络接口控制器就指示新输出变量201到达主程序304,主程序304将这些值写入局部存储器305并且触发下一协同仿真时间增量的执行。
另一种重要情况是实时应用。本文公开的预处理协同仿真方法主要是针对非迭代协同仿真而开发的,因此,该方法具有确定的运行时行为并满足实时应用的主要要求。一方面,该方法可以应用于在单个计算节点上实现时间触发的协同仿真,另一方面,该方法可以在分布式实时协同仿真场景中实施,其中多个实时计算节点301通过适当的(能够实时的)通信网络302,例如EtherCAT、TT-Ethernet、UDP、CAN或LTE 5G连接。在这种情况下,实现各个子***之间的异步通信,即各个子***由相应计算节点的计数器(时钟)定时触发。由于所使用的计算硬件和程序控制的操作***的的调度程序确保了不同计算机可执行程序的实时行为,因此各个子***的所需输入和输出变量以及可选的偏导数及时可用于正确执行预处理协同仿真方法。
因此,根据本发明的协同仿真计算装置包括:单个或多个计算节点301,其通过通信网络302连接到计算节点的网络;存储器区域305,其用于存储各个(替换)子***的输入变量、输入变量导数、输出变量和输出导数变量、计算的偏导数(等式10-11)以及组合的所需矩阵(等式15-16);以及处理器,其访问计算节点301的存储器305并被配置为执行发明方法。
所描述的细节表示图1中描绘的流程图100的基础。该流程图大致分为三个主要块:通过利用协同仿真装置,计算所需矩阵101、确定下一协同仿真时间增量102的输入变量和执行下一协同仿真时间增量103。超级块101包括分别基于子***的输入201和输出202变量及其时间导数计算104各个(替换)子***308的所需偏导数(等式10-11),并且组合105所需的矩阵(等式15-16、101)。
超级块102包括使用计算的全局组合的矩阵101对全局误差微分方程106求值来近似计算所有子***的精确输出变量并且可选局部地确定足够的协同仿真时间增量107,以及可选地局部地预测输出变量108的未来进展。这些预测的输出变量108确保了预处理方法的隐含特性,并且用作可选地局部优化下一协同仿真时间增量的输入变量109的基础。
超级块103包括由协同仿真装置110存储和传送确定的输入变量,其触发各个子***以执行下一协同仿真时间增量111。在计算协同仿真时间增量之后,得到的输出变量由协同仿真装置112传送和存储,其通过从101开始重复该过程来触发后续协同仿真时间增量的计算。
最后,通过示例分析,结果如图4所示。执行了三种不同的仿真:作为比较参考的单片示仿真、通过应用最简单但最常用的耦合方法的协同仿真(称为零阶保持,ZOH)和表明本文概述的发明在准确性和稳定性方面的优势和性能改进的预处理协同仿真。选择由两个子***308组成的整体刚性***。为简单起见,示出单个输出变量。垂直线表示相对于恒定的协同仿真时间增量使用的通信时间点(耦合时间点Tk)。图4指出ZOH方法由于ZOH引入协同仿真离散误差而发散,并且预处理协同仿真方法的结果几乎可以与单片式方案完全一致,这表明通过所公开的方法几乎消除协同仿真离散误差。
出于演示目的,预处理协同仿真方法示例性地应用于分布式车辆仿真和测试环境,包括安装在经典动力系测试台上的真实车辆和嵌入在虚拟环境中的虚拟车轮。由于车轮滑动的动力学特性与车辆的动力学特性存在几个数量级的显著差异,因此产生高刚度。实际车辆与虚拟车轮之间的机械连接由四个半轴表示,其中每个半轴连接到转矩控制的电子驱动器,即所谓的动力计。每个电子驱动控制器的设定转矩由(包括建模摩擦、道路坡度等的)虚拟环境内的相应虚拟车轮基于真实车辆的相应半轴的测量转动速度(例如,第一参数v)来确定。每个半轴转矩(例如,第二参数F)和转动速度(角速度)表示耦合信号,即功率键合。车轮仿真的输入信号是转动速度信号,输出信号是得到的转矩。由于整体仿真是实时进行的,需要进行并行协同仿真,因此在每个耦合时刻,必须对转动速度信号和转矩信号进行外推。由于外推法,引入了本文所述的协同仿真离散误差,并且半轴上的能量传递失真,这对最终模拟和测试性能产生了负面影响。特别地,较高的外推车轮转动速度将对该协同仿真时间增量产生更高的反转矩响应。因此,对源***(即动力***测试台上的车辆)的反馈更高,因此可以加速超过其应有的速度。
因为转动速度是界面上的信号,所以与图4相比,车轮也会加速太多。这在短期(超过当前协同仿真时间增量Tk)和长期(在整个试运行期间)内显著影响了测试结果,例如:车辆能耗。经典/典型的缓解过程是利用非常小的采样时间(即协同仿真时间增量),从而产生大量过采样(10kHz),并增加高性能软件和硬件组件(例如EtherCAT)实时总线***)的成本。
通过应用本文公开的预处理协同仿真方法,在计算协同仿真时间增量之前补偿协同仿真离散误差,从而消除了上述问题。在这种情况下,安装在动力传动系测试台上的真实车辆表示计算节点,并且在虚拟环境中模拟的车轮被分配给另一计算节点;如图3所示,计算节点通过通信网络连接。特别地,在计算实际协同仿真时间增量Tk的车轮转矩响应之前,根据图1和图2修改速度信号以及各个半轴处的转矩信号,从而得到如图4所示的稳定效果。通过这种方式,车轮按预期加速,并且失真减小到最小,这使得能够应用更大的协同仿真时间增量,因此,使用更便宜的软件和硬件组件。
应注意的是,术语“包括”不排除其它元件或步骤,并且“一”或“一个”并不排除多个。还可以组合与不同实施例关联的描述的元件。还应注意的是,权利要求中的附图标记不应被解释为限制权利要求的范围。

Claims (14)

1.一种基于预处理协同仿真***模拟真实实体模型的方法,所述方法包括:
提供第一子***(308),其在第一方程组的基础上模拟所述真实实体模型的至少一个第一参数(v),
其中所述第一方程组被配置为用于在至少一个第二参数(F)的基础上来确定所述第一参数(v),
提供第二子***(308),其在第二方程组的基础上模拟所述真实实体模型的至少一个第二参数(F),
其中所述第二方程组被配置为用于在至少一个第一参数(v)的基础上来确定所述第二参数(F),
其中在第一耦合时间点(Tk-1)通过外推法来估计所述第二子***(308)中所述第一参数(v)的第一输入值(v_in)和所述第一子***(308)中所述第二参数(F)的第二输入值(F_in),
由所述第一子***确定所述第一参数(v)的第一输出值(v_out)和由所述第二子***确定所述第二参数(F)的第二输出值(F_out),
在后续第二耦合时间点确定所述第一参数(v)的估计的第一输入值(v_in)与所述第一参数(v)的确定的第一输出值(v_out)之间的第一误差和所述第二参数的估计的第二输入值(F_in)与所述第二参数的确定的第二输出值(F_out)之间的第二误差,
定义基于所述第一子***的偏导数的所述真实实体模型的第一局部替换模型,
定义基于所述第二子***的偏导数的所述真实实体模型的第二局部替换模型,
其中在所述第一局部替换模型和所述第二局部替换模型的基础上,定义了误差微分方程,
其中所述误差微分方程被配置为接收所述第一误差和所述第二误差,用于确定所述第一参数(v)随时间的第一特性和/或所述第二参数(F)随第一耦合时间点(Tk-1)与后续第二耦合时间点(Tk)之间的时间的第二特性,
其中在所述第一参数(v)的所述第一特性和/或所述第二参数(F)的所述第二特性的基础上,在所述后续第二耦合时间点(Tk)优化所述第一参数(v)的所述第一输入值(v_in)和/或所述第二参数(F)的所述第二输入值(F_in)用于模拟所述第一子***中的所述第一参数(v)和/或所述第二子***中的所述第二参数(F)。
2.根据权利要求1所述的方法,
定义基于所述第一子***(308)的偏导数和所述第二子***(308)的偏导数的所述真实实体模型的全局替换模型,
其中所述全局替换模型被配置为用于估计所述第一参数(v)和/或所述第二参数(F)在所述第二耦合时间点(Tk)与第三耦合时间点(Tk+1)之间的未来特性,使得可以确定在所述第二耦合时间点(Tk)的所述第一参数(v)的下一第一输入值(v_in)和所述第二参数(F)的下一第二输入值(F_in)。
3.根据权利要求2所述的方法,
其中所述全局替换模型是基于所述第一子***(308)和所述第二子***(308)的转换,通过所述第一参数(v)的所述第一输出值(V_out)和所述第二参数(F)的所述第二输出值(F_out)的时间推导得到的。
4.根据权利要求1至3中的任意一项所述的方法,
其中所述误差微分方程的解通过显式或隐式数值求解器来近似计算。
5.根据权利要求1至4中的任意一项所述的方法,
其中通过外推法的估计是一种用于预测近似计算的精确输出变量的基于模型的外推法。
6.根据权利要求1至5中任一项所述的方法,
其中通过外推法的估计是一种用于预测所述近似计算的精确输出变量的基于信号的外推法。
7.根据权利要求1至6中的任意一项所述的方法,
其中优化(109)所述输入变量(201)基于变分方法。
8.根据权利要求1至7中的任意一项所述的方法,
其中通过使用子空间***识别算法,即时计算所述第一子***(308)的偏导数和所述第二子***(308)的偏导数。
9.根据权利要求1至8中任一项所述的方法,其中在所述第一误差和所述第二误差的基础上调整所述第一耦合时间点(Tk-1)与所述第二耦合时间点(Tk)之间的时间增量。
10.一种基于预处理协同仿真***(100)模拟真实实体模型的模拟装置,所述装置包括:
第一子***单元,其具有在第一方程组的基础上模拟所述真实实体模型的至少一个第一参数(v)的第一子***(308),
其中所述第一方程组被配置为用于在至少一个第二参数(F)的基础上确定所述第一参数(v),
第二子***单元,其具有在第二方程组的基础上模拟所述真实实体模型的至少一个第二参数(F)的第二子***(308),
其中所述第二方程组被配置为用于在至少一个第一参数(v)的基础上确定所述第二参数(F),
估计单元,其被配置为在第一耦合时间点(Tk-1)通过外推法来估计所述第二子***(308)中所述第一参数(v)的第一输入值(v_in)和所述第一子***(308)中所述第二参数(F)的第二输入值(F_in),其中所述第一参数(v)的第一输出值(v_out)由所述第一子***(308)确定和所述第二参数(F)的第二输出值(F_out)由所述第二子***(308)确定,
误差确定单元,其被配置为在后续第二耦合时间点(Tk)确定所述第一参数(v)的估计的第一输入值(v_in)与所述第一参数(v)的确定的第一输出值(v_out)之间的第一误差和所述第二参数的估计的第二输入值(F_in)与所述第二参数的确定的第二输出值(F_out)之间的第二误差,
误差微分方程单元,用于定义基于所述第一子***(308)的偏导数的所述真实实体模型的第一局部替换模型,并且用于定义基于所述第二子***(308)的偏导数的所述真实实体模型的第二局部替换模型,其中在所述第一局部替换模型和所述第二局部替换模型的基础上,误差微分方程由所述误差微分方程单元来定义,
其中所述误差微分方程被配置为接收所述第一误差和所述第二误差,用于确定所述第一参数(v)随时间的第一特性和/或所述第二参数(F)随所述第一耦合时间点(Tk-1)与后续第二耦合时间点(Tk)之间的时间的第二特性,以及
优化单元,其被配置为在所述第一参数(v)的所述第一特性和/或所述第二参数(F)的所述第二特性的基础上,在所述后续第二耦合时间点(Tk)优化所述第一参数(v)的所述第一输入值(v_in)和/或所述第二参数(F)的所述第二输入值(F_in)用于模拟所述第一子***(308)中的第一参数(v)和/或所述第二子***(308)中的第二参数(F)。
11.根据权利要求10所述的模拟装置,进一步包括:
单个或多个计算节点(301),其通过通信网络(302)连接到计算节点的网络;
存储器区域(305),存储所述第一参数的所述输入值和所述第二参数的所述输入值、所述偏导数、所述第一参数和所述第二参数的输出值,并且特别输出导数变量、子***的计算的偏导数以及第一方程和第二方程;以及
至少一个处理器,访问所述计算节点(301)的存储器(305)并且被配置为执行权利要求1至9中的任意一项所述的方法。
12.根据权利要求11所述的模拟装置,
其中所述计算节点(301)表示实时***,并且异步执行数据传输。
13.一种计算机可读介质,所述计算机可读介质上存储有用于模拟真实实体模型的计算机程序,所述计算机程序在由数据处理器执行时适于执行和/或控制如权利要求1至9中的任意一项所述的方法。
14.一种用于模拟真实实体模型的编程元件,所述编程元件在由数据处理器执行时适于控制如权利要求1至9中的任意一项所述的方法。
CN201910498048.2A 2018-06-07 2019-06-10 预处理协同仿真方法和装置 Active CN110580373B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP18176520.7 2018-06-07
EP18176520.7A EP3579126A1 (en) 2018-06-07 2018-06-07 Co-simulation method and device

Publications (2)

Publication Number Publication Date
CN110580373A true CN110580373A (zh) 2019-12-17
CN110580373B CN110580373B (zh) 2023-09-15

Family

ID=62597330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910498048.2A Active CN110580373B (zh) 2018-06-07 2019-06-10 预处理协同仿真方法和装置

Country Status (6)

Country Link
US (1) US11238201B2 (zh)
EP (1) EP3579126A1 (zh)
JP (1) JP7402482B2 (zh)
KR (1) KR20190139161A (zh)
CN (1) CN110580373B (zh)
CA (1) CA3045389A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611536A (zh) * 2020-05-19 2020-09-01 浙江中控技术股份有限公司 数据处理方法、装置、存储介质及电子设备
CN111897300A (zh) * 2020-07-31 2020-11-06 上海交通大学 一种基于opc-ua的软/硬件联合仿真***及其自适应协同方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3454234A1 (de) * 2017-09-06 2019-03-13 dSPACE digital signal processing and control engineering GmbH Verfahren zum bereitstellen einer echtzeitfähigen simulation für die steuergerätentwicklung und simulationsvorrichtung für die steuergerätentwicklung

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030103089A1 (en) * 2001-09-07 2003-06-05 Karthik Ramani Systems and methods for collaborative shape design
CN1491394A (zh) * 2001-08-14 2004-04-21 ���ܿ���ϵͳ���޹�˾ 时序不灵敏及无假信号逻辑***和方法
EP1612979A2 (fr) * 2004-06-30 2006-01-04 Alcatel Procédé de re-synchronisation de flux bénéficiant de services d'émulation de circuits, pour un réseau de communications à commutation de paquets
US20070239405A1 (en) * 2004-09-01 2007-10-11 Behrens Clifford A System and method for consensus-based knowledge validation, analysis and collaboration
US20100191694A1 (en) * 2009-01-23 2010-07-29 Rong Pan Collaborative Filtering Systems and Methods
US20100317420A1 (en) * 2003-02-05 2010-12-16 Hoffberg Steven M System and method
CN102081358A (zh) * 2009-12-01 2011-06-01 爱默生过程管理电力和水解决方案公司 改善的分布式工业过程仿真***
CN102184297A (zh) * 2011-05-12 2011-09-14 天津大学 适于微网暂态并行仿真的电气与控制***解耦预测方法
EP2442248A1 (de) * 2010-10-15 2012-04-18 Kompetenzzentrum - Das virtuelle Fahrzeug Forschungsgesellschaft mbH Kopplungsmethodik für nicht-iterative Co-Simulation
CN102982197A (zh) * 2012-10-30 2013-03-20 北京华力创通科技股份有限公司 一种多领域协同分布式仿真***
US20130124181A1 (en) * 2011-11-11 2013-05-16 Sigrity, Inc. Methods, Systems, and Computer-readable Media for Improving Accuracy of Network Parameter in Electromagnetic Simulation and Modeling
CN103530439A (zh) * 2012-06-29 2014-01-22 达索***公司 利用输出变量全导数的协同仿真过程
CN105247422A (zh) * 2013-04-15 2016-01-13 卓越中心-虚拟车辆研究有限公司 用于对两个子***进行协同仿真的方法和装置
CN105264822A (zh) * 2011-08-25 2016-01-20 西门子公司 用于快速离散网络仿真的网络元件加固
CN105628406A (zh) * 2015-12-28 2016-06-01 中南大学 高速列车牵引传动控制***故障注入方法及仿真***
CN105843978A (zh) * 2014-12-18 2016-08-10 达索***西姆利亚公司 基于数据的交互式3d体验
US20170031920A1 (en) * 2015-07-31 2017-02-02 RCRDCLUB Corporation Evaluating performance of recommender system
CN106774208A (zh) * 2016-12-23 2017-05-31 西安交通大学 群视觉机器协同装配方法及模型***
CN106774949A (zh) * 2017-03-09 2017-05-31 北京神州四达科技有限公司 协同仿真交互方法、装置和***

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02226186A (ja) * 1989-02-27 1990-09-07 Toshiba Corp シミュレーション方法
US6110215A (en) * 1998-06-19 2000-08-29 Microsoft Corporation Heightened realism for computer-controlled units in real-time activity simulation
EP1122700B1 (de) * 2000-02-03 2008-11-19 Siemens Aktiengesellschaft Verfahren und Einrichtung zur Konfiguration eines Detektionssystems für Tunnelbrände
JP4988789B2 (ja) * 2009-05-19 2012-08-01 インターナショナル・ビジネス・マシーンズ・コーポレーション シミュレーション・システム、方法及びプログラム
US20120197617A1 (en) * 2011-01-31 2012-08-02 Muris Mujagic Co-Simulation with Peer Negotiated Time Steps
US10755003B2 (en) * 2013-11-08 2020-08-25 Rockwell Automation Technologies, Inc. Time synchronization of signal transmission intervals for simulating a machine in industrial automation
EP3136267A1 (en) 2015-08-25 2017-03-01 Volvo Car Corporation Method and system for control and co-simulation of physical systems

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1491394A (zh) * 2001-08-14 2004-04-21 ���ܿ���ϵͳ���޹�˾ 时序不灵敏及无假信号逻辑***和方法
US20030103089A1 (en) * 2001-09-07 2003-06-05 Karthik Ramani Systems and methods for collaborative shape design
US20100317420A1 (en) * 2003-02-05 2010-12-16 Hoffberg Steven M System and method
EP1612979A2 (fr) * 2004-06-30 2006-01-04 Alcatel Procédé de re-synchronisation de flux bénéficiant de services d'émulation de circuits, pour un réseau de communications à commutation de paquets
US20070239405A1 (en) * 2004-09-01 2007-10-11 Behrens Clifford A System and method for consensus-based knowledge validation, analysis and collaboration
US20100191694A1 (en) * 2009-01-23 2010-07-29 Rong Pan Collaborative Filtering Systems and Methods
CN102081358A (zh) * 2009-12-01 2011-06-01 爱默生过程管理电力和水解决方案公司 改善的分布式工业过程仿真***
EP2442248A1 (de) * 2010-10-15 2012-04-18 Kompetenzzentrum - Das virtuelle Fahrzeug Forschungsgesellschaft mbH Kopplungsmethodik für nicht-iterative Co-Simulation
CN102184297A (zh) * 2011-05-12 2011-09-14 天津大学 适于微网暂态并行仿真的电气与控制***解耦预测方法
CN105264822A (zh) * 2011-08-25 2016-01-20 西门子公司 用于快速离散网络仿真的网络元件加固
US20130124181A1 (en) * 2011-11-11 2013-05-16 Sigrity, Inc. Methods, Systems, and Computer-readable Media for Improving Accuracy of Network Parameter in Electromagnetic Simulation and Modeling
CN103530439A (zh) * 2012-06-29 2014-01-22 达索***公司 利用输出变量全导数的协同仿真过程
CN102982197A (zh) * 2012-10-30 2013-03-20 北京华力创通科技股份有限公司 一种多领域协同分布式仿真***
CN105247422A (zh) * 2013-04-15 2016-01-13 卓越中心-虚拟车辆研究有限公司 用于对两个子***进行协同仿真的方法和装置
CN105843978A (zh) * 2014-12-18 2016-08-10 达索***西姆利亚公司 基于数据的交互式3d体验
US20170031920A1 (en) * 2015-07-31 2017-02-02 RCRDCLUB Corporation Evaluating performance of recommender system
CN105628406A (zh) * 2015-12-28 2016-06-01 中南大学 高速列车牵引传动控制***故障注入方法及仿真***
CN106774208A (zh) * 2016-12-23 2017-05-31 西安交通大学 群视觉机器协同装配方法及模型***
CN106774949A (zh) * 2017-03-09 2017-05-31 北京神州四达科技有限公司 协同仿真交互方法、装置和***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
S. SICKLINGER, V. BELSKY, B. ENGELMANN,等: "Interface Jacobian-based Co-Simulation", pages 418 - 444 *
吴宝贵: "基于仿真分析的复杂机械产品多学科设计优化方法研究" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611536A (zh) * 2020-05-19 2020-09-01 浙江中控技术股份有限公司 数据处理方法、装置、存储介质及电子设备
CN111611536B (zh) * 2020-05-19 2023-04-07 浙江中控技术股份有限公司 数据处理方法、装置、存储介质及电子设备
CN111897300A (zh) * 2020-07-31 2020-11-06 上海交通大学 一种基于opc-ua的软/硬件联合仿真***及其自适应协同方法
CN111897300B (zh) * 2020-07-31 2024-05-24 上海交通大学 一种基于opc-ua的软/硬件联合仿真***及其自适应协同方法

Also Published As

Publication number Publication date
EP3579126A1 (en) 2019-12-11
JP2020004399A (ja) 2020-01-09
JP7402482B2 (ja) 2023-12-21
CA3045389A1 (en) 2019-12-07
US20190377844A1 (en) 2019-12-12
US11238201B2 (en) 2022-02-01
CN110580373B (zh) 2023-09-15
KR20190139161A (ko) 2019-12-17

Similar Documents

Publication Publication Date Title
CN110580373B (zh) 预处理协同仿真方法和装置
US20220326664A1 (en) Improved machine learning for technical systems
CN101882168A (zh) 用于在有限元分析中模拟梁与表面接触的方法和***
JP5723582B2 (ja) スライディング・モード制御方式において、制御器を構成する方法、プログラム及びシステム
CN112632860A (zh) 一种基于强化学习的动力传动***模型参数辨识方法
US9965574B2 (en) CAD-based initial surface geometry correction
JP7416267B2 (ja) 調整システム、調整方法および調整プログラム
US20220358269A1 (en) Simulation execution system, simulation execution method, and computer readable medium
CN115657467A (zh) 风电场尾流控制优化方法、装置、设备及存储介质
EP3582153A1 (en) Generating hybrid models of physical systems
JP4612989B2 (ja) メカトロニクスシステムのシミュレーション方法
JP2011186991A (ja) 常微分方程式を解くための方法、プログラム及びシステム
CN116382093A (zh) 用于模型未知的非线性***最优控制方法及设备
Callejo et al. A hybrid direct‐automatic differentiation method for the computation of independent sensitivities in multibody systems
WO2021006332A1 (ja) 情報処理装置、プログラム、及び算出方法
US11922314B1 (en) Systems and methods for building dynamic reduced order physical models
KR102218146B1 (ko) 연성 하이브리드 동적 시스템의 시뮬레이션을 위한 오프라인 제어 방법 및 시스템
JP2020201626A (ja) 情報処理装置及びプログラム
EP3835894A1 (en) Method and apparatus for configuring a machine controller
Inci et al. Adaptive co-simulation framework exploiting system physics of mechatronic systems
KR101807769B1 (ko) 데스크 탑 기반 실시간 시뮬레이션 장치 및 방법
US20240086598A1 (en) Transforming a model in a first language to a surrogate in a second language for simulation
CN118260852A (zh) 车辆模型生成方法、***、设备及存储介质
CN118192236A (zh) 基于模型预测控制的车辆控制方法及装置
Weber et al. Co-Simulation of Hardware and Software in Palladio

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Graz

Applicant after: Virtual Automotive Research Co.,Ltd.

Address before: Graz

Applicant before: Capability Center - virtual vehicle research Co.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant