基于群体智能的大规模网络化软件自优化装置及方法

专利查询2024-4-4  114



1.本发明属于计算机技术领域,具体涉及一种基于群体智能的大规模网络化软件自优化装置及方法。


背景技术:

2.相关技术中,专利106775915a公开了一种软件体系结构的动态演化优化方法。具体地,在该方法中,首先原始软件体系结构进行动态演化编码,并定义组成原始软件体系结构的原始构件为:gi={ni,pi,fi,odi,idi,noi,ii};接着对原始软件体系结构进行初始化,随机生成初始构件;构建适应度函数,计算各初始构件的适应度值;然后选出大于或等于设定阈值的适应度值对应的初始构件作为目标构件,并对小于设定阈值的适应度值对应的初始构件进行交叉操作和变异操作以更新初始构件,使构件一代又一代地优化演化,并逼进最优构件,从而保证软件体系结构能够快速高效地完成全局择优演化。该方法存在的不足是,无法应用在去中心化的系统中,且在使用时易于形成瓶颈。
3.此外,专利109783108a公开了一种软件优化方法及装置,包括:根据待优化的目标软件确定数据收集范围;接着根据数据收集范围收集待优化软件的操作数据;最后根据收集的操作数据对待优化的目标软件进行软件优化。但是,该方法只能针对预先设定的优化问题进行优化,存在优化需求不全面,无法准确反应优化需求的问题。
4.综上所述,现有的软件优化方法的技术多采用反射式、滞后的故障发现与处理机制,只有在系统出现异常后才对其进行处理,且大多都是预先设定好的优化方案,只能用于全局中心化架构中,而这些方法不能较好的满足后续软件优化工作需要的问题。


技术实现要素:

