CN108304624B - 人工智能程序员书写数字飞行器源代码的推理决策方法 - Google Patents
人工智能程序员书写数字飞行器源代码的推理决策方法 Download PDFInfo
- Publication number
- CN108304624B CN108304624B CN201810036979.6A CN201810036979A CN108304624B CN 108304624 B CN108304624 B CN 108304624B CN 201810036979 A CN201810036979 A CN 201810036979A CN 108304624 B CN108304624 B CN 108304624B
- Authority
- CN
- China
- Prior art keywords
- source code
- decision
- inference
- digital aircraft
- aircraft
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Automation & Control Theory (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种人工智能程序员书写数字飞行器源代码的推理决策方法,包括:建立推理决策知识库,所述推理决策知识库包括事实库与推理规则库;对数字飞行器源代码样板进行维分解,确定分解后各部分源代码中的推理决策知识库;根据数字飞行器的输入启动推理机制;源代码书写模块根据书写规则生成数字飞行器源代码。本发明将人写程序的决策过程分解,根据每部分的特点将数字飞行器源代码开发重要决策过程智能化,减少了数字飞行器源代码中的人的主观因素,避免了人的重复开发工作,提高了程序开发效率。
Description
技术领域
本发明涉及一种源代码智能书写技术领域,更具体的说是涉及一种人工智能程序员书写数字飞行器源代码的推理决策方法。
背景技术
在航空航天技术领域中,飞行器包括飞机、导弹、卫星、航天飞船等,数字飞行器是与真实飞行器的功能、组成、结构、模式、程序、操作完全一致的且运行在软件模拟的空间环境中的动态模拟仿真系统。
目前工程设计、研发、测试过程中利用数字世界进行仿真验证的比例大大提升,飞行器实物测试成本高,数字飞行器的作用更加明显。然而数字飞行器代码开发量大,加重了数字飞行器仿真的工作量及成本。
因此,如何提供人工开发工作量小,工作效率高的飞行器源代码的推理决策方法是本领域技术人员亟需解决的问题。相对于其他决策方法,推理决策方法的表达方式与人的逻辑习惯一致,格式固定,形式单一,规则间相互较为独立,知识库的建立与扩展较为容易。
发明内容
有鉴于此,本发明提供了一种人工智能程序员书写数字飞行器源代码的推理决策方法,将人写程序的决策过程分解,根据每部分的特点将多种不同的人工智能方法组合起来,自动完成数字飞行器源代码的决策过程,避免了人的重复开发工作,提高了程序开发效率。
为了实现上述目的,本发明采用如下技术方案:
一种人工智能程序员书写数字飞行器源代码的推理决策方法,包括以下步骤:
步骤一,建立推理决策知识库,所述推理决策知识库包括事实库与推理规则库;
步骤二,对数字飞行器源代码样板进行维分解,确定分解后各部分源代码中的推理决策知识库;
步骤三,根据数字飞行器的输入启动推理机制;具体包括:
(1)根据数字飞行器的特点,确定事实库,遍历推理规则库,找到与当前事实匹配的推理规则;
(2)执行推理规则的操作部分,并将其结论作为新事实存入事实库;
(3)利用所述新事实重复步骤(1)和步骤(2),直到没有新的推理规则适用,或者找到适用的书写规则为止,将书写规则保存到书写规则库中。
步骤四,源代码书写模块根据书写规则生成数字飞行器源代码。
优选的,所述推理决策知识库包括从系统界定维建立的系统环境决策知识库、系统功能层决策知识库等,以及从系统维建立的源代码工程组成决策知识库、源代码工程文件定义决策知识库、源代码全局变量使用决策知识库、源代码重要函数使用决策知识库。
所述从系统界定维将数字飞行器源代码样板进行分解,其主要包含环境、功能、组成几个部分决策。其中系统环境选择决策主要包括源代码的实现语言(C、C#、Matlab)、输入输出的数据方式(数据库、文件)、源代码的运行平台(windows、Linux、嵌入式)等方面。功能定义决策主要指数字飞行器仿真粒度决策。
所述从系统维将数字飞行器源代码样板进行分解,其主要包含工程、文件、全局变量、函数几个部分。其中:
(1)所述的数字飞行器源代码工程确定的决策方法,包括单机版/分布式决策、分布式工程划分决策、二维演示选择、三维演示程序选择、其它外围支撑程序选择等几个部分。
(2)所述的数字飞行器源代码文件确定的决策方法,包括工程中文件类型组成决策、工程中文件格式使用决策。其中文件类型组成指工程中有几种不同功能的文件。其中文件格式包括.cpp、.c、.h文件等。
(3)所述的数字飞行器源代码全局变量确定的决策方法,包含是否用全局变量、静态还是外部、定义位置、声明位置等几个部分。
(4)所述的数字飞行器源代码重要函数确定的决策方法,包含重要函数定义位置、声明位置、调用位置、调用流程、输入、输出等几个部分。
优选的,所述事实库用于描述源代码书写过程中程序员的决策依据,记录数字飞行器的特点及仿真要求,包括但不限于环境、功能、工程、文件、全局变量、函数六个层面。
优选的,所述推理规则库用于描述源代码书写过程中程序员的决策,将数字飞行器源代码的推理规则库分解为不同的推理规则,包含但不限于环境、功能、工程、文件、全局变量、函数六个层面。
优选的,所述步骤三中所述数字飞行器的输入指推理决策依据,包括环境、功能、工程、文件、全局变量、重要函数。
优选的,所述推理规则的表示方法为产生式表示法。
优选的,所述步骤四中具体包括如下步骤:
利用源代码书写模块进行书写规则读取、统计分析及源代码书写。
步骤三中所述的书写规则库采用Access、SqlServer、或者acle等主流数据库,不同层次的推理决策结论描述的系列数据表,包括从系统界定维建立的系统环境决策数据表、系统功能层决策数据表等,以及从系统维建立的源代码工程组成决策数据表、源代码工程文件定义决策数据表、源代码全局变量使用决策数据表、源代码重要函数使用决策数据表等
经由上述的技术方案可知,与现有技术相比,本发明的关键的技术是人工智能程序员,人工智能程序员是将人写程序的决策过程分解,根据数字飞行器每部分的特点将多种不同的人工智能方法组合起来,其中知识库推理是解决复杂重大决策重要的方法。将数字飞行器源代码开发重要决策过程智能化,减少源代码书写过程中人的工作,减少了数字飞行器源代码中的人的主观因素,便于管理与交流,克服了现有各类仿真系统开发周期长、重复性开发工作量大和学习成本高的缺点。
因此,本发明提供的人工智能程序员书写数字飞行器源代码的推理决策方法自动化程度高、节省工作量,工作效率高,具有较好的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1附图为本发明提供的人工智能程序员书写数字飞行器源代码的推理决策方法流程图;
图2附图为本发明提供的数字飞行器源代码的推理决策结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
结合附图1,本发明实施例公开了一种人工智能程序员书写数字飞行器源代码的推理决策方法,包括以下步骤:
步骤S101:建立数字飞行器源代码书写推理决策知识库
推理决策知识库的功能是保存程序员书写数字飞行器源代码的所有决策,采用产生式表示法来表示数字飞行器源代码书写的知识,包括事实库与推理规则库。推理决策知识库的描述语言包括但不限于Prolog、LISP、Smalltalk等人工智能编程语言,存储方式为用上述人工智能语言书写的源文件。
步骤S102:对数字飞行器源代码进行维分解,确定分解后各部分源代码中的推理决策的事实库与推理规则库。
事实库用于描述源代码书写过程中程序员的决策依据,记录数字飞行器的特点及仿真相关要求,包括环境、功能、工程、文件、全局变量、函数六个层面:
(1)环境:源代码的功能,源代码是否需要多次开发、是否需要聚类分析神经网络等统计分析算法,源代码的实现语言,输入输出数据的结构,数据量的大小,数据库服务模式,用户的具体要求,数字飞行器的生命周期阶段。
(2)功能:飞行器的生命周期阶段。
(3)工程:是否需要半物理仿真,运行效率,数字飞行器实体间的关系,数字飞行器的类型,数字飞行器的生命周期阶段,数字飞行器的服务对象,运行硬件环境的性能。
(4)文件:工程的类型、代码功能。
(5)全局变量:变量的应用范围、应用频率,全局变量应用的文件类型、文件复用性,文件中是否使用到该全局变量。
(6)函数:函数的功能,函数中用到的变量,内部变量的依赖关系,函数中变量的应用范围、应用频率、以及代码的独立性。
采用三元组(对象,属性,值)或(关系,对象1,对象2)来表示事实。
例如,数字飞行器的类型为卫星的表示方法为(数字飞行器,类型,卫星)。
数字飞行器实体间的关系中具体的一种导弹1装载在到飞机1上的表示方法为(装载,导弹1,飞机1)。
推理规则库用于描述源代码书写过程中程序员的决策。将数字飞行器源代码的推理规则库分解为不同层次的推理规则,包括但不限于环境、功能、工程、文件、全局变量、函数几个部分。其中:
(1)环境选择推理规则:源代码编程语言(C、C#、Matlab)、源代码输入输出数据方式(数据库、文件)、源代码的运行平台(windows、Linux、嵌入式)等方面。
(2)功能定义推理规则:数字飞行器仿真粒度决策。
(3)数字飞行器源代码工程组成的推理规则:单机版/分布式决策、分布式工程划分决策、二维演示选择、三维演示程序选择、其它外围支撑程序选择等几个部分。
(4)数字飞行器源代码文件确定的推理规则:工程中文件类型组成决策、工程中文件格式使用决策。其中文件类型组成指工程中有几种不同功能的文件。其中文件格式包括.cpp、.c、.h文件等。
(5)所述的数字飞行器源代码全局变量确定的推理规则:是否用全局变量、静态还是外部、定义位置、声明位置等几个部分。
(6)所述的数字飞行器源代码重要函数确定的推理规则:重要函数定义位置、声明位置、调用位置、调用流程、输入、输出等几个部分。
推理决策规则的表示方法为产生式表示法,将程序员书写数字飞行器源代码的决策表示成“如果<condition>,则<action>”的形式。Condition被称为前件,它给出了该产生式可否使用的先决条件,由事实的逻辑组合来构成;而action被称为后件,是一组结论或操作,它指当前件condition满足时,应该推出的结论或应该执行的动作。其中结论指的是一条或者多条事实的集合,而操作指的是一条或者一系列可执行的规则。
例如源代码工程组成决策问题分解的推理规则可以表示为:
如果问题类型是<源代码工程组成决策问题>,则可分解为三种操作,即<单机版与分布式决策>、<二维演示、三维演示程序选用决策>以及<其他外围支撑程序选用决策>。
对于每种操作对应的推理规则库分别分析,如下:
1、对于<单机版与分布式决策>推理规则库,包含以下6条推理规则:
如果<需要半物理仿真>,则得到结论<选用分布式>
如果<不需要半物理仿真>并且<单机版运行效率大于分布式>,则得到结论<选用单机版>
如果<分布式运行效率大于单机版>,则得到结论<选用分布式>
如果<飞行器总数小于等于N1>,则得到结论<单机版运行效率大于分布式>
如果<飞行器总数大于N1>,则得到结论<分布式运行效率大于单机版>
如果<选用分布式>,则得到操作<分布式工程划分决策>
相同仿真粒度下,N1跟硬件条件有关的一个数,根据在不同硬件环境中运行时,先通过测试得到N1的具体取值,再存为推理的一个新事实。
2、对于<分布式工程划分决策>推理规则库,包含19条推理规则,可归纳为三大类决定分布式划分方式的推理规则、按部件划分的推理规则和按实体划分的推理规则。
3、分布式划分方式的推理规则包括以下4条:
如果<单个飞行器>,则得到结论<按部件划分>
如果<飞行器集群>,则得到结论<按部件划分>或者<按实体划分>
如果<飞行器集群>并且<需要半物理仿真>,则得到结论<按部件划分>
如果<飞行器集群>并且<不需要半物理仿真>,则得到结论<按实体划分>
4、按部件划分的推理规则包括以下8条:
如果<按部件划分>并且<需要半物理仿真>,则得到结论<按部件类型划分>
如果<按部件类型划分>,则得到结论<一类部件一个工程>
如果<一类部件一个工程运行效率最高>,则得到结论<一类部件一个工程>
如果<所有部件一个工程运行效率最高>并且<不需要半物理仿真>,则得到结论<所有部件一个工程>
如果<所有敏感器、执行机构、控制器各一个工程运行效率最高>并且<不需要半物理仿真>,则得到结论<所有敏感器、执行机构、控制器各一个工程>
如果<按部件划分>并且<飞行器部件总数小于等于N2>,则得到结论<所有部件一个工程运行效率最高>
如果<按部件划分>并且<飞行器部件总数大于N2>并且<飞行器部件总数小于等于N3>,则得到结论<所有敏感器、执行机构、控制器各一个工程运行效率最高>
如果<按部件划分>并且<飞行器部件总数大于N3>,则得到结论<所有部件一个工程运行效率最高>
相同仿真粒度下,N2、N3跟硬件条件有关,根据在不同硬件环境中运行时,先通过测试得到N2、N3的具体取值,再存为推理的一个新事实。
5、按实体划分的推理规则包括以下7条:
如果<按实体划分>并且<每个实体一个工程运行效率最高>,则得到结论<每个实体一个工程>
如果<按实体划分>并且<一类实体一个工程运行效率最高>,则得到结论<一类实体一个工程>
如果<按实体划分>并且<一类实体M个一个工程运行效率最高>,则得到结论<一类实体M个一个工程>
如果<按实体划分>并且<集群中的几个实体有物理上连接关系>,则得到结论<有关系的几个实体一个工程>
如果<按实体划分>并且<飞行器总数小于等于N4>,则得到结论<一类实体一个工程运行效率最高>
如果<按实体划分>并且<飞行器总数大于N4>并且<飞行器总数小于等于N5>,则得到结论<一类实体M个一个工程运行效率最高>
如果<按实体划分>并且<飞行器总数大于N5>,则得到结论<每个实体一个工程运行效率最高>
M的值为实体总个数除以分布式计算机总个数,除不尽的小数部分进一位整数。相同仿真粒度下,N4、N5跟硬件条件有关,根据在不同硬件环境中运行时,先通过测试得到N4、N5的具体取值,再存为推理的一个新事实。
6、对于<二维演示、三维演示程序选用决策>推理规则库,包含以下6条推理规则:
如果<飞行器包含对地观测载荷>,则得到结论<选用载荷图像二维演示界面>
如果<概念设计阶段>并且<选用二维可定制界面>,则得到结论<界面参数包括姿态轨道等系统级参数>
如果<方案设计阶段>或者<详细设计阶段>并且<选用二维可定制界面>,则得到结论<界面参数包括姿态轨道等系统级参数>并且<界面参数包括各子系统部件参数>
如果<服务对象为设计人员>,则得到结论<选用二维可定制界面>
如果<服务对象为飞行器使用人员>或者<服务对象为领导>或者<服务对象为其他非专业人士>,则得到结论<选用三维演示程序>或者<选用载荷图像二维显示界面>或者<选用星下点轨迹二维显示界面>
如果<硬件条件不支持三维演示>,则得到结论<不选用三维演示>
其他外围支撑程序主要包括:动力学归档、设备归档、遥测、遥控、数据注入、故障注入、批处理等,<其他外围支撑程序选用决策>包含的推理的规则与上面类似,不一一列举。
步骤S103:根据数字飞行器输入的变化启用推理机制
采用正向推理机制,主要过程为:
①根据数字飞行器的特点,确定事实库,遍历推理规则库,找到与当前事实匹配的推理规则;
②执行推理规则的操作部分,并将其结论作为新事实存入事实库;
③利用新的事实重复①②两步,直到没有新的推理规则适用,或者找到适用的书写规则为止,将书写规则保存到书写规则库中。
对于数字飞行器源代码工程组成的决策问题,上述第①步的飞行器的特点主要包括:数字飞行器的类型、数字飞行器的应用背景、数字飞行器的运行效率、数字飞行器中各实体间的关系、数字飞行器的服务对象等。
例如输入为:有一个场景中,有2颗遥感卫星(有对地观测载荷),1架飞机,飞机上有1枚导弹,不需要进行半物理仿真,服务对象为领导,硬件条件不支持三维演示,推理出数字飞行器源代码的工程组成。
对于数字飞行器源代码工程组成的决策问题,上述第①步的事实库主要包括问题类型、是否需要半物理仿真、是否是飞行器集群、飞行器总数量、集群中实体间关系、飞行器的类型、服务对象、运行硬件环境的性能等。
当前案例对应的事实库包括:问题类型为源代码工程组成决策问题,不需要半物理仿真,飞行器总数量为4,某特定硬件条件下N1=2(飞行器总数大于N1),N4=4(飞行器总数小于等于N4),飞行器集群,导弹装在飞机上(集群中的导弹与飞机有物理上连接关系),飞行器包含对地观测载荷,服务对象为领导,硬件条件不支持三维演示。
上述第③的书写规则库,对于源代码工程组成推理决策其数据表设计方案如下所述,环境为Access、SqlServer、或者acle等主流数据库,功能是保存推理出的适用的书写规则,主要包括源代码工程组成决策数据表、分布式工程方案决策数据表、分布式工程划分方式(按部件)、分布式工程划分方式(按实体)。
源代码工程组成决策数据表如表1所示。
表1源代码工程组成决策数据表
对于分布式的工程,如表2所示。
表2分布式工程方案决策数据表
上述的分布式工程划分方式(按部件)表如表3所示。
表3分布式工程划分方式(按部件)
所述的分布式工程划分方式(按实体)如表4所示。
表4分布式工程划分方式(按实体)
下面对前面的案例进行具体的推理分析:
对于当前案例根据事实“问题类型为源代码工程组成决策问题”找到匹配的知识,得到三种操作<单机版与分布式决策>、<二维演示、三维演示程序选用决策>、<其他外围支撑程序选用决策>。
遍历<单机版与分布式决策>推理规则库,根据事实“飞行器数量大于N1”,找到匹配的推理规则“如果<飞行器总数小于等于N1>,则得到结论<单机版运行效率大于分布式>”,得到结论<分布式运行效率大于单机版>,存入事实库。
继续遍历<单机版与分布式决策>推理规则库,根据事实“分布式运行效率大于单机版”,找到匹配的推理规则“如果<分布式运行效率大于单机版>,则得到结论<选用分布式>”,得到结论<选用分布式>,将结论存入事实库。
继续遍历<单机版与分布式决策>推理规则库,根据事实“选用分布式”,找到匹配的推理规则“如果<选用分布式>,则得到操作<分布式工程划分决策>”,找到操作<分布式工程划分决策>。
遍历<分布式工程划分决策>推理规则库,根据事实“飞行器集群”、“不需要半物理仿真”,找到匹配的推理规则“如果<飞行器集群>并且<不需要半物理仿真>,则得到结论<按实体划分>”,得到结论<按实体划分>,将结论存入事实库。
遍历<分布式工程划分决策>推理规则库,根据事实“按实体划分”、“集群中的导弹与飞机有物理上连接关系”,找到匹配的推理规则“如果<按实体划分>并且<集群中的几个实体有物理上连接关系>,则得到结论<有关系的几个实体一个工程>”,得到结论<有关系的几个实体一个工程>,推出书写规则“飞机与导弹一个工程”。
遍历<分布式工程划分决策>推理规则库,根据事实“按实体划分”、“飞行器总数小于等于N4”,找到匹配的推理规则“如果<按实体划分>并且<飞行器总数小于等于N4>,则得到结论<一类实体一个工程运行效率最高>”,得到结论<一类实体一个工程运行效率最高>,将结论存入事实库。
遍历<分布式工程划分决策>推理规则库,根据事实“按实体划分”、“一类实体一个工程运行效率最高”,找到匹配的推理规则“如果<按实体划分>并且<一类实体一个工程运行效率最高>,则得到结论<一类实体一个工程>”,得到结论<一类实体一个工程>,推出书写规则“2颗卫星一个工程”。
到此<单机版与分布式决策>的推理执行完毕,得到的书写规则有“选用分布式”、“按实体划分”、“2颗卫星一个工程”、“飞机与导弹一个工程”。下面依次开始执行<二维演示、三维演示程序选用决策>。
遍历<二维演示、三维演示程序选用决策>推理规则库,根据事实“飞行器包含对地观测载荷”,找到匹配的推理规则“如果<飞行器包含对地观测载荷>,则得到结论<选用载荷图像二维演示界面>”,得到结论<选用载荷图像二维演示界面>,得到书写规则“选用载荷图像二维演示界面”。
遍历<二维演示、三维演示程序选用决策>推理规则库,根据事实“服务对象为领导”,找到匹配的推理规则“如果<服务对象为飞行器使用人员>或者<服务对象为领导>或者<服务对象为其他非专业人士>,则得到结论<选用三维演示程序>或者<选用载荷图像二维显示界面>或者<选用星下点轨迹二维显示界面>”,得到结论<选用三维演示程序>、<选用载荷图像二维显示界面>、<选用星下点轨迹二维显示界面>,得到书写规则“选用载荷图像二维演示界面”。根据事实“硬件条件不支持三维演示”,找到匹配的推理规则“如果<硬件条件不支持三维演示>,则得到结论<不选用三维演示>”,得到结论<不选用三维演示程序>。排除有冲突的结论,得到书写规则“选用载荷图像二维显示界面”、“选用星下点轨迹二维显示界面”。
到此<二维演示、三维演示程序选用决策>的推理执行完毕,得到的书写规则有“选用载荷图像二维显示界面”、“选用星下点轨迹二维显示界面”。下面依次开始执行<其他外围支撑程序选用决策>,过程与上面类似,略去,得到书写规则“选用动力学归档”、“选用设备归档”、“选用遥测”、“选用遥控”、“选用数据注入”、“批处理”。
将上述案例推理得出的书写规则,保存到上述格式的各个表中,得到下面表5、表6所示的决策数据作为输出。
根据<单机版与分布式决策>得到的书写规则“选用分布式”,<二维演示、三维演示程序选用决策>得到的书写规则“选用载荷图像二维显示界面”、“选用星下点轨迹二维显示界面”,<其他外围支撑程序选用决策>得到的书写规则“选用动力学归档”、“选用设备归档”、“选用遥测”、“选用遥控”、“选用数据注入”、“批处理”,得到案例输出的源代码工程组成决策数据表,如表5所示。
表5案例输出的源代码工程组成决策数据表
根据<单机版与分布式决策>得到的书写规则有“选用分布式”、“按实体划分”、“2颗卫星一个工程”、“飞机与导弹一个工程”,得到案例输出的分布式工程方案决策数据表,如表6所示,以及案例输出的分布式工程划分方式(按实体),如表7所示。
表6案例输出的分布式工程方案决策数据表
表7案例输出的分布式工程划分方式(按实体)
步骤S104:根据书写规则生成数字飞行器源代码;
具体包括书写规则读取,统计分析,源代码书写几个步骤。
对于上面的案例,读取书写规则,包括表5、表6、表7,统计表中所有的工程,得到的方案中所有的工程有:winSatellite(2颗卫星一个工程)、winAirplane(飞机与导弹一个工程)、载荷图像二维显示界面、星下点轨迹二维显示界面、动力学归档、设备归档、遥测、遥控、数据注入、批处理。源代码书写模块根据工程组成建立工程文件夹、书写相应工程框架文件。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,包括以下步骤:
步骤一,建立推理决策知识库,所述推理决策知识库结构上包括事实库与推理规则库;采用三元组(对象,属性,值)或(关系,对象1,对象2)来表示事实,所述事实库用于描述源代码书写过程中程序员的决策依据,事实库包括问题类型、是否需要半物理仿真、是否是飞行器集群、飞行器总数量、集群中实体间关系、飞行器的类型、服务对象、运行硬件环境的性能;推理规则库用于描述源代码书写过程中程序员的决策;将数字飞行器源代码的推理规则库分解为不同层次的推理规则;
步骤二,对数字飞行器源代码样板进行维分解,确定分解后各部分源代码中的推理决策知识库;
步骤三,根据数字飞行器的输入启动推理机制,所述数字飞行器的输入指推理决策依据;具体包括:
(1)根据数字飞行器的特点,确定事实库,遍历推理规则库,找到与当前事实匹配的推理规则;
(2)执行推理规则的操作部分,并将其结论作为新事实存入事实库;
(3)利用所述新事实重复步骤(1)和步骤(2),直到没有新的推理规则适用,或者找到适用的书写规则为止,将书写规则保存到书写规则库中;
步骤四,源代码书写模块根据书写规则生成数字飞行器源代码。
2.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述推理决策知识库内容上包括从系统界定维建立的系统环境决策知识库、系统功能层决策知识库,以及从系统维建立的源代码工程组成决策知识库、源代码工程文件定义决策知识库、源代码全局变量使用决策知识库、源代码重要函数使用决策知识库。
3.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述事实库用于描述源代码书写过程中程序员的决策依据,记录数字飞行器的特点及仿真要求,包括但不限于环境、功能、工程、文件、全局变量、函数六个层面。
4.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述推理规则库用于描述源代码书写过程中程序员的决策,将数字飞行器源代码的推理规则库分解为不同的推理规则,包含但不限于环境、功能、工程、文件、全局变量、函数六个层面。
5.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述步骤三中所述数字飞行器的输入指推理决策依据,包括但不限于环境、功能、工程、文件、全局变量、重要函数。
6.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述推理规则的表示方法为产生式表示法;
所述的产生式表示法的组成为:“如果<condition>,则<action>”的形式; Condition被称为前件,它给出了该产生式可否使用的先决条件,由事实的逻辑组合来构成;而action被称为后件,是一组结论或操作,它指当前件condition满足时,应该推出的结论或应该执行的动作;其中结论指的是一条或者多条事实的集合,而操作指的是一条或者一系列可执行的规则。
7.根据权利要求1所述的一种人工智能程序员书写数字飞行器源代码的推理决策方法,其特征在于,所述步骤四中具体包括如下步骤:利用源代码书写模块进行书写规则读取、统计分析及源代码书写。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810036979.6A CN108304624B (zh) | 2018-01-15 | 2018-01-15 | 人工智能程序员书写数字飞行器源代码的推理决策方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810036979.6A CN108304624B (zh) | 2018-01-15 | 2018-01-15 | 人工智能程序员书写数字飞行器源代码的推理决策方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108304624A CN108304624A (zh) | 2018-07-20 |
CN108304624B true CN108304624B (zh) | 2021-08-13 |
Family
ID=62869077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810036979.6A Active CN108304624B (zh) | 2018-01-15 | 2018-01-15 | 人工智能程序员书写数字飞行器源代码的推理决策方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108304624B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388855B (zh) * | 2018-09-11 | 2023-04-18 | 北京航空航天大学 | 数字飞行器仿真结果人工智能比对与检验方法 |
CN109194381A (zh) * | 2018-09-11 | 2019-01-11 | 北京航空航天大学 | 数字卫星星间及星地组网无线传输代码人工智能书写方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101086785A (zh) * | 2007-05-25 | 2007-12-12 | 浙江大学 | 支持可视化编辑的多模态临床指南知识管理系统 |
EP1921572A1 (en) * | 2006-11-09 | 2008-05-14 | Max J. Pucher | Method for training a system to specifically react on a specific input |
CN101271490A (zh) * | 2008-04-30 | 2008-09-24 | 中山大学 | 一种基于数字家庭的智能健康饮食咨询系统 |
CN102289491A (zh) * | 2011-08-11 | 2011-12-21 | 中国人民解放军信息工程大学 | 基于模糊规则推理的并行应用性能脆弱点分析方法及系统 |
CN102945585A (zh) * | 2012-11-21 | 2013-02-27 | 苏州两江科技有限公司 | 通过多传感器数据融合进行火灾预警的方法 |
CN103105822A (zh) * | 2011-11-10 | 2013-05-15 | 上海电机学院 | 智能选择切削参数的方法 |
CN103337041A (zh) * | 2013-06-13 | 2013-10-02 | 中国葛洲坝集团股份有限公司 | 基于知识工程的混凝土坝浇筑施工智能决策系统及其方法 |
CN104199290A (zh) * | 2014-08-08 | 2014-12-10 | 华南理工大学 | 一种基于耗差分析的循环流化床锅炉优化运行方法 |
CN104932804A (zh) * | 2015-06-19 | 2015-09-23 | 济南大学 | 一种智能虚拟装配动作识别方法 |
CN104966239A (zh) * | 2015-06-30 | 2015-10-07 | 天津爱蔻科技有限公司 | 一种基于规则引擎的智能核保平台 |
CN106651199A (zh) * | 2016-12-29 | 2017-05-10 | 冶金自动化研究设计院 | 基于决策树方法的蒸汽管网调度规则系统 |
-
2018
- 2018-01-15 CN CN201810036979.6A patent/CN108304624B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1921572A1 (en) * | 2006-11-09 | 2008-05-14 | Max J. Pucher | Method for training a system to specifically react on a specific input |
CN101086785A (zh) * | 2007-05-25 | 2007-12-12 | 浙江大学 | 支持可视化编辑的多模态临床指南知识管理系统 |
CN101271490A (zh) * | 2008-04-30 | 2008-09-24 | 中山大学 | 一种基于数字家庭的智能健康饮食咨询系统 |
CN102289491A (zh) * | 2011-08-11 | 2011-12-21 | 中国人民解放军信息工程大学 | 基于模糊规则推理的并行应用性能脆弱点分析方法及系统 |
CN103105822A (zh) * | 2011-11-10 | 2013-05-15 | 上海电机学院 | 智能选择切削参数的方法 |
CN102945585A (zh) * | 2012-11-21 | 2013-02-27 | 苏州两江科技有限公司 | 通过多传感器数据融合进行火灾预警的方法 |
CN103337041A (zh) * | 2013-06-13 | 2013-10-02 | 中国葛洲坝集团股份有限公司 | 基于知识工程的混凝土坝浇筑施工智能决策系统及其方法 |
CN104199290A (zh) * | 2014-08-08 | 2014-12-10 | 华南理工大学 | 一种基于耗差分析的循环流化床锅炉优化运行方法 |
CN104932804A (zh) * | 2015-06-19 | 2015-09-23 | 济南大学 | 一种智能虚拟装配动作识别方法 |
CN104966239A (zh) * | 2015-06-30 | 2015-10-07 | 天津爱蔻科技有限公司 | 一种基于规则引擎的智能核保平台 |
CN106651199A (zh) * | 2016-12-29 | 2017-05-10 | 冶金自动化研究设计院 | 基于决策树方法的蒸汽管网调度规则系统 |
Non-Patent Citations (3)
Title |
---|
"Efficient Interactive Decision-making Framework for Robotic Applications";Alejandro Agostini等;《Preprint submitted to Artificial Intelligence Journal》;20150430;第1-32页 * |
"卫星故障诊断系统智能研制技术研究";李洪珏等;《上海航天》;20170331;第34卷(第3期);第52-59页 * |
"数字卫星源代码生成技术";董云峰等;《2015年小卫星技术交流会》;20160621;第50-55页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108304624A (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Goertzel et al. | Engineering general intelligence, part 1 | |
US8489648B1 (en) | System of systems and method for software component system design and optimization through testing | |
US20210304066A1 (en) | Partitioning for an execution pipeline | |
CN108304624B (zh) | 人工智能程序员书写数字飞行器源代码的推理决策方法 | |
de Champeaux et al. | The process of object-oriented design | |
Burnashev et al. | Design and implementation of integrated development environment for building rule-based expert systems | |
CN108399273B (zh) | 人工智能程序员书写数字飞行器源代码的决策分解方法 | |
Steingartner et al. | A new approach to semantics of procedures in categorical terms | |
CN109800147A (zh) | 一种测试案例生成方法及终端设备 | |
Dickerson et al. | Architecture definition in complex system design using model theory | |
Masegosa et al. | Probabilistic graphical models on multi-core CPUs using Java 8 | |
EP3374941A2 (en) | Dynamic design of complex system-of-systems for planning and adaptation to unplanned scenarios | |
CN109189376B (zh) | 数字飞行器集群源代码的人工智能书写方法 | |
Kim et al. | {STRADS-AP}: Simplifying Distributed Machine Learning Programming without Introducing a New Programming Model | |
Braun et al. | Counting and conjunctive queries in the lifted junction tree algorithm | |
Waszkowski | Low-code Development Platform for Business Process Automation: Aurea BPM | |
Bertout et al. | A heuristic to minimize the cardinality of a real-time task set by automated task clustering | |
Syrotkina et al. | Graphical and analytical methods for processing “Big Data” based on the analysis of their properties | |
Perišić et al. | The Foundation for Open Component Analysis: A System of Systems Hyper Framework Model | |
Newell et al. | The Kernel approach to building software systems | |
Kutsch et al. | Computation of closures of nonmonotonic inference relations induced by conditional knowledge bases | |
Stepanov et al. | Intellectual self-organizing control systems: user interface of knowledge processing and analysis of the actions planning processes | |
Christen | Programming data structures for large-scale desktop simulations of complex systems | |
Griffin et al. | SCoRE4HPC: Self-Configuring Runtime Environment for HPC Applications | |
Viana | CEFYDRA: Cluster-first Explainable FuzzY-based Deep Reorganizing Algorithm |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |