CN117008982A - 优化控制系统上的功能的执行的方法及用于该方法的装置 - Google Patents
优化控制系统上的功能的执行的方法及用于该方法的装置 Download PDFInfo
- Publication number
- CN117008982A CN117008982A CN202310286140.9A CN202310286140A CN117008982A CN 117008982 A CN117008982 A CN 117008982A CN 202310286140 A CN202310286140 A CN 202310286140A CN 117008982 A CN117008982 A CN 117008982A
- Authority
- CN
- China
- Prior art keywords
- solution
- solutions
- hardware components
- desirability
- generated
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000006870 function Effects 0.000 claims abstract description 55
- 238000004891 communication Methods 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000010801 machine learning Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 6
- 238000005457 optimization Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000003745 diagnosis Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013398 bayesian method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本公开提供一种优化控制系统上的功能的执行的方法及用于该方法的装置。优化在包括多个硬件组件的控制系统上的控制功能的执行的方法包括如下步骤:决定多个硬件组件的各个硬件组件的处理能力和通信能力;基于多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用多个硬件组件执行控制功能的多个解决方案;基于各解决方案的期望度对生成的多个解决方案进行评分;选择具有最高的期望度得分的解决方案;以及以基于选择的解决方案执行控制功能的方式对控制系统进行控制。
Description
技术领域
本公开涉及控制系统的动作,更详细而言,涉及为了基于硬件组件和硬件组件间的通信连接的特性在多个硬件组件上执行控制功能而优化控制系统。
背景技术
随着用于包含嵌入式硬件和软件的设备的控制系统的开发进展,在设备内使用的硬件组件的开发速度也不断发展。在开发设备的操作系统平台、库或平台上的应用时,操作系统被特定地设计成面向设备中包含的硬件组件(例如传感器、微处理器、摄像机等)。因而,在设计包含新的硬件组件的新模型的情况下,或者在用不同的硬件组件替换现有模型上的硬件组件的情况下,为了保证软件的兼容性和持续的功能性,必须手动更新软件。
发明内容
在设计包含新的硬件组件的设备的情况下,或者在用不同的硬件组件替换现有的设备上的硬件组件的情况下,要求软件工程师手动决定执行处理的“场所”以及在开发操作系统时在设备内发送数据信号的“路径”。此过程需要时间且为劳动密集型,在软件内的测试、模拟较为困难,在现有的操作系统平台中装入硬件组件的速度受到限制。
本公开提供一种问题解决架构,其事先静态地或在执行时动态地决定执行针对问题的解决方案的“场所”和“路径”。
根据本公开的一方案,用于优化在包括多个硬件组件的控制系统上的控制功能的执行的方法包括如下步骤:决定多个硬件组件的各个硬件组件的处理能力和通信能力;基于多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用多个硬件组件执行控制功能的多个解决方案;基于各解决方案的期望度对生成的多个解决方案进行评分;选择具有最高的期望度得分的解决方案;以及以基于选择的解决方案执行控制功能的方式控制控制系统。
该方法能够还包括为了增大各解决方案的期望度而对生成的多个解决方案进行优化的步骤。
该方法还能够包括如下步骤:从生成的多个解决方案中获得1个以上的有效的解决方案,有效的解决方案具有使用多个硬件组件执行控制功能的能力;以及使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正有效的解决方案。
该方法能够还包括如下步骤:使用机器学习,以改善各解决方案的期望度得分的方式修正生成的多个解决方案;以及从具有最高的期望度得分的已修正的多个解决方案中选择1个解决方案作为所选择的解决方案。
该方法还能够包括如下步骤:在预先决定的期间中生成多个解决方案。在期间结束时具有最高的期望度得分的解决方案能够被选择为所选择的解决方案。
该方法还能够包括响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束多个解决方案的生成的步骤。
各个生成的解决方案能够标示多个硬件组件中的执行控制功能的1个以上的硬件组件和向1个以上的硬件组件及从该硬件组件发送数据的路径。
根据本公开的另一方案,在控制系统中能够包括:至少1个存储器,存储指令;至少1个主处理器,构成为执行指令;多个硬件组件,与至少1个主处理器处于通信状态,且各自都包括至少1个处理器。至少1个主处理器可以构成为执行用于进行如下动作的指令:决定多个硬件组件的各个硬件组件的处理能力和通信能力;基于多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用多个硬件组件执行控制功能的多个解决方案;基于各解决方案的期望度,对生成的多个解决方案进行评分;选择具有最高的期望度得分的解决方案;以及以基于所选择的解决方案执行控制功能的方式控制控制系统。
至少1个主处理器能够构成为还执行为了增大各解决方案的期望度而对生成的多个解决方案进行优化的指令。
至少1个主处理器可以构成为还执行用于进行如下动作的指令:从生成的多个解决方案中获得1个以上的有效的解决方案,该有效的解决方案具有使用多个硬件组件执行控制功能的能力;并且使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正有效的解决方案。
至少1个主处理器可以构成为还执行用于进行如下动作的指令:使用机器学习,以改善各解决方案的期望度得分的方式修正生成的多个解决方案;并且从具有最高的期望度得分的已修正的多个解决方案中选择1个解决方案作为所选择的解决方案。
至少1个主处理器可以构成为还执行用于进行如下动作的指令:在预先决定的期间中生成多个解决方案。在期间结束时具有最高的期望度得分的解决方案能够被选择为所选择的解决方案。
至少1个主处理器可以构成为还执行用于进行如下动作的指令:响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束多个解决方案的生成。
各个生成的解决方案标示多个硬件组件中的执行控制功能的1个以上的硬件组件和向1个以上的硬件组件以及从该硬件组件发送数据的路径。
根据本公开的另一方案,非临时性的计算机可读介质能够存储指令,该指令在由电子设备的至少1个处理器执行的时间点,使至少1个处理器执行如下动作:决定多个硬件组件的各个硬件组件的处理能力和通信能力;基于多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用多个硬件组件执行控制功能的多个解决方案;基于各解决方案的期望度对生成的多个解决方案进行评分;选择具有最高的期望度得分的解决方案;以及以基于选择的解决方案执行控制功能的方式控制控制系统。
至少1个处理器可以构成为还执行为了增大各解决方案的期望度而对生成的多个解决方案进行优化的指令。
至少1个处理器可以构成为还执行用于进行如下动作的指令:从生成的多个解决方案中获得1个以上的有效的解决方案,该有效的解决方案具有使用多个硬件组件执行控制功能的能力;并且使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正有效的解决方案。
至少1个处理器可以构成为还执行用于进行如下动作的指令:使用机器学习,以改善各解决方案的期望度得分的方式修正生成的多个解决方案;从具有最高的期望度得分的已修正的多个解决方案中选择1个解决方案作为所选择的解决方案。
至少1个处理器可以构成为还在预先决定的期间中生成多个解决方案。在期间结束时具有最高的期望度得分的解决方案能够被选择为所选择的解决方案。
至少1个处理器可以构成为还执行用于进行如下动作的指令:响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束多个解决方案的生成。
各个生成的解决方案能够标示多个硬件组件中的执行控制功能的1个以上的硬件组件和向1个以上的硬件组件及从该硬件组件发送数据的路径。
以下,与所附附图相关联地说明本公开的示例性的实施方式的特征、优点、技术意义和工业意义,在附图中,同样的附图标记表示同样的要素。
附图说明
图1是一个实施方式的用于优化控制系统上的一个功能的执行的方法的概要的流程图。
图2是一个实施方式的例示的控制系统的简图。
图3是一个实施方式的控制系统的例示的硬件组件的简图。
具体实施方式
本公开的方法提供一种控制系统优化架构,事先静态地或在执行时动态地决定执行1个功能的“场所”和“路径”。在车辆那样的具有复杂的控制系统的设备、在物联网(IoT)上工作的设备等中,可能存在多个硬件组件,该多个硬件组件包括具有执行全部的1个程序或者其子集的能力的计算机处理器和/或面向特定用途的计算机设备。这些组件各自能够使用不同类型的连接而互相连接,能够通过基于不同的软件的机制进行内部通信。各连接类型能够具有受硬件组件的能力限制的不同特性。进而,各硬件组件基于硬件组件内所包含的处理器的类型以及存储器等其他资源的可利用性,能够具有不同的处理能力。所提供的控制系统优化架构能够事先静态地或在执行时动态地决定应如何使用给定的硬件组件以最佳的形式实施所期望的功能。
关于场所以及路径的解决方案决定在哪里执行代码,并且决定如何传输通信。例如,在搭载连接有多个计算机电子控制单元(ECU)的车辆中,在各ECU上以及云内执行代码。一般认为,在1个ECU中,能够在主中央处理单元(CPU)上、加速器、图形处理单元(GPU)上执行代码,并且一般认为能够附着于特定的核以及特定的管理程序、操作系统、进程或线程。为了动态地适应情况(例如冗余需求、功率限制、连通性问题等),可能存在1个或多个代码拷贝。基于地点和路径决定不同功能间的通信机制。例如,一般认为在以太网、Wifi、5G、控制器区域网络(CAN)、共享存储器、管道、循环缓冲器或其他通信机制上,可能发生通信。
图1是一个实施方式的用于优化控制系统上的一个功能的执行的方法的概要的流程图。
参照图1,在动作110中,能够决定控制系统中的多个硬件组件各自的处理能力和通信能力。这能够包括映射功能和通信的拓扑信息。拓扑信息能够包括各个计算机设备,例如CPU、它们的能力(核数、计算能力、可靠性特性等)、它们之间的通信、能够利用的云资源等。
一些通信数据流能够由实际的硬件(例如摄像机、激光雷达、声呐、雷达)生成,另一方面,其他数据流能够通过软件(单独的功能)来生成。由硬件生成的通信同样地能够通过对先前已记录数据流进行重新运行,或者使用软件对硬件进行仿真来进行模拟。
在动作120中,能够在所得到的处理能力和通信能力的制约条件内生成用于执行控制功能的多个解决方案。解决方案中能够包括进行处理的1个以上的场所(例如硬件组件)和在1个以上的场所之间发送数据的路径。
根据一个实施方式,通过进行可以是手动作业输入或由计算机生成的输入的初始推测、以及使用离散的优化、线性规划法等功能优化技术对目的功能进行优化,从而能够生成多个解决方案。
根据另一个实施方式,能够使用随机优化来生成多个解决方案。该实施方式能够进行使用启发式的随机试验。在实现随机优化时,能够通过发现更好的解决方案的概率较高的方法对修正算法教导变换。
根据另一个实施方式,能够使用基于预学习解决方案的机器学习,生成解决方案。预学习解决方案例如通过随机优化、通过伴随目的优化的初始估计、或者通过人进行的交接,能够以计算成本高的方法获得,但本公开并不限定于这些例子。
在动作130中,一旦生成了多个解决方案,就能够确认各解决方案的有效性。即,方法100决定能够基于给定的特性(硬件组件以及硬件组件间的通信路径的特性)来解决问题(进行控制功能)的解决方案是哪个解决方案。
在无法发现有效的解决方案的情况下,验证器(例如SMT求解器)能够输出是什么妨碍了有效的解决方案的发现的诊断。此时,能够通过人的介入或者通过使用机器学习的方法来进行诊断。
在动作140中,能够使用评分算法基于期望度对有效的解决方案进行评分。例如,能够基于用电量、低延迟、安全裕度、无干扰、启用功能、商用信道的饱和度、存在的安全风险低,对有效解决方案进行评分。然而,本公开并不限定于这些例子。
在虽然发现了解决方案但得分不够高的情况下,验证器和评分算法能够输出如下诊断:为了发现过度制约解决方案并妨碍更高评分的设计上的决策,能够由哪个人或者基于机器学习的模型进行分析。
在动作150中,能够对评分后的解决方案进行优化。即,作为用于获得针对问题的更好的解决方案的后续的修正的出发点,能够使用多个评分后的解决方案。根据一个实施方式,能够为了修正而选择最高得分的解决方案。
接下来,能够选择得到更高得分的已修正解决方案作为优化的解决方案。根据一个实施方式,能够选择无效的已修正解决方案作为可进一步优化的优化解决方案,以获得有效的解决方案。由此,能够提供具有更高的得分的解决方案,这样就导出了用于规避局部的优化条件的解决方案算法。
在贝叶斯法等基于机器学习的优化中,也能够进行非最优的修正。这些非最优解决方案能够改善基于机器学习的模型的优化策略。
优化修正可以反复进行,直到达到限制时间为止、直到得到具有超过预先决定的阈值的得分的解决方案为止、直到得分没有显著变化为止、或者直到2个解决方案的期望度得分间的差超过阈值为止。
在对解决方案进行优化时,能够通过程序来引导各功能的一些特性。例如,能够对代码进行编译和分析,估计执行需要多少时间。与开发者提供信息被输入到算法中同样地,将由该程序引导的信息作为对算法的输入处理。
在对解决方案进行优化时,也能够通过程序来引导各个通信的一些特性。例如,具有不同的安全级别的2个功能是可通信的,但只能使用支持更高的安全级别要求(例如具有校验和以及心跳)的通信机制。
在动作160中,能够对优化后的解决方案进行分级。分级能够使用与评分算法类似的算法并基于与评分相同的基准来进行。
在动作170中,能够通过控制系统执行具有最高的等级的解决方案。即,具有最高的等级的解决方案指定进行用于控制功能的必要的处理的1个以上的组件、以及用于向为了进行控制功能而需要数据的场所移动该数据的通信路径。
图2是一个实施方式的控制系统的简图。
如图2所示,控制系统20包含多个硬件组件21、22、23和24、多个通信路径41、42、43、44、45和46以及多个输出设备51和52。
硬件组件21~24各自能够具有不同的特性和能力。例如,硬件组件21~24能够具有不同数量的处理能力、不同类型的处理器、不同数量的存储器和/或对不同资源的访问。然而,本公开并不限定于这些例子。
同样地,通信路径41、42、43、44、45和46各自能够具有不同的特性。例如,各个通信路径可能能够以不同的速度传送数据,能够使用不同类型的加密,和/或可能具有不同的安全级别。然而,本公开并不限定于这些例子。例如,在图2所示的实施方式中,路径41可以提供最高的数据传送速度,路径43可以使用第1技术对数据进行编码,路径44可以使用第2技术对数据进行编码,路径42、45以及46也可以提供低的传送速度。
输出设备51和52能够由控制功能控制。例如,在控制系统20为车辆用的情况下,硬件组件23能够是发动机控制单元(ECU),硬件组件24能够是变速器控制单元(24),输出设备51能够是发动机,输出设备52能够是变速器。
根据一个实施方式,在为了执行控制功能而优化控制系统的方法100中,能够包括:获得用于进行控制功能的处理的优化后的场所的步骤;以及基于硬件组件21~24的处理特性及通信路径41~46的特性而获得用于传输对应的数据的优化后的通信路径的步骤。
图3是一个实施方式的硬件组件的简图。如图3所示,硬件组件300能够包括总线310、处理器320(或至少1个处理器)、存储器330(或至少1个存储器)、存储组件340、输入组件350、输出组件360以及通信接口370。
总线310能够包括能够进行设备300的组件之间的通信的组件。即,总线310是能够在设备300的组件之间传送数据和信息的通信系统或子系统。
处理器320可以以硬件、固件或硬件与软件的组合的形式实现。处理器320能够包括中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、面向特定用途的集成电路(ASIC)或其他类型的处理组件中的至少1者。在一些实施方式中,处理器320包括具有被编程为执行一个功能的能力的1个以上的处理器。
存储器330存储用于供处理器320使用的信息和/或指令。存储器330能够包括随机存取存储器(RAM)、只读存储器(ROM)和/或用于存储信息和/或指令的其他类型的动态或静态存储设备(例如闪速存储器、磁存储器和/或光存储器)中的至少1者。
存储组件340能够存储与设备300的动作和使用相关的信息和/或软件。例如,存储组件340能够与对应的驱动器一起包含硬盘(例如,磁盘、光盘、磁光盘和/或固体盘)、光盘(CD)、数字多功能盘(DVD)、软盘、盒、磁带和/或其他类型的非临时性的计算机可读介质。
输入组件350能够包括使设备300能够借助例如用户输入(例如触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)而接收信息的组件。附加地或替代地,输入组件350能够包括用于感测信息的传感器(例如全球定位系统(GPS)组件,加速度计,陀螺仪和/或致动器)。输出组件360能够包括提供来自设备300的输出信息的组件(例如显示器、扬声器、1个以上的发光二极管(LED)、用于与外部显示器或扬声器连接的接口等)。
通信接口370能够包括使设备300能够经由例如有线连接、无线连接或者有线及无线连接的组合与其他设备进行通信的收发器那样的组件(例如收发器和/或单独的接收机和发送机)。通信接口370使得设备300能够从其他设备接收信息和/或向其他设备提供信息。例如,通信接口370能够包括以太网接口、光接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。通信接口370能够作为控制系统内部的通信路径的一端部,例如图2的通信路径41~46中的任意1个的一端部发挥作用。
设备300能够进行用于执行控制功能的1个以上的处理。设备300能够经由执行存储于例如存储器330和/或存储组件340等非临时性的计算机可读介质中的软件指令的处理器320来执行这些处理。在本说明书中,计算机可读介质被定义为非临时性的存储器设备。存储器设备能够包括单一的物理的存储设备内部的存储器空间或者跨多个物理的存储设备而扩展的存储器空间。
软件指令能够经由通信接口370从其他计算机可读介质或其他设备读入到存储器330和/或存储组件340中。在执行的时刻,存储在存储器330和/或存储组件340内的软件指令能够使处理器320进行本说明书中记载的1个以上的处理。附加地或替代地,能够代替软件指令或以与软件指令组合的形式,使用硬接线式电路来进行在本说明书中记载的1个以上的处理。因而,本说明书中所记载的实现不限于硬件电路和软件的任何具体的组合。
图3所示的组件的数量及布设作为一例而提供。实际上,设备300与图3所示的设备相比,能够包含追加的组件、更少的组件、不同的组件、或者以不同的形式布设的组件。附加地或替代地,设备300的1组组件(例如1个以上的组件)能够进行被说明为由设备300的另1组组件进行的功能的1个以上的功能。
如上所述,实施方式的方法和系统通过反复地生成多个解决方案并基于所期望的基准来选择最好的解决方案,从而优化控制系统的使用。解决方案在最好的解决方案被选择用于执行之前,被增强了1次以上。
以上的公开提供了例示以及说明,但并不意图将实现限定为包罗的方式或者所公开的精确的方式。能够对照以上公开进行修改和变形,它们能够通过实践实现而获得。
在本说明书中使用的组件的用语意在广泛地视为硬件、固件或硬件与软件的组合。
本说明书中记载的系统和/或方法显然能够以不同方式的硬件、固件或硬件与软件的组合来实现。为了实现这些系统和/或方法而使用的实际的专用的控制硬件或软件代码并不限定实现。因而,关于系统和/或方法的动作和行为在本说明书中不提及具体的软件代码地进行了说明,可理解为为了实现系统和/或方法,能够基于本说明书中的说明而设计软件和硬件。
虽然在权利要求中列举和/或在说明书中公开了特征的特定的组合,但这些组合也不意图限定所考虑的实现的公开。实际上,这些特征的大部分能够以在权利要求中没有具体列举和/或在说明书中没有公开的形式进行组合。虽然以下所述的各个从属权利要求可能仅直接从属于1个权利要求,但在所考虑的实现的公开中包括以与权利要求集合中的其他所有权利要求组合的形式的各个从属权利要求。
在本说明书中使用的任何要素、行为或指令只要不是这样明示地记载的,就不应该视为重大的或不可缺少的。同样地,在本说明书中使用的冠词“a”和“an”意在包括1个以上的项目,能够与“1个以上(one or more)”互换使用。进一步地,在本说明书中使用的“组”的用语意在包括1个以上的项目(例如相关项目、非相关项目、相关项目和非相关项目的组合等),能够与“1个以上”互换使用。在意图仅1个项目的情况下,使用“1个”的用语或类似的语言。同样地,在本说明书中使用的“has”、“have”、“having”(具有~)等用语意图作为开放式专业用语。此外,“基于~”的用语除非另有明确记载,否则意在指“至少部分地基于~”。
Claims (21)
1.一种方法,用于优化在包括多个硬件组件的控制系统上的控制功能的执行,其中,
所述方法包括如下步骤:
决定所述多个硬件组件的各个硬件组件的处理能力和通信能力;
基于所述多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用所述多个硬件组件执行所述控制功能的多个解决方案;
基于各解决方案的期望度对生成的所述多个解决方案进行评分;
选择具有最高的期望度得分的解决方案;以及
以基于选择的所述解决方案执行所述控制功能的方式控制所述控制系统。
2.根据权利要求1所述的方法,其中,
所述方法还包括为了增大各解决方案的期望度而对生成的所述多个解决方案进行优化的步骤。
3.根据权利要求1或2所述的方法,其中,所述方法还包括如下步骤:
从生成的所述多个解决方案中获得1个以上的有效的解决方案,所述有效的解决方案具有使用所述多个硬件组件执行所述控制功能的能力;以及
使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正所述有效的解决方案。
4.根据权利要求1~3中任一项所述的方法,其中,所述方法还包括如下步骤:
使用机器学习,以改善各解决方案的所述期望度得分的方式修正生成的所述多个解决方案;以及
从具有最高的期望度得分的已修正的所述多个解决方案中选择1个解决方案作为所述选择的解决方案。
5.根据权利要求1~4中任一项所述的方法,其中,
所述方法还包括在预先决定的期间中生成所述多个解决方案的步骤,
在此,在所述期间结束时具有最高的期望度得分的解决方案被选择为所述选择的解决方案。
6.根据权利要求1~5中任一项所述的方法,其中,
所述方法还包括响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束所述多个解决方案的生成的步骤。
7.根据权利要求1~6中任一项所述的方法,其中,
各个生成的解决方案标示所述多个硬件组件中的执行控制功能的1个以上的硬件组件和在与所述1个以上的硬件组件之间发送数据的路径。
8.一种控制系统,该控制系统包括:
至少1个存储器,存储指令;
至少1个主处理器,构成为执行所述指令;以及
多个硬件组件,与所述至少1个主处理器处于通信状态,且各自都包括至少1个处理器,其中,
所述至少1个主处理器构成为执行用于进行如下动作的指令:
决定所述多个硬件组件的各个硬件组件的处理能力和通信能力;
基于所述多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用所述多个硬件组件执行所述控制功能的多个解决方案;
基于各解决方案的期望度,对生成的所述多个解决方案进行评分;
选择具有最高的期望度得分的解决方案;以及
以基于选择的所述解决方案执行所述控制功能的方式控制所述控制系统。
9.根据权利要求8所述的系统,其中,
所述至少1个主处理器构成为还执行为了增大各解决方案的期望度而对生成的所述多个解决方案进行优化的指令。
10.根据权利要求8或9所述的系统,其中,
所述至少1个主处理器构成为还执行用于进行如下动作的指令:
从生成的所述多个解决方案中获得1个以上的有效的解决方案,所述有效的解决方案具有使用所述多个硬件组件执行所述控制功能的能力;并且
使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正所述有效的解决方案。
11.根据权利要求8~10中任一项所述的系统,其中,
所述至少1个主处理器构成为还执行用于进行如下动作的指令:
使用机器学习,以改善各解决方案的所述期望度得分的方式修正生成的所述多个解决方案;并且
从具有最高的期望度得分的已修正的所述多个解决方案中选择1个解决方案作为所述选择的解决方案。
12.根据权利要求8~11中任一项所述的系统,其中,
所述至少1个主处理器构成为还执行用于在预先决定的期间中生成所述多个解决方案的指令,
在此,在所述期间结束时具有最高的期望度得分的解决方案被选择为所述选择的解决方案。
13.根据权利要求8~12中任一项所述的系统,其中,
所述至少1个主处理器构成为还执行用于进行如下动作的指令:响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束所述多个解决方案的生成。
14.根据权利要求8~13中任一项所述的系统,其中,
各个生成的解决方案标示所述多个硬件组件中的执行控制功能的1个以上的硬件组件和向所述1个以上的硬件组件以及从该硬件组件发送数据的路径。
15.一种非临时性的计算机可读介质,存储指令,所述指令在由电子设备的至少1个处理器执行的时间点,使所述至少1个处理器执行如下动作:
决定所述多个硬件组件的各个硬件组件的处理能力和通信能力;
基于所述多个硬件组件的各个硬件组件的处理能力和通信能力,生成用于使用所述多个硬件组件执行所述控制功能的多个解决方案;
基于各解决方案的期望度对生成的所述多个解决方案进行评分;
选择具有最高的期望度得分的解决方案;以及
以基于选择的所述解决方案执行所述控制功能的方式控制所述控制系统。
16.根据权利要求15所述的非临时性的计算机可读介质,其中,
所述至少1个处理器构成为还执行为了增大各解决方案的期望度而对生成的所述多个解决方案进行优化的指令。
17.根据权利要求15或16所述的非临时性的计算机可读介质,其中,
所述至少1个处理器构成为还执行用于进行如下动作的指令:
从生成的所述多个解决方案中获得1个以上的有效的解决方案,所述有效的解决方案具有使用所述多个硬件组件执行所述控制功能的能力;并且
使用机器学习,以得到具有改善的期望度得分的1个以上的优化的解决方案的方式,修正所述有效的解决方案。
18.根据权利要求15~17中任一项所述的非临时性的计算机可读介质,其中,
所述至少1个处理器构成为还执行用于进行如下动作的指令:
使用机器学习,以改善各解决方案的所述期望度得分的方式修正生成的所述多个解决方案;
从具有最高的期望度得分的已修正的所述多个解决方案中选择1个解决方案作为所述选择的解决方案。
19.根据权利要求15~18中任一项所述的非临时性的计算机可读介质,其中,
所述至少1个处理器还构成为在预先决定的期间中生成所述多个解决方案,
在此,在所述期间结束时具有最高的期望度得分的解决方案被选择为所述选择的解决方案。
20.根据权利要求15~19中任一项所述的非临时性的计算机可读介质,其中,
所述至少1个处理器构成为还执行用于进行如下动作的指令:响应于得到了具有比预先决定的阈值高的期望度得分的解决方案这一情况而结束所述多个解决方案的生成。
21.根据权利要求15~20中任一项所述的非临时性的计算机可读介质,其中,
各个生成的解决方案标示所述多个硬件组件中的执行控制功能的1个以上的硬件组件和向所述1个以上的硬件组件以及从该硬件组件发送数据的路径。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/731,586 | 2022-04-28 | ||
US17/731,586 US20230350354A1 (en) | 2022-04-28 | 2022-04-28 | Method of optimizing execution of a function on a control system and apparatus for the same |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117008982A true CN117008982A (zh) | 2023-11-07 |
Family
ID=85569878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310286140.9A Pending CN117008982A (zh) | 2022-04-28 | 2023-03-22 | 优化控制系统上的功能的执行的方法及用于该方法的装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230350354A1 (zh) |
EP (1) | EP4270189A1 (zh) |
JP (1) | JP7458521B2 (zh) |
CN (1) | CN117008982A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117742361A (zh) * | 2023-12-07 | 2024-03-22 | 哈尔滨工业大学 | 基于smt的航天器多种轨道威胁自主规避机载任务规划方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9389918B2 (en) * | 2008-06-24 | 2016-07-12 | International Business Machines Corporation | Job plan selection for reducing instability of a job within a heterogeneous stream processing application |
JP6149461B2 (ja) | 2013-03-29 | 2017-06-21 | セイコーエプソン株式会社 | 無線通信機器、無線通信方法、無線通信機器制御プログラム、無線通信システム |
JP6658494B2 (ja) | 2016-12-20 | 2020-03-04 | 横河電機株式会社 | 作業支援装置、作業支援システム、作業支援方法、プログラム、および記録媒体 |
GB2613509B (en) * | 2018-10-30 | 2023-11-22 | Motional Ad Llc | Redundancy in autonomous vehicles |
US11510279B2 (en) | 2019-05-14 | 2022-11-22 | Qubercomm Technologies, Inc. | System and method for selecting a path in a communication network |
-
2022
- 2022-04-28 US US17/731,586 patent/US20230350354A1/en active Pending
-
2023
- 2023-01-27 JP JP2023010931A patent/JP7458521B2/ja active Active
- 2023-03-09 EP EP23160982.7A patent/EP4270189A1/en active Pending
- 2023-03-22 CN CN202310286140.9A patent/CN117008982A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2023164278A (ja) | 2023-11-10 |
JP7458521B2 (ja) | 2024-03-29 |
US20230350354A1 (en) | 2023-11-02 |
EP4270189A1 (en) | 2023-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003429B1 (en) | Compile-time scheduling | |
EP3629182A2 (en) | Generating a test script execution order | |
CN117008982A (zh) | 优化控制系统上的功能的执行的方法及用于该方法的装置 | |
US10025789B2 (en) | Data analyzing apparatus and program | |
US20180004564A1 (en) | Non-transitory computer-readable storage medium, live migration method, and live migration apparatus | |
JP6922072B2 (ja) | 異常診断システム及び異常診断方法 | |
US20200122039A1 (en) | Method and system for a behavior generator using deep learning and an auto planner | |
EP3722945B1 (en) | Program operation system and program operation method | |
US11275661B1 (en) | Test generation of a distributed system | |
KR101475640B1 (ko) | 인터럽트 신호 접수 장치 및 컴퓨터 장치 | |
US9582299B2 (en) | Electronic system, onboard modular execution platform and method ensuring partitioning of configurable decision-making rules | |
EP3486811A1 (en) | Simulation device, simulation system, simulation method and simulation program | |
CN114721922B (zh) | 一种服务器集群的性能评估方法、计算设备及存储介质 | |
KR102635546B1 (ko) | 기계 학습을 통한 심볼릭 실행의 탐색 공간 자동 축소 방법 | |
US10467120B2 (en) | Software optimization for multicore systems | |
KR20160070631A (ko) | 프로세서 및 프로세서의 명령어 처리 방법 | |
JP7457589B2 (ja) | 情報処理装置、情報処理方法、および情報処理システム | |
EP3920030A1 (en) | Data processing | |
KR102255470B1 (ko) | 인공신경망 모델의 검증 방법 및 장치 | |
CN114090466A (zh) | 一种指令处理装置、方法、计算机设备及存储介质 | |
JP2021015357A (ja) | 計算機システム、制御方法およびプログラム | |
EP3630318B1 (en) | Selective acceleration of emulation | |
US20230409465A1 (en) | Device and method for operating memory in electronic device | |
CN113110932A (zh) | 规划结果生成方法、装置和电子设备 | |
WO2016194673A1 (ja) | ログ保存条件生成装置、ログ保存条件生成方法 |
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 |