5.为了解决现有技术中存在的上述问题,本发明提供了一种基于群体智能的大规模网络化软件自优化装置及方法。本发明要解决的技术问题通过以下技术方案实现:
6.第一方面,本发明提供一种基于群体智能的大规模网络化软件自优化装置,包括:群体自优化控制模块、策略执行模块、反馈优化模块和平台信息库模块;其中,
7.所述群体自优化控制模块,用于获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并从多个预设策略中确定所述目标软件的优化策略;
8.所述策略执行模块,用于按照所述优化策略对所述目标软件进行优化;
9.所述反馈优化模块,用于对所述优化策略进行评估及修正,并将修正后的优化策略存储至所述平台信息库模块;
10.所述平台信息库模块,用于存储多个预设策略。
11.在本发明的一个实施例中,还包括协同演化决策模块,所述平台信息库模块中还存储有预设博弈模型的受益函数和预设目标函数;
12.当所述群体自优化控制模块未从所述平台信息库模块的多个预设策略中确定出所述目标软件的优化策略时,所述协同演化决策模块用于根据协同演化算法、所述预设博
弈模型的受益函数以及预设目标函数,确定所述目标软件的优化策略。
13.第二方面,本发明还提供一种基于群体智能的大规模网络化软件自优化方法,其特征在于,应用于第一方面任一所述的基于群体智能的大规模网络化软件自优化装置,包括:
14.所述群体自优化控制模块获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并根据所述状态数据及所述优化需求检测所述目标软件是否需要优化,当所述目标软件需要优化时,从多个预设策略中确定所述目标软件的优化策略;
15.所述策略执行模块接收所述优化策略,并按照所述优化策略对所述目标软件进行优化;
16.所述反馈优化模块对所述优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块。
17.在本发明的一个实施例中,所述群体自优化控制模块包括:节点代理层、软件实体代理层和辅助代理层,所述辅助代理层包括用户智能体agent、运维者智能体agent、需求分析智能体agent和仲裁智能体agent;
18.所述群体自优化控制模块获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并根据所述状态数据及所述优化需求检测所述目标软件是否需要优化,当所述目标软件需要优化时,从多个预设策略中确定所述目标软件的优化策略的步骤,包括:
19.所述节点代理层将所述目标软件中的各个节点对应建模为节点智能体agent,并通过所述节点agent获取所述目标软件运行时的状态数据;
20.所述辅助代理层获取用户对所述目标软件中软件实体的优化需求;
21.所述用户agent和运维者agent并在获取所述获取状态数据及所述优化需求,并由所述需求分析agent建立模糊处理模型后,仲裁agent检测所述目标软件是否需要优化;
22.当所述目标软件需要优化时,所述仲裁agent从多个预设策略中确定所述目标软件的优化策略。
23.在本发明的一个实施例中,所述目标软件运行时的状态数据包括:节点内存使用率、节点cpu使用率、节点网络带宽,以及软件实体的资源占用率、调用成功率和调用平均时延。
24.在本发明的一个实施例中,所述策略执行模块包括:策略翻译器、优化控制器、策略执行器及效应器;
25.所述策略执行模块接收所述优化策略,并按照所述优化策略对所述目标软件进行优化的步骤,包括:
26.所述策略翻译器将所述目标软件的优化策略翻译为原语,翻译为原语的优化策略包括对所述目标软件进行优化的原子操作;
27.所述优化控制器将翻译后的优化策略分发至对应的节点agent;
28.所述策略执行器将所述节点agent与对应的效应器绑定,以使所述效应器根据翻译后的优化策略对所述目标软件进行优化。
29.在本发明的一个实施例中,所述反馈优化模块对所述优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块的步骤,包括:
30.所述反馈优化模块获取目标软件的资源信息及用户的反馈信息,并根据预设指标、所述资源信息和所述反馈信息,对所述优化策略进行评估;
31.根据评估结果判断能否对所述优化策略进行修正;若可以,则利用预先训练好的深度信念网络对所述优化策略进行修正;
32.将训练好的优化策略作为预设策略,存储至平台信息库。
33.在本发明的一个实施例中,所述反馈优化模块对所述优化策略的可信性、响应性、鲁棒性和有效性进行评估。
34.与现有技术相比,本发明的有益效果在于:
35.本发明提供一种基于群体智能的大规模网络化软件自优化装置及方法,通过建立群体感知机制来感知目标软件运行时的状态数据,分析预测目标软件的运行状态,以确保目标软件在功能或性能问题发生之前主动进行优化;同时,本发明引入群体智能思想和多智能体技术,建立基于协同演化和博弈论的群体决策模型,采用最优演化策略完成并行优化调整,并通过数据驱动的反馈优化机制提升自优化过程的效率和准确性,以实现自优化机制的在线修正与能力升级。
36.以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
37.图1是本发明实施例提供的基于群体智能的大规模网络化软件自优化装置的一种框图;
38.图2是本发明实施例提供的群体自优化控制模块的一种框图;
39.图3是本发明实施例提供的策略执行模块的一种框图;
40.图4是本发明实施例提供的反馈优化模块的一种框图;
41.图5是本发明实施例提供的平台信息库的一种框图;
42.图6是本发明实施例提供的基于群体智能的大规模网络化软件自优化方法的一种流程图。
具体实施方式
43.下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
44.图1是本发明实施例提供的基于群体智能的大规模网络化软件自优化装置的一种框图,图2是本发明实施例提供的群体自优化控制模块的一种框图,图3是本发明实施例提供的策略执行模块的一种框图,图4是本发明实施例提供的反馈优化模块的一种框图,图5是本发明实施例提供的平台信息库的一种框图。请参见图1-5,本发明实施例提供一种基于群体智能的大规模网络化软件自优化装置,包括:群体自优化控制模块、策略执行模块、反馈优化模块和平台信息库模块;其中,
45.群体自优化控制模块,用于获取目标软件运行时的状态数据以及用户对目标软件中软件实体的优化需求,并从多个预设策略中确定目标软件的优化策略;
46.策略执行模块,用于按照优化策略对目标软件进行优化;
47.反馈优化模块,用于对优化策略进行评估及修正,并将修正后的优化策略存储至
平台信息库模块;
48.平台信息库模块,用于存储多个预设策略。
49.本实施例中,基于群体智能的大规模网络化软件自优化装置可包括:群体自优化控制模块、策略执行模块、反馈优化模块和平台信息库模块;具体而言,群体自优化控制模块用于获取目标软件运行时的状态数据以及用户对目标软件中软件实体的优化需求,并从多个预设策略中确定目标软件的优化策略;其中,用户包括目标软件的使用者和运维人员。进一步地,确定优化策略后,由策略执行模块按照优化策略对目标软件进行优化,例如对目标软件的参数进行调整。
50.可选地,完成对目标软件的优化之后,对优化策略进行评估及修正,并将修正后的优化策略作为预设策略存储至平台信息库模块,以便在后续优化过程中进行选择,从而通过反馈优化机制提升自优化过程的效率和准确性。
51.可选地,上述基于群体智能的大规模网络化软件自优化系统还包括协同演化决策模块,平台信息库模块中还存储有预设博弈模型的受益函数和预设目标函数;
52.当群体自优化控制模块未从平台信息库模块的多个预设策略中确定出目标软件的优化策略时,群体自优化控制模块会请求协同演化决策模块进行辅助决策,即将其使用到的状态信息等所有数据信息发送至协同演化决策模块,协同演化决策模块采用协同演化算法,根据预设博弈模型的受益函数以及预设目标函数,确定目标软件的优化策略。
53.本实施例中,基于群体智能的大规模网络化软件自优化装置还包括协同演化决策模块。具体地,若群体自由化控制模块在平台信息库模块中的多个预设策略中没有确定出目标软件的优化策略,则此时由协同演化决策模块根据协同演化算法、预设博弈模型的受益函数以及预设目标函数,确定目标软件的优化策略,此种设计方式有利于提升目标软件的优化效果。
54.图6是本发明实施例提供的基于群体智能的大规模网络化软件自优化方法的一种流程图。请结合图2-6,本发明实施例提供一种基于群体智能的大规模网络化软件自优化方法,应用于上述基于群体智能的大规模网络化软件自优化系统,包括:
55.s1、群体自优化控制模块获取目标软件运行时的状态数据以及用户对目标软件中软件实体的优化需求,并根据状态数据及优化需求检测目标软件是否需要优化,当目标软件需要优化时,从多个预设策略中确定目标软件的优化策略;
56.s2、策略执行模块接收优化策略,并按照优化策略对目标软件进行优化;
57.s3、反馈优化模块对优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块。
58.可选地,群体自优化控制模块包括:节点代理层、软件实体代理层和辅助代理层,辅助代理层包括用户智能体agent、运维者智能体agent、需求分析智能体agent和仲裁智能体agent;
59.上述步骤s1中,群体自优化控制模块获取目标软件运行时的状态数据以及用户对目标软件中软件实体的优化需求,并根据状态数据及优化需求检测目标软件是否需要优化,当目标软件需要优化时,从多个预设策略中确定目标软件的优化策略的步骤,包括:
60.s101、节点代理层将目标软件中的各个节点对应建模为节点智能体agent,并通过节点agent获取目标软件运行时的状态数据;
61.s102、辅助代理层获取用户对目标软件中软件实体的优化需求;
62.s103、用户agent和运维者agent并在获取所述获取状态数据及优化需求,并由需求分析agent建立模糊处理模型后,仲裁agent检测目标软件是否需要优化;
63.s104、当目标软件需要优化时,仲裁agent从多个预设策略中确定目标软件的优化策略。
64.本实施例中,群体自优化控制模块包含节点代理层、软件实体代理层和辅助代理层;其中,节点代理层将目标软件中的节点一一对应建模为节点agent,可通过节点agent对节点进行自优化控制;软件实体代理层包括所有的软件实体agent,将目标软件的软件实体一一对应建模为软件实体agent,可实现对软件实体所有实例的自优化控制以及对节点代理层的决策辅助;辅助代理层,包括用户agent、运维者agent、需求分析agent和仲裁agent,可选地,用户agent、运维者agent可获取使用者和运维人员在目标软件运行时的反馈信息,需求分析agent可汇集、分发所有优化需求,仲裁agent可进行决策。
65.具体地,本实施例中节点代理层可以感知各个节点的状态,该层的节点agent与目标软件的分布式节点对应,节点agent感知自己所代理的节点状态以及节点上软件实例的状态数据,包括节点内存使用率、节点cpu使用率、节点网络带宽,以及软件实例的资源占用、调用成功率、调用平均时延等。在感知过程中,通过结合群体智能思想,综合节点内各软件实例运行态势,建立节点状态评估模型,更加高效准确地为上层发送节点信息,提高自优化过程的有效性。节点agent根据感知的多种信息对节点的状态进行综合评估。示例性地,通过建立节点资源丰富度函数和节点实例能力函数,并为其分配相应的权重,计算函数加权和即可完成节点任务执行能力的评估。
66.辅助代理层面向目标软件的运维人员和使用者,感知运维人员及使用者对于目标软件运行状态的反馈信息。该层的群体感知过程分为两个阶段:首先,多个用户agent和运维者agent获取来自不同使用者和运维人员对系统运行状态的反馈信息,例如,使用者指出系统响应过慢,通过建立本体模型可以准确识别反馈信息;其次,用户agent和运维者agent将各自经过分析得到的优化需求发送到该层的需求分析agent,需求分析agent结合优化需求对应的群体信息及需求重要性进行评估排序,确定需求优先级,为分析阶段提供参考,以提升分析效率。
67.进一步地,软件实体代理层向下负责从节点代理层感知软件的实例及其所在节点状态信息,向上负责从辅助代理层感知使用者和运维人员对软件实体的优化需求。该层软件实体agent的群体感知分两个方面进行:首先,找到软件实体agent相关实例分布的节点后,与代理这些节点的节点agent进行交互,获取实例和节点状态信息;其次,从需求分析agent获取使用者和运维人员对特定软件实体的优化需求,进而通过在本层建立数据融合及模糊处理模型,将多种复杂群体感知信息进行持续精化。此外,考虑到感知对象大规模分布式的特点,本实施例还可以采取自适应加权的数据融合算法完成数据融合,并采取模糊理论实现数据模糊化。
68.可选地,本实施例可以从软件实体维度对软件实体所有实例状态进行分析和预测,以支持系统在功能或性能问题发生之前主动进行优化,提升系统运行的稳定性,保证系统长时间可靠运行,从而降低大规模网络化软件的运维成本。具体来说,采用软件实体健康度分析方法,基于感知到的所有软件实例及其所在节点的状态数据,开展软件实体健康度
分析;然后结合软件实体健康度和感知数据,采用基于隐马尔可夫的在线预测方法对软件实体以及软件实体所有实例下一时段的内部状态进行预测;依据预测结果,采用基于动态权值分配的优化判别方法,判别是否需要对软件实例进行优化以及具体需要优化调整的系统参数维度。
69.可选地,策略执行模块包括:策略翻译器、优化控制器、策略执行器及效应器;
70.策略执行模块接收优化策略,并按照优化策略对目标软件进行优化的步骤,包括:
71.策略翻译器将目标软件的优化策略翻译为原语,翻译为原语的优化策略包括对目标软件进行优化的原子操作;
72.优化控制器将翻译后的优化策略分发至对应的节点agent;
73.策略执行器将节点agent与对应的效应器绑定,以使效应器根据翻译后的优化策略对目标软件进行优化。
74.具体地,上述策略执行模块包含策略翻译器、优化控制器、策略执行器及效应器,策略翻译器可将优化策略翻译为原语后发送到优化控制器,优化控制器将翻译后的优化策略分发给对应的节点agent,策略执行器将根据翻译后的优化策略,将节点agent与效应器绑定,进而由效应器调整目标软件,例如修改实例的数量、设置缓存大小等。
75.可选地,反馈优化模块对优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块的步骤,包括:
76.反馈优化模块获取目标软件的资源信息及用户的反馈信息,并根据预设指标、资源信息和反馈信息,对优化策略进行评估;
77.根据评估结果判断能否对优化策略进行修正;若可以,则利用预先训练好的深度信念网络对优化策略进行修正;
78.将训练好的优化策略作为预设策略,存储至平台信息库。
79.可选地,反馈优化模块对优化策略的可信性、响应性、鲁棒性和有效性进行评估。
80.本实施例通过数据驱动的反馈优化机制实现主动优化。具体而言,信息捕获阶段从系统资源信息库中获取系统运行态势信息以及用户和软件运维人员的反馈信息以及决策信息,作为反馈优化的数据输入。采用数据挖掘中的关联规则挖方法挖掘系统日志中的决策信息,并建立环境信息之间的关联关系以对评估结果进行分析;
81.进一步地,状态分析阶段建立评估指标、计算指标的取值并对评估结果进行分析。针对大规模网络化软件的特点,本实施例可从可信性、响应性、鲁棒性和有效性四个主要方面评估系统运行态势。例如,对于优化策略的可信性,其主要用来评估目标软件的结构和行为与使用者以及运维人员的期望一致的程度,如果该值的实际计算值与期望值的差值超出了由专家和经验确定的阈值,则认为当前的优化策略需要修正。
82.得到评估结果后,分析评估结果进而确定需要修正的优化策略。在评估结果分析中,本实施例采用两种方法对评估结果进行分析。可选地,第一种方法主要对优化策略的执行效果进行评估:首先,利用知识图谱分析使用者和运维人员的反馈信息,捕获其对系统状态以及待修正策略的描述;然后,读取目标软件自优化过程的系统日志,通过分析系统近期决策信息找出待修正的策略。示例性地,第二种方法是:针对实体层分析判别的健康度权值进行评估;为了提高自优化过程中预测分析的准确性,在评估结果分析过程中对动态分配的健康度权值进行分析,通过判断用户和系统运维人员的反馈信息、根据健康度模型计算
的目标软件运行态势的健康度得分、上一时刻预测的系统运行态势的健康度得分和系统当前状态的符合程度,分析健康度权值是否合理;
83.在决策反馈阶段,根据状态分析阶段的分析结果制定软件系统反馈优化的调整方案。首先,决策反馈模块根据当前的系统可用资源状态和系统运行态势判断是否能够对优化策略进行修正。对于优化策略的修正,本实施例可采用深度信念网络来完成,即通过建立深度信念网络,将待修正优化策略执行的实际效果值和理想效果值作为输入,建立平均误差函数计算二者的平均误差,寻找参数增量来更新原始参数,使误差函数的取值最小,即使优化策略的执行效果更加接近理想状态。另外,对于健康度模型的权值修正,采用正态统计方法更新反馈信息样本,计算样本对应的健康度权值,实现对健康度权值的动态修正。
84.反馈实施阶段执行决策反馈阶段的优化方案,并将其反馈到对应模块。对于优化策略的修正,将修正的结果反馈到自优化过程协同演化模块的协同演化决策中心,调整决策模型的相关参数优化决策过程。对于健康度权值的修正,将修正的结果反馈到软件实体agent的分析模块,对健康度得分的权值参数进行修正,优化软件实体agent的自优化过程。
85.通过上述各实施例可知,本发明的有益效果在于:
86.本发明提供一种基于群体智能的大规模网络化软件自优化装置及方法,通过建立群体感知机制来感知目标软件运行时的状态数据,分析预测目标软件的运行状态,以确保目标软件在功能或性能问题发生之前主动进行优化;同时,本发明引入群体智能思想和多智能体技术,建立基于协同演化和博弈论的群体决策模型,采用最优演化策略完成并行优化调整,并通过数据驱动的反馈优化机制提升自优化过程的效率和准确性,以实现自优化机制的在线修正与能力升级。
87.在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
88.在本发明中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
89.尽管在此结合各实施例对本技术进行了描述,然而,在实施所要求保护的本技术过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
90.以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的
保护范围。

技术特征:
1.一种基于群体智能的大规模网络化软件自优化装置,其特征在于,包括:群体自优化控制模块、策略执行模块、反馈优化模块和平台信息库模块;其中,所述群体自优化控制模块,用于获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并从多个预设策略中确定所述目标软件的优化策略;所述策略执行模块,用于按照所述优化策略对所述目标软件进行优化;所述反馈优化模块,用于对所述优化策略进行评估及修正,并将修正后的优化策略存储至所述平台信息库模块;所述平台信息库模块,用于存储多个预设策略。2.根据权利要求1所述的基于群体智能的大规模网络化软件自优化装置,其特征在于,还包括协同演化决策模块,所述平台信息库模块中还存储有预设博弈模型的受益函数和预设目标函数;当所述群体自优化控制模块未从所述平台信息库模块的多个预设策略中确定出所述目标软件的优化策略时,所述协同演化决策模块用于根据协同演化算法、所述预设博弈模型的受益函数以及预设目标函数,确定所述目标软件的优化策略。3.一种基于群体智能的大规模网络化软件自优化方法,其特征在于,应用于权利要求1-2任一所述的基于群体智能的大规模网络化软件自优化装置,包括:所述群体自优化控制模块获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并根据所述状态数据及所述优化需求检测所述目标软件是否需要优化,当所述目标软件需要优化时,从多个预设策略中确定所述目标软件的优化策略;所述策略执行模块接收所述优化策略,并按照所述优化策略对所述目标软件进行优化;所述反馈优化模块对所述优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块。4.根据权利要求3所述的基于群体智能的大规模网络化软件自优化方法,其特征在于,所述群体自优化控制模块包括:节点代理层、软件实体代理层和辅助代理层,所述辅助代理层包括用户智能体agent、运维者智能体agent、需求分析智能体agent和仲裁智能体agent;所述群体自优化控制模块获取目标软件运行时的状态数据以及用户对所述目标软件中软件实体的优化需求,并根据所述状态数据及所述优化需求检测所述目标软件是否需要优化,当所述目标软件需要优化时,从多个预设策略中确定所述目标软件的优化策略的步骤,包括:所述节点代理层将所述目标软件中的各个节点对应建模为节点智能体agent,并通过所述节点agent获取所述目标软件运行时的状态数据;所述辅助代理层获取用户对所述目标软件中软件实体的优化需求;所述用户agent和运维者agent并在获取所述获取状态数据及所述优化需求,并由所述需求分析agent建立模糊处理模型后,仲裁agent检测所述目标软件是否需要优化;当所述目标软件需要优化时,所述仲裁agent从多个预设策略中确定所述目标软件的优化策略。5.根据权利要求4所述的基于群体智能的大规模网络化软件自优化方法,其特征在于,所述目标软件运行时的状态数据包括:节点内存使用率、节点cpu使用率、节点网络带宽,以
及软件实体的资源占用率、调用成功率和调用平均时延。6.根据权利要求3所述的基于群体智能的大规模网络化软件自优化方法,其特征在于,所述策略执行模块包括:策略翻译器、优化控制器、策略执行器及效应器;所述策略执行模块接收所述优化策略,并按照所述优化策略对所述目标软件进行优化的步骤,包括:所述策略翻译器将所述目标软件的优化策略翻译为原语,翻译为原语的优化策略包括对所述目标软件进行优化的原子操作;所述优化控制器将翻译后的优化策略分发至对应的节点agent;所述策略执行器将所述节点agent与对应的效应器绑定,以使所述效应器根据翻译后的优化策略对所述目标软件进行优化。7.根据权利要求3所述的基于群体智能的大规模网络化软件自优化方法,其特征在于,所述反馈优化模块对所述优化策略进行评估及修正,并将修正后的优化策略作为预设策略,存储至平台信息库模块的步骤,包括:所述反馈优化模块获取目标软件的资源信息及用户的反馈信息,并根据预设指标、所述资源信息和所述反馈信息,对所述优化策略进行评估;根据评估结果判断能否对所述优化策略进行修正;若可以,则利用预先训练好的深度信念网络对所述优化策略进行修正;将训练好的优化策略作为预设策略,存储至平台信息库。8.根据权利要求7所述的基于群体智能的大规模网络化软件自优化方法,其特征在于,所述反馈优化模块对所述优化策略的可信性、响应性、鲁棒性和有效性进行评估。

技术总结
本发明公开了一种基于群体智能的大规模网络化软件自优化装置及方法,该装置包括:群体自优化控制模块、策略执行模块、反馈优化模块和平台信息库模块;其中,群体自优化控制模块,用于获取目标软件运行时的状态数据以及用户对目标软件中软件实体的优化需求,并从多个预设策略中确定目标软件的优化策略;策略执行模块,用于按照优化策略对目标软件进行优化;反馈优化模块,用于对优化策略进行评估及修正,并将修正后的优化策略存储至平台信息库模块;平台信息库模块,用于存储多个预设策略。本发明不仅能够确保目标软件在功能或性能问题发生之前主动进行优化,同时也可通过反馈优化机制提升自优化过程的效率和准确性,实现了自优化机制的在线修正。优化机制的在线修正。优化机制的在线修正。


技术研发人员:李青山 计亚江 王子奇 舒畅 刘腾威 高标 杨承菽
受保护的技术使用者:西安电子科技大学
技术研发日:2021.11.15
技术公布日:2022/3/8

最新回复(0)