Search

CN-121996215-A - Software development method based on reinforcement learning

CN121996215ACN 121996215 ACN121996215 ACN 121996215ACN-121996215-A

Abstract

The invention relates to the field of software development, in particular to a software development method based on reinforcement learning, which extracts key entity objects through a target search library and constructs a behavior tag set according to historical behavior data, and then, constructing a key entity object set according to the semantic association degree pair of the entity and the label, and marking the high-core and non-core key entity object set according to the matching condition of the project keywords and the key entity object set. When the search is responded, determining expansion keywords for a high-core key entity object set, and determining push information by combining the matched key entities; for the non-core key entity object set, push information is determined only according to the matched key entities. The invention optimizes the retrieval process through reinforcement learning, thereby improving the efficiency and accuracy of knowledge acquisition in software development.

Inventors

  • GAO JIANJUN

Assignees

  • 北京万汇互联科技有限公司

Dates

Publication Date
20260508
Application Date
20260313

Claims (10)

  1. 1. A software development method based on reinforcement learning is characterized by comprising the following steps of, Acquiring a target retrieval library required by software development, extracting a plurality of entity objects based on the target retrieval library, and determining key entity objects based on the occurrence frequency of each entity object in the target retrieval library; determining behavior labels associated with each key entity object based on the historical behavior data to construct a behavior label set associated with each key entity object; Classifying the key entity objects based on the association degree among the key entity objects, and storing the similar key entity objects and corresponding behavior label sets to construct a plurality of key entity object sets; obtaining a plurality of project keywords corresponding to a current software development project, and matching with each key entity object set to mark each key entity object set, wherein the marking of the high-core key entity object set and marking of the non-core key entity object set are included; Acquiring search text information input by a user terminal, matching the search text information with each key entity in each key entity object set based on the search text information, and screening the key entity object set based on a matching result; Information pushing is carried out on the user terminal based on the screened key entity object set, which comprises, If the key entity object set is a high-core key entity object set, semantic expansion is carried out based on the key entity object set, expansion keywords are determined, and corresponding push information is determined based on the expansion keywords and the matched key entities; if the key entity object set is a non-core key entity object set, determining corresponding push information only according to the matched key entity.
  2. 2. The reinforcement learning-based software development method of claim 1, wherein said extracting a number of entity objects based on a target search pool comprises, Determining technical term keywords in the target search library; And taking the technical term keywords as entity objects.
  3. 3. The reinforcement learning-based software development method of claim 1, wherein said determining key entity objects comprises, Determining the entity occurrence frequency of each entity object in the target retrieval library; and if the entity occurrence frequency is greater than or equal to an entity occurrence frequency threshold, determining that the entity object is a key entity object.
  4. 4. The reinforcement learning-based software development method of claim 1, wherein said determining key entity objects comprises, Acquiring user behavior data in the development process of the similar historical software; Determining a retrieval record corresponding to each key entity object based on the user behavior data; Determining the retrieval frequency of each keyword in the retrieval record; and if the search frequency is greater than or equal to the search frequency threshold, determining the operation behavior as a behavior label associated with each key entity object.
  5. 5. The reinforcement learning-based software development method of claim 1, wherein said classifying key entity objects, storing key entity objects of the same class and corresponding behavior tag sets to construct a plurality of key entity object sets comprises, Extracting behavior labels corresponding to the key entity objects; Determining semantic association degree among key entity objects; determining semantic association degree between behavior labels corresponding to key entity objects; Adding the semantic association degree between the key entity objects and the semantic association degree between the behavior labels to obtain a comprehensive association degree; And if the comprehensive association degree is greater than or equal to a preset comprehensive association degree threshold, classifying the key entity objects into the same class, and storing the key entity objects of the same class and the corresponding behavior label sets to construct a plurality of key entity object sets.
  6. 6. The reinforcement learning-based software development method of claim 1, wherein said process of obtaining a plurality of project keywords corresponding to a current software development project and matching each of said set of key entity objects comprises, Acquiring a plurality of historical technical term keywords in the development process of similar historical software; determining the historical occurrence frequency of the historical technical term keywords in the historical document; If the historical occurrence frequency is greater than or equal to a historical occurrence frequency threshold, determining the historical technical term keywords as project keywords; Extracting behavior labels corresponding to the key entity objects in the key entity object sets; Determining an associated matching value of the project keyword and each key entity object; Determining an associated matching value of the item keyword and the behavior label; and adding the association matching values of the key entity objects and the association matching values of the behavior labels to obtain a comprehensive association matching value.
  7. 7. The reinforcement-learning-based software development method of claim 6, wherein said process of tagging a set of key entity objects comprises, If the comprehensive association matching value is greater than or equal to the comprehensive association matching threshold, marking the key entity object set as a high-core key entity object set; and if the comprehensive association matching value is smaller than the comprehensive association matching threshold, marking the key entity object set as a non-core key entity object set.
  8. 8. The reinforcement learning-based software development method of claim 1, wherein said process of matching each key entity in each of said key entity object sets based on the retrieved text information comprises, Determining semantic association values of the retrieval text information and the key entities; and if the semantic association value is greater than or equal to a semantic association threshold, determining the key entity as a matched key entity, and judging that the retrieval text information is matched with the key entity.
  9. 9. The reinforcement-learning-based software development method of claim 8, wherein said process of screening the set of key entity objects based on the matching result comprises, And if the search text information is matched with the key entity, determining a key entity object set corresponding to the key entity as a screened key entity object set.
  10. 10. The reinforcement learning-based software development method of claim 1, wherein the process of semantic expansion based on the set of key entity objects to determine expansion keywords comprises, Extracting the rest key entities which are not matched with the search text information in the screened key entity object set; And taking the residual key entities, the matched key entities and the behavior labels corresponding to the matched key entities as expansion keywords.

Description

Software development method based on reinforcement learning Technical Field The invention relates to the field of software development, in particular to a software development method based on reinforcement learning. Background With the rapid development of information technology, the complexity and scale of software development are continuously enlarged, and higher requirements are put on knowledge management, information retrieval and resource utilization efficiency in the software development process. The retrieval data plays a vital role in each link of software development, is closely related to the grasping and application of technical knowledge by developers, and is also closely related to the processes of project demand analysis, design, coding, testing, maintenance and the like. The efficient and accurate acquisition and utilization of related knowledge resources has become an indispensable part in improving the quality and efficiency of software development and reducing the development cost. The Chinese patent publication No. CN114706762BA discloses a Simulink software testing method based on reinforcement learning, which comprises a use case generating part and a use case testing part, wherein the use case generating part ① selects an initial model in a test use case library, ② inputs the state characteristics of the initial model to a reinforcement learning agent, ③ agent selects an action to be executed next step of the model in an action library according to the input, ④ and outputs an action index to the model, and the model executes the action. ⑤ MATLAB carries out compiling test on the model after the action is executed, ⑥ if compiling is not passed, then the compiling error is repaired, ⑦ carries out differential test on the model after the compiling is passed, ⑧ judges whether the test result is equivalent in function, if so, no bug is found, if the bug is found, ⑨ updates the reinforcement learning agent based on the test result, and the reinforcement learning agent tends to generate the model which is easy to trigger bug. There are problems in the prior art that, In the conventional software development process, when a developer searches related data, the problem of inaccurate search results is often faced. Existing search engines and retrieval tools, while powerful, often lack context awareness or isolated and static retrieval results in the face of complex software development requirements, and thus fail to accurately provide the most relevant data. This results in a large amount of time spent by the developer in screening and verifying the search results, thereby reducing development efficiency. Disclosure of Invention Therefore, the invention provides a software development method based on reinforcement learning, which is used for solving the problem that in the prior art, when a developer searches related data, the search result is often inaccurate. Existing search engines and retrieval tools, while powerful, often lack context awareness or isolated and static retrieval results in the face of complex software development requirements, and thus fail to accurately provide the most relevant data. This results in a problem that it takes a lot of time for the developer to screen and verify the search results, thereby reducing development efficiency. In order to achieve the above object, the present invention provides a software development method based on reinforcement learning, which includes, Acquiring a target retrieval library required by software development, extracting a plurality of entity objects based on the target retrieval library, and determining key entity objects based on the occurrence frequency of each entity object in the target retrieval library; determining behavior labels associated with each key entity object based on the historical behavior data to construct a behavior label set associated with each key entity object; Classifying the key entity objects based on the association degree among the key entity objects, and storing the similar key entity objects and corresponding behavior label sets to construct a plurality of key entity object sets; obtaining a plurality of project keywords corresponding to a current software development project, and matching with each key entity object set to mark each key entity object set, wherein the marking of the high-core key entity object set and marking of the non-core key entity object set are included; Acquiring search text information input by a user terminal, matching the search text information with each key entity in each key entity object set based on the search text information, and screening the key entity object set based on a matching result; Information pushing is carried out on the user terminal based on the screened key entity object set, which comprises, If the key entity object set is a high-core key entity object set, semantic expansion is carried out based on the key entity object set, expansion keywords are det