CN114153431A - Large-scale networked software self-optimization device and method based on group intelligence - Google Patents

Large-scale networked software self-optimization device and method based on group intelligence Download PDF

Info

Publication number
CN114153431A
CN114153431A CN202111348561.7A CN202111348561A CN114153431A CN 114153431 A CN114153431 A CN 114153431A CN 202111348561 A CN202111348561 A CN 202111348561A CN 114153431 A CN114153431 A CN 114153431A
Authority
CN
China
Prior art keywords
optimization
strategy
software
target software
module
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
CN202111348561.7A
Other languages
Chinese (zh)
Other versions
CN114153431B (en
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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202111348561.7A priority Critical patent/CN114153431B/en
Publication of CN114153431A publication Critical patent/CN114153431A/en
Application granted granted Critical
Publication of CN114153431B publication Critical patent/CN114153431B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/72Code refactoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a large-scale networked software self-optimization device and a method based on swarm intelligence, wherein the device comprises the following components: the system comprises a group self-optimization control module, a strategy execution module, a feedback optimization module and a platform information base module; the group self-optimization control module is used for acquiring state data of the target software in operation and optimization requirements of users on software entities in the target software, and determining an optimization strategy of the target software from a plurality of preset strategies; the strategy execution module is used for optimizing the target software according to the optimization strategy; the feedback optimization module is used for evaluating and correcting the optimization strategy and storing the corrected optimization strategy into the platform information base module; and the platform information base module is used for storing a plurality of preset strategies. The method and the device can ensure that the target software is actively optimized before the function or performance problem occurs, and can also improve the efficiency and the accuracy of the self-optimization process through a feedback optimization mechanism, thereby realizing the online correction of the self-optimization mechanism.

Description

Large-scale networked software self-optimization device and method based on group intelligence
Technical Field
The invention belongs to the technical field of computers, and particularly relates to a large-scale networked software self-optimization device and method based on swarm intelligence.
Background
In the related art, patent 106775915a discloses a dynamic evolution optimization method for software architecture. Specifically, in the method, firstly, an original software architecture is subjected to dynamic evolution coding, and original components forming the original software architecture are defined as follows: gi ═ ni, pi, fi, odi, idi, noi, Ii }; initializing an original software architecture, and randomly generating an initial component; constructing a fitness function, and calculating the fitness value of each initial component; and then selecting the initial component corresponding to the fitness value greater than or equal to the set threshold value as a target component, and performing cross operation and mutation operation on the initial component corresponding to the fitness value smaller than the set threshold value to update the initial component, so that the components optimally evolve one by one and one by one, and approach the optimal component, thereby ensuring that the software architecture can rapidly and efficiently complete global preferential evolution. The method has the disadvantages that the method cannot be applied to a decentralized system and is easy to form a bottleneck in use.
In addition, patent 109783108A discloses a software optimization method and device, including: determining a data collection range according to target software to be optimized; then collecting the operation data of the software to be optimized according to the data collection range; and finally, performing software optimization on the target software to be optimized according to the collected operation data. However, the method can only optimize aiming at the preset optimization problem, and has the problems that the optimization requirement is not comprehensive and the optimization requirement cannot be accurately reflected.
In summary, most of the existing software optimization methods adopt a reflective and hysteretic fault discovery and processing mechanism, and only when a system is abnormal, the system is processed, and most of the existing software optimization methods are preset optimization schemes, and can only be used in a global centralized architecture, but the methods cannot better meet the requirements of subsequent software optimization work.
Disclosure of Invention
In order to solve the problems in the prior art, the invention provides a large-scale networked software self-optimization device and method based on swarm intelligence. The technical problem to be solved by the invention is realized by the following technical scheme:
in a first aspect, the present invention provides a large-scale networked software self-optimization device based on swarm intelligence, including: the system comprises a group self-optimization control module, a strategy execution module, a feedback optimization module and a platform information base module; wherein the content of the first and second substances,
the group self-optimization control module is used for acquiring state data of target software in operation and optimization requirements of users on software entities in the target software, and determining an optimization strategy of the target software from a plurality of preset strategies;
the strategy execution module is used for optimizing the target software according to the optimization strategy;
the feedback optimization module is used for evaluating and correcting the optimization strategy and storing the corrected optimization strategy into the platform information base module;
and the platform information base module is used for storing a plurality of preset strategies.
In an embodiment of the invention, the game platform further comprises a collaborative evolution decision-making module, wherein the platform information base module further stores a benefit function and a preset target function of a preset game model;
when the group self-optimization control module does not determine the optimization strategy of the target software from the plurality of preset strategies of the platform information base module, the co-evolution decision module is used for determining the optimization strategy of the target software according to a co-evolution algorithm, the benefit function of the preset game model and a preset target function.
In a second aspect, the present invention further provides a large-scale networked software self-optimization method based on swarm intelligence, which is applied to any one of the large-scale networked software self-optimization devices based on swarm intelligence in the first aspect, and includes:
the swarm self-optimization control module acquires state data of target software in operation and optimization requirements of users on software entities in the target software, detects whether the target software needs to be optimized or not according to the state data and the optimization requirements, and determines an optimization strategy of the target software from a plurality of preset strategies when the target software needs to be optimized;
the strategy execution module receives the optimization strategy and optimizes the target software according to the optimization strategy;
and the feedback optimization module evaluates and corrects the optimization strategy, takes the corrected optimization strategy as a preset strategy and stores the strategy into the platform information base module.
In one embodiment of the invention, the population self-optimizing control module comprises: the system comprises a node Agent layer, a software entity Agent layer and an auxiliary Agent layer, wherein the auxiliary Agent layer comprises a user Agent, an operation and maintenance Agent, a demand analysis Agent and an arbitration Agent;
the group self-optimization control module acquires state data of target software in operation and optimization requirements of users on software entities in the target software, detects whether the target software needs to be optimized according to the state data and the optimization requirements, and determines an optimization strategy of the target software from a plurality of preset strategies when the target software needs to be optimized, wherein the step comprises the following steps:
the node Agent layer correspondingly models each node in the target software into a node Agent, and acquires state data of the target software during operation through the node Agent;
the auxiliary agent layer acquires the optimization requirements of a user on the software entity in the target software;
the user Agent and the operation and maintenance Agent acquire the acquired state data and the optimization demand, and an arbitration Agent detects whether the target software needs to be optimized or not after a fuzzy processing model is established by the demand analysis Agent;
when the target software needs to be optimized, the arbitration Agent determines the optimization strategy of the target software from a plurality of preset strategies.
In one embodiment of the present invention, the state data of the target software runtime includes: the utilization rate of the node memory, the utilization rate of the node CPU, the node network bandwidth, the resource occupancy rate of the software entity, the calling success rate and the calling average time delay.
In one embodiment of the present invention, the policy enforcement module includes: the system comprises a strategy translator, an optimization controller, a strategy executor and an effector;
the strategy execution module receives the optimization strategy and optimizes the target software according to the optimization strategy, and the strategy execution module comprises the following steps:
the strategy translator translates the optimization strategy of the target software into a primitive, and the optimization strategy translated into the primitive comprises an atomic operation for optimizing the target software;
the optimization controller distributes the translated optimization strategy to the corresponding node Agent;
and the strategy executor binds the node Agent with the corresponding effector so that the effector optimizes the target software according to the translated optimization strategy.
In an embodiment of the present invention, the step of evaluating and modifying the optimization strategy by the feedback optimization module, and storing the modified optimization strategy as a preset strategy in the platform information base module includes:
the feedback optimization module acquires resource information of target software and feedback information of a user, and evaluates the optimization strategy according to preset indexes, the resource information and the feedback information;
judging whether the optimization strategy can be modified according to the evaluation result; if yes, correcting the optimization strategy by using a pre-trained deep belief network;
and storing the trained optimization strategy as a preset strategy to a platform information base.
In one embodiment of the invention, the feedback optimization module evaluates the credibility, responsiveness, robustness and effectiveness of the optimization strategy.
Compared with the prior art, the invention has the beneficial effects that:
the invention provides a large-scale networked software self-optimization device and method based on swarm intelligence, which are characterized in that a swarm perception mechanism is established to perceive state data of target software in operation, and the operation state of the target software is analyzed and predicted so as to ensure that the target software is actively optimized before functional or performance problems occur; meanwhile, the invention introduces group intelligent thought and multi-agent technology, establishes a group decision model based on cooperative evolution and game theory, adopts an optimal evolution strategy to complete parallel optimization adjustment, and improves the efficiency and accuracy of the self-optimization process through a data-driven feedback optimization mechanism so as to realize the online correction and capability upgrade of the self-optimization mechanism.
The present invention will be described in further detail with reference to the accompanying drawings and examples.
Drawings
FIG. 1 is a block diagram of a large-scale networked software self-optimization device based on swarm intelligence according to an embodiment of the present invention;
FIG. 2 is a block diagram of a group self-optimizing control module provided by an embodiment of the present invention;
FIG. 3 is a block diagram of a policy enforcement module provided by an embodiment of the present invention;
FIG. 4 is a block diagram of a feedback optimization module provided by embodiments of the present invention;
FIG. 5 is a block diagram of a platform information base provided by an embodiment of the present invention;
FIG. 6 is a flowchart of a large-scale networked software self-optimization method based on swarm intelligence according to an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to specific examples, but the embodiments of the present invention are not limited thereto.
Fig. 1 is a block diagram of a large-scale networked software self-optimization device based on group intelligence according to an embodiment of the present invention, fig. 2 is a block diagram of a group self-optimization control module according to an embodiment of the present invention, fig. 3 is a block diagram of a policy execution module according to an embodiment of the present invention, fig. 4 is a block diagram of a feedback optimization module according to an embodiment of the present invention, and fig. 5 is a block diagram of a platform information base according to an embodiment of the present invention. Referring to fig. 1-5, an embodiment of the present invention provides a large-scale networked software self-optimization device based on swarm intelligence, including: the system comprises a group self-optimization control module, a strategy execution module, a feedback optimization module and a platform information base module; wherein the content of the first and second substances,
the group self-optimization control module is used for acquiring state data of the target software in operation and optimization requirements of users on software entities in the target software, and determining an optimization strategy of the target software from a plurality of preset strategies;
the strategy execution module is used for optimizing the target software according to the optimization strategy;
the feedback optimization module is used for evaluating and correcting the optimization strategy and storing the corrected optimization strategy into the platform information base module;
and the platform information base module is used for storing a plurality of preset strategies.
In this embodiment, the large-scale networked software self-optimization device based on swarm intelligence may include: the system comprises a group self-optimization control module, a strategy execution module, a feedback optimization module and a platform information base module; specifically, the group self-optimization control module is used for acquiring state data of the target software in operation and optimization requirements of users on software entities in the target software, and determining an optimization strategy of the target software from a plurality of preset strategies; the users comprise users of the target software and operation and maintenance personnel. Further, after the optimization strategy is determined, the target software is optimized by the strategy execution module according to the optimization strategy, for example, parameters of the target software are adjusted.
Optionally, after the optimization of the target software is completed, the optimization strategy is evaluated and corrected, and the corrected optimization strategy is stored to the platform information base module as a preset strategy so as to be selected in a subsequent optimization process, so that the efficiency and the accuracy of the self-optimization process are improved through a feedback optimization mechanism.
Optionally, the large-scale networked software self-optimization system based on swarm intelligence further comprises a collaborative evolution decision-making module, and a benefit function and a preset target function of a preset game model are stored in the platform information base module;
when the group self-optimization control module does not determine the optimization strategy of the target software from the plurality of preset strategies of the platform information base module, the group self-optimization control module requests the collaborative evolution decision module to carry out auxiliary decision, namely all data information such as state information used by the group self-optimization control module is sent to the collaborative evolution decision module, and the collaborative evolution decision module determines the optimization strategy of the target software according to the benefit function and the preset target function of the preset game model by adopting a collaborative evolution algorithm.
In this embodiment, the large-scale networked software self-optimization device based on swarm intelligence further includes a collaborative evolution decision module. Specifically, if the group liberalization control module does not determine the optimization strategy of the target software in the plurality of preset strategies in the platform information base module, the cooperative evolution decision module determines the optimization strategy of the target software according to the cooperative evolution algorithm, the benefit function of the preset game model and the preset target function, and the design mode is favorable for improving the optimization effect of the target software.
FIG. 6 is a flowchart of a large-scale networked software self-optimization method based on swarm intelligence according to an embodiment of the present invention. Referring to fig. 2 to 6, an embodiment of the present invention provides a large-scale networked software self-optimization method based on swarm intelligence, which is applied to the large-scale networked software self-optimization system based on swarm intelligence, and includes:
s1, the group self-optimization control module acquires state data of the target software in operation and optimization requirements of users on software entities in the target software, detects whether the target software needs to be optimized according to the state data and the optimization requirements, and determines an optimization strategy of the target software from a plurality of preset strategies when the target software needs to be optimized;
s2, the strategy execution module receives the optimization strategy and optimizes the target software according to the optimization strategy;
and S3, the feedback optimization module evaluates and corrects the optimization strategy, and stores the corrected optimization strategy as a preset strategy to the platform information base module.
Optionally, the population self-optimizing control module comprises: the system comprises a node Agent layer, a software entity Agent layer and an auxiliary Agent layer, wherein the auxiliary Agent layer comprises a user Agent, an operation and maintenance Agent, a demand analysis Agent and an arbitration Agent;
in step S1, the step of obtaining, by the swarm self-optimization control module, the state data of the target software in operation and the optimization requirement of the user on the software entity in the target software, detecting whether the target software needs to be optimized according to the state data and the optimization requirement, and determining the optimization policy of the target software from a plurality of preset policies when the target software needs to be optimized includes:
s101, the node Agent layer correspondingly models each node in the target software into a node Agent, and state data of the target software in operation are obtained through the node Agent;
s102, an auxiliary agent layer acquires the optimization requirements of a user on a software entity in target software;
s103, a user Agent and an operation and maintenance Agent acquire the acquired state data and optimization requirements, and an arbitration Agent detects whether target software needs to be optimized or not after a fuzzy processing model is established by a requirement analysis Agent;
and S104, when the target software needs to be optimized, the arbitration Agent determines the optimization strategy of the target software from a plurality of preset strategies.
In this embodiment, the group self-optimization control module includes a node agent layer, a software entity agent layer, and an auxiliary agent layer; the node Agent layer models nodes in target software into node agents in a one-to-one correspondence mode, and the nodes can be subjected to self-optimization control through the node agents; the software entity Agent layer comprises all software entity agents, and the software entities of the target software are modeled into the software entity agents in a one-to-one correspondence mode, so that self-optimization control on all instances of the software entities and decision assistance on the node Agent layer can be realized; and the auxiliary Agent layer comprises a user Agent, an operation and maintenance Agent, a demand analysis Agent and an arbitration Agent, optionally, the user Agent and the operation and maintenance Agent can acquire feedback information of a user and operation and maintenance personnel when the target software runs, the demand analysis Agent can collect and distribute all optimization demands, and the arbitration Agent can make decisions.
Specifically, in this embodiment, the node Agent layer may sense the state of each node, the node Agent of the layer corresponds to a distributed node of the target software, and the node Agent senses the node state of its own Agent and state data of a software instance on the node, including node memory usage rate, node CPU usage rate, node network bandwidth, and resource occupation, call success rate, call average delay, and the like of the software instance. In the sensing process, by combining the group intelligence thought, the operation situation of each software instance in the node is synthesized, a node state evaluation model is established, node information is sent to the upper layer more efficiently and accurately, and the effectiveness of the self-optimization process is improved. And the node Agent comprehensively evaluates the state of the node according to the various sensed information. Illustratively, the evaluation of the task execution capacity of the node can be completed by establishing a node resource abundance function and a node instance capacity function, distributing corresponding weights to the node resource abundance function and the node instance capacity function, and calculating the weighted sum of the functions.
The auxiliary agent layer faces the operation and maintenance personnel and the users of the target software and senses the feedback information of the operation and maintenance personnel and the users to the running state of the target software. The population perception process of this layer is divided into two stages: firstly, a plurality of user agents and operation and maintenance person agents acquire feedback information of different users and operation and maintenance persons on the operation state of the system, for example, the user indicates that the response of the system is too slow, and the feedback information can be accurately identified by establishing an ontology model; and secondly, the user Agent and the operation and maintenance Agent send the optimization requirements obtained through analysis to the requirement analysis Agent of the layer, the requirement analysis Agent evaluates and sorts the requirements by combining the group information corresponding to the optimization requirements and the requirement importance, the requirement priority is determined, reference is provided for the analysis stage, and the analysis efficiency is improved.
Furthermore, the software entity agent layer is responsible for sensing the instance of the software and the state information of the node where the instance of the software is located from the node agent layer downwards, and responsible for sensing the optimization requirements of users and operation and maintenance personnel on the software entity from the auxiliary agent layer upwards. The group perception of the software entity Agent in the layer is carried out in two aspects: firstly, after finding out nodes distributed by software entity agents and related to instances, interacting with the node agents for acting the nodes to acquire instance and node state information; secondly, the optimization requirements of users and operation and maintenance personnel on specific software entities are obtained from the requirement analysis Agent, and then various complex group perception information is continuously refined by establishing a data fusion and fuzzy processing model on the layer. In addition, in consideration of the characteristic of large-scale distribution of the perception object, the embodiment can also adopt a self-adaptive weighted data fusion algorithm to complete data fusion, and adopt a fuzzy theory to realize data fuzzification.
Optionally, in this embodiment, all the instance states of the software entity may be analyzed and predicted from the software entity dimension, so as to support the active optimization of the system before the occurrence of the function or performance problem, improve the stability of the system operation, and ensure the long-time reliable operation of the system, thereby reducing the operation and maintenance cost of the large-scale networked software. Specifically, a software entity health degree analysis method is adopted, and based on the sensed state data of all software instances and nodes where the software instances are located, software entity health degree analysis is carried out; then, by combining the health degree and the perception data of the software entity, predicting the software entity and the internal state of the software entity in the next time period in all instances by adopting a hidden Markov-based online prediction method; and judging whether the software instance needs to be optimized and the system parameter dimension which specifically needs to be optimized and adjusted by adopting an optimization judging method based on dynamic weight distribution according to the prediction result.
Optionally, the policy enforcement module includes: the system comprises a strategy translator, an optimization controller, a strategy executor and an effector;
the method comprises the following steps that a strategy execution module receives an optimization strategy and optimizes target software according to the optimization strategy, and comprises the following steps:
the strategy translator translates the optimization strategy of the target software into primitive, and the optimization strategy translated into the primitive comprises atomic operation for optimizing the target software;
the optimization controller distributes the translated optimization strategy to the corresponding node Agent;
and the strategy executor binds the node Agent with the corresponding effector so that the effector optimizes the target software according to the translated optimization strategy.
Specifically, the policy execution module includes a policy translator, an optimization controller, a policy executor and an effector, where the policy translator may translate an optimization policy into a primitive and send the primitive to the optimization controller, the optimization controller distributes the translated optimization policy to a corresponding node Agent, and the policy executor binds the node Agent and the effector according to the translated optimization policy, and then the effector adjusts target software, such as the number of modified instances, the setting of cache size, and the like.
Optionally, the step of evaluating and modifying the optimization strategy by the feedback optimization module, and storing the modified optimization strategy as a preset strategy in the platform information base module includes:
the feedback optimization module acquires resource information of the target software and feedback information of a user, and evaluates the optimization strategy according to preset indexes, the resource information and the feedback information;
judging whether the optimization strategy can be corrected or not according to the evaluation result; if yes, correcting the optimization strategy by using a pre-trained deep belief network;
and storing the trained optimization strategy as a preset strategy to a platform information base.
Optionally, the feedback optimization module evaluates the credibility, responsiveness, robustness and effectiveness of the optimization strategy.
The present embodiment implements active optimization through a data-driven feedback optimization mechanism. Specifically, in the information capturing stage, system operation situation information, feedback information of users and software operation and maintenance personnel and decision information are obtained from a system resource information base and are used as data input of feedback optimization. Mining decision information in system logs by adopting a correlation rule mining method in data mining, and establishing a correlation relation between environment information to analyze an evaluation result;
further, in the state analysis stage, an evaluation index is established, the value of the index is calculated, and the evaluation result is analyzed. Aiming at the characteristics of large-scale networked software, the method can evaluate the system operation situation from four main aspects of credibility, responsiveness, robustness and effectiveness. For example, with respect to the credibility of the optimization strategy, which is mainly used to evaluate the degree to which the structure and behavior of the target software are consistent with the expectations of the user and the operation and maintenance personnel, if the difference between the actual calculated value and the expected value of the value exceeds a threshold value determined by experts and experience, the current optimization strategy is considered to need to be revised.
And after obtaining the evaluation result, analyzing the evaluation result to further determine the optimization strategy needing to be corrected. In the evaluation result analysis, the present embodiment analyzes the evaluation result by two methods. Optionally, the first method mainly evaluates the execution effect of the optimization strategy: firstly, analyzing feedback information of a user and operation and maintenance personnel by using a knowledge graph, and capturing description of the feedback information on a system state and a strategy to be corrected; and then, reading a system log of the target software self-optimization process, and finding out a strategy to be corrected by analyzing the recent decision information of the system. Illustratively, the second method is: evaluating the health degree weight value judged by physical layer analysis; in order to improve the accuracy of prediction analysis in the self-optimization process, the dynamically distributed health degree weight is analyzed in the evaluation result analysis process, and whether the health degree weight is reasonable or not is analyzed by judging the feedback information of users and system operation and maintenance personnel, the health degree score of the target software operation situation calculated according to the health degree model, the health degree score of the system operation situation predicted at the last moment and the conformity degree of the current state of the system;
and in the decision feedback stage, an adjustment scheme for feedback optimization of the software system is formulated according to the analysis result in the state analysis stage. Firstly, a decision feedback module judges whether the optimization strategy can be modified according to the current available resource state and system operation situation of the system. For the modification of the optimization strategy, the embodiment can be completed by adopting a deep belief network, namely, the deep belief network is established, the actual effect value and the ideal effect value executed by the optimization strategy to be modified are taken as input, an average error function is established to calculate the average error of the actual effect value and the ideal effect value, and the parameter increment is searched to update the original parameter, so that the value of the error function is minimum, even if the execution effect of the optimization strategy is closer to the ideal state. In addition, for weight correction of the health degree model, a normal statistical method is adopted to update the feedback information sample, the health degree weight corresponding to the sample is calculated, and dynamic correction of the health degree weight is realized.
The feedback implementation stage executes the optimization scheme of the decision feedback stage and feeds the optimization scheme back to the corresponding module. And for the correction of the optimization strategy, the corrected result is fed back to a collaborative evolution decision center of a self-optimization process collaborative evolution module, and the related parameter optimization decision process of the decision model is adjusted. And for the correction of the health degree weight, feeding back the corrected result to an analysis module of the software entity Agent, correcting the weight parameter of the health degree score, and optimizing the self-optimization process of the software entity Agent.
The beneficial effects of the invention are that:
the invention provides a large-scale networked software self-optimization device and method based on swarm intelligence, which are characterized in that a swarm perception mechanism is established to perceive state data of target software in operation, and the operation state of the target software is analyzed and predicted so as to ensure that the target software is actively optimized before functional or performance problems occur; meanwhile, the invention introduces group intelligent thought and multi-agent technology, establishes a group decision model based on cooperative evolution and game theory, adopts an optimal evolution strategy to complete parallel optimization adjustment, and improves the efficiency and accuracy of the self-optimization process through a data-driven feedback optimization mechanism so as to realize the online correction and capability upgrade of the self-optimization mechanism.
In the description of the present invention, the terms "first" and "second" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present invention, "a plurality" means two or more unless specifically defined otherwise.
In this disclosure, reference to the description of the terms "one embodiment," "some embodiments," "an example," "a specific example," or "some examples" or the like means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples described in this specification can be combined and combined by those skilled in the art.
While the present application has been described in connection with various embodiments, other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed application, from a review of the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other elements or steps, and the word "a" or "an" does not exclude a plurality. A single processor or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
The foregoing is a more detailed description of the invention in connection with specific preferred embodiments and it is not intended that the invention be limited to these specific details. For those skilled in the art to which the invention pertains, several simple deductions or substitutions can be made without departing from the spirit of the invention, and all shall be considered as belonging to the protection scope of the invention.

Claims (8)

1. A large-scale networked software self-optimization device based on swarm intelligence is characterized by comprising the following components: the system comprises a group self-optimization control module, a strategy execution module, a feedback optimization module and a platform information base module; wherein the content of the first and second substances,
the group self-optimization control module is used for acquiring state data of target software in operation and optimization requirements of users on software entities in the target software, and determining an optimization strategy of the target software from a plurality of preset strategies;
the strategy execution module is used for optimizing the target software according to the optimization strategy;
the feedback optimization module is used for evaluating and correcting the optimization strategy and storing the corrected optimization strategy into the platform information base module;
and the platform information base module is used for storing a plurality of preset strategies.
2. The swarm intelligence based large-scale networked software self-optimization device according to claim 1, further comprising a co-evolution decision module, wherein the platform information base module further stores a benefit function and a preset objective function of a preset game model;
when the group self-optimization control module does not determine the optimization strategy of the target software from the plurality of preset strategies of the platform information base module, the co-evolution decision module is used for determining the optimization strategy of the target software according to a co-evolution algorithm, the benefit function of the preset game model and a preset target function.
3. A large-scale networking software self-optimization method based on swarm intelligence is applied to the large-scale networking software self-optimization device based on swarm intelligence of any one of claims 1-2, and comprises the following steps:
the swarm self-optimization control module acquires state data of target software in operation and optimization requirements of users on software entities in the target software, detects whether the target software needs to be optimized or not according to the state data and the optimization requirements, and determines an optimization strategy of the target software from a plurality of preset strategies when the target software needs to be optimized;
the strategy execution module receives the optimization strategy and optimizes the target software according to the optimization strategy;
and the feedback optimization module evaluates and corrects the optimization strategy, takes the corrected optimization strategy as a preset strategy and stores the strategy into the platform information base module.
4. The swarm intelligence based large-scale networked software self-optimization method according to claim 3, wherein the swarm self-optimization control module comprises: the system comprises a node Agent layer, a software entity Agent layer and an auxiliary Agent layer, wherein the auxiliary Agent layer comprises a user Agent, an operation and maintenance Agent, a demand analysis Agent and an arbitration Agent;
the group self-optimization control module acquires state data of target software in operation and optimization requirements of users on software entities in the target software, detects whether the target software needs to be optimized according to the state data and the optimization requirements, and determines an optimization strategy of the target software from a plurality of preset strategies when the target software needs to be optimized, wherein the step comprises the following steps:
the node Agent layer correspondingly models each node in the target software into a node Agent, and acquires state data of the target software during operation through the node Agent;
the auxiliary agent layer acquires the optimization requirements of a user on the software entity in the target software;
the user Agent and the operation and maintenance Agent acquire the acquired state data and the optimization demand, and an arbitration Agent detects whether the target software needs to be optimized or not after a fuzzy processing model is established by the demand analysis Agent;
when the target software needs to be optimized, the arbitration Agent determines the optimization strategy of the target software from a plurality of preset strategies.
5. The swarm intelligence based large-scale networked software self-optimization method according to claim 4, wherein the state data of the target software runtime comprises: the utilization rate of the node memory, the utilization rate of the node CPU, the node network bandwidth, the resource occupancy rate of the software entity, the calling success rate and the calling average time delay.
6. The swarm intelligence based large-scale networked software self-optimization method according to claim 3, wherein the policy enforcement module comprises: the system comprises a strategy translator, an optimization controller, a strategy executor and an effector;
the strategy execution module receives the optimization strategy and optimizes the target software according to the optimization strategy, and the strategy execution module comprises the following steps:
the strategy translator translates the optimization strategy of the target software into a primitive, and the optimization strategy translated into the primitive comprises an atomic operation for optimizing the target software;
the optimization controller distributes the translated optimization strategy to the corresponding node Agent;
and the strategy executor binds the node Agent with the corresponding effector so that the effector optimizes the target software according to the translated optimization strategy.
7. The large-scale networked software self-optimization method based on swarm intelligence as claimed in claim 3, wherein the feedback optimization module evaluates and modifies the optimization strategy, and stores the modified optimization strategy as a preset strategy to the platform information base module, comprising:
the feedback optimization module acquires resource information of target software and feedback information of a user, and evaluates the optimization strategy according to preset indexes, the resource information and the feedback information;
judging whether the optimization strategy can be modified according to the evaluation result; if yes, correcting the optimization strategy by using a pre-trained deep belief network;
and storing the trained optimization strategy as a preset strategy to a platform information base.
8. The swarm intelligence based large-scale networked software self-optimization method of claim 7, wherein the feedback optimization module evaluates credibility, responsiveness, robustness and effectiveness of the optimization strategy.
CN202111348561.7A 2021-11-15 2021-11-15 Large-scale networked software self-optimization device and method based on group intelligence Active CN114153431B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111348561.7A CN114153431B (en) 2021-11-15 2021-11-15 Large-scale networked software self-optimization device and method based on group intelligence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111348561.7A CN114153431B (en) 2021-11-15 2021-11-15 Large-scale networked software self-optimization device and method based on group intelligence

Publications (2)

Publication Number Publication Date
CN114153431A true CN114153431A (en) 2022-03-08
CN114153431B CN114153431B (en) 2024-04-30

Family

ID=80459960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111348561.7A Active CN114153431B (en) 2021-11-15 2021-11-15 Large-scale networked software self-optimization device and method based on group intelligence

Country Status (1)

Country Link
CN (1) CN114153431B (en)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050096950A1 (en) * 2003-10-29 2005-05-05 Caplan Scott M. Method and apparatus for creating and evaluating strategies
US20080215512A1 (en) * 2006-09-12 2008-09-04 New York University System, method, and computer-accessible medium for providing a multi-objective evolutionary optimization of agent-based models
CN102594606A (en) * 2012-03-13 2012-07-18 中国科学院声学研究所 Evolved intelligent node overlapping network system based on multi-agent
US20140137080A1 (en) * 2012-11-15 2014-05-15 Verizon Patent And Licensing Inc. System and method of optimization for mobile apps
CN105391090A (en) * 2015-11-10 2016-03-09 南京邮电大学 Multi-intelligent-agent multi-target consistency optimization method of intelligent power grid
CN106375328A (en) * 2016-09-19 2017-02-01 中国人民解放军国防科学技术大学 Adaptive optimization operation method of large-scale data distribution system
CN106775915A (en) * 2017-02-09 2017-05-31 东华理工大学 A kind of dynamic evolution optimization method of software architecture
CN109783108A (en) * 2019-01-24 2019-05-21 中国银行股份有限公司 A kind of optimization method for software and device
CN112187670A (en) * 2020-08-21 2021-01-05 西安电子科技大学 Networked software shared resource allocation method and device based on group intelligence
CN113467944A (en) * 2021-06-30 2021-10-01 西南大学 Resource deployment device and method for complex software system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050096950A1 (en) * 2003-10-29 2005-05-05 Caplan Scott M. Method and apparatus for creating and evaluating strategies
US20080215512A1 (en) * 2006-09-12 2008-09-04 New York University System, method, and computer-accessible medium for providing a multi-objective evolutionary optimization of agent-based models
CN102594606A (en) * 2012-03-13 2012-07-18 中国科学院声学研究所 Evolved intelligent node overlapping network system based on multi-agent
US20140137080A1 (en) * 2012-11-15 2014-05-15 Verizon Patent And Licensing Inc. System and method of optimization for mobile apps
CN105391090A (en) * 2015-11-10 2016-03-09 南京邮电大学 Multi-intelligent-agent multi-target consistency optimization method of intelligent power grid
CN106375328A (en) * 2016-09-19 2017-02-01 中国人民解放军国防科学技术大学 Adaptive optimization operation method of large-scale data distribution system
CN106775915A (en) * 2017-02-09 2017-05-31 东华理工大学 A kind of dynamic evolution optimization method of software architecture
CN109783108A (en) * 2019-01-24 2019-05-21 中国银行股份有限公司 A kind of optimization method for software and device
CN112187670A (en) * 2020-08-21 2021-01-05 西安电子科技大学 Networked software shared resource allocation method and device based on group intelligence
CN113467944A (en) * 2021-06-30 2021-10-01 西南大学 Resource deployment device and method for complex software system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LU WANG等: "A Multiagent-Based Framework for Self-Adaptive Software with Search-Based Optimization", 《2016 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME)》, 16 January 2017 (2017-01-16), pages 621 - 625 *
朱婉莹: "软件自优化机制中分析判别方法及其反馈优化的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2, 15 February 2020 (2020-02-15), pages 138 - 442 *
李青山等: "一种基于智能体技术的软件自适应动态演化机制", 《软件学报》, vol. 26, no. 4, 15 April 2015 (2015-04-15), pages 760 - 777 *

Also Published As

Publication number Publication date
CN114153431B (en) 2024-04-30

Similar Documents

Publication Publication Date Title
CN111124689B (en) Container resource dynamic allocation method in cluster
CN108089921B (en) Server for cloud big data operation architecture and operation resource optimization method thereof
CN112685170B (en) Dynamic optimization of backup strategies
Subrata et al. Artificial life techniques for load balancing in computational grids
CN112463337B (en) Workflow task migration method used in mobile edge computing environment
Liu et al. Workload forecasting based elastic resource management in edge cloud
CN117539726B (en) Energy efficiency optimization method and system for green intelligent computing center
de Gyvés Avila et al. Fuzzy logic based QoS optimization mechanism for service composition
CN114741955A (en) Multi-objective optimization task scheduling method based on security cloud
CN112084035A (en) Task scheduling method and system based on ant colony algorithm
CN112187535A (en) Server deployment method and device in fog computing environment
Li et al. DQN-enabled content caching and quantum ant colony-based computation offloading in MEC
CN111935025A (en) Control method, device, equipment and medium for TCP transmission performance
CN114153431B (en) Large-scale networked software self-optimization device and method based on group intelligence
CN110245019B (en) Thread concurrency method and device for self-adaptive system resources
CN112380006A (en) Data center resource allocation method and device
CN106874215B (en) Serialized storage optimization method based on Spark operator
CN116185584A (en) Multi-tenant database resource planning and scheduling method based on deep reinforcement learning
CN115277249A (en) Network security situation perception method based on cooperation of multi-layer heterogeneous network
CN115189908A (en) Random attack survivability evaluation method based on network digital twin
CN114936089A (en) Resource scheduling method, system, device and storage medium
CN113672372A (en) Multi-edge cooperative load balancing task scheduling method based on reinforcement learning
Liu et al. Computation Offloading and Task Scheduling with Fault-Tolerance for Minimizing Redundancy in Edge Computing
Oates Evolutionary algorithm performance profiles on the adaptive distributed database management problem
CN114629959B (en) Cloud environment context-aware internet traffic (IoT) service scheduling policy method

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