In this paper, based on the following theoretical framework: Evolutionary Algorithms + Program Structures = Automatic Programming , some results on complexity of automatic programming for function modeling is given, w...In this paper, based on the following theoretical framework: Evolutionary Algorithms + Program Structures = Automatic Programming , some results on complexity of automatic programming for function modeling is given, which show that the complexity of automatic programming is an exponential function of the problem dimension N , the size of operator set |F| and the height of the program parse tree H . Following this results, the difficulties of automatic programming are discussed. Some function models discovered automatically from database by evolutionary modeling method are given, too.展开更多
Geometric information is important for automatic programming of arc welding robot. Complete geometric models of robotic arc welding are established in this paper. In the geometric model of weld seam, an equation with ...Geometric information is important for automatic programming of arc welding robot. Complete geometric models of robotic arc welding are established in this paper. In the geometric model of weld seam, an equation with seam length as its parameter is introduced to represent any weld seam. The method to determine discrete programming points on a weld seam is presented. In the geometric model of weld workpiece, three class primitives and CSG tree are used to describe weld workpiece. Detailed data structure is presented. In pose transformation of torch, world frame, torch frame and active frame are defined, and transformation between frames is presented. Based on these geometric models, an automatic programming software package for robotic arc welding, RAWCAD, is developed. Experiments show that the geometric models are practical and reliable.展开更多
The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the deli...The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the delivered patch is plausible since it may satisfy the input MR but violate other MRs.This inspires us to propose an improved approach to enhance the effectiveness of APR-MT with metamorphic relation group.Ourapproach involves three major steps.First,we formally define the repair process of APR-MT by building the model of automatic program repair and metamorphic testing separately.Then,we propose the advanced model of automatic program repair based on metamorphic relation group,named METARO^(3),which takes several MRs as input while only one MR is used in APR-MT.We additionally present two kinds of selection strategies to rank MRs in descending order of the fault detection capability,which helps shorten the repair time of finding a patch.To demonstrate the feasibility and procedure of our approach,an illustration example was conducted.The results show that METARO^(3) can improve the effectiveness of APR-MT significantly.展开更多
The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existi...The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existing model has two flaws:incompleteness of program refinement and inadequate automation of formal verification.This paper proposes an automatic algorithm programming model based on the improved Morgan’s refinement calculus.It extends the Morgan’s refinement calculus rules and designs the C++generation system for realizing the complete process of refinement.Meanwhile,the automation tools VCG(Verification Condition Generator)and Isabelle are used to improve the automation of formal verification.An example of a stock’s maximum income demonstrates the effectiveness of the proposed model.Furthermore,the proposed model has some relevance for automatic software generation.展开更多
A prototype expert system for generating image processing programs using the subroutine pack- age SPIDER is described in this paper.Based on an interactive dialog,the system can generate a complete application program...A prototype expert system for generating image processing programs using the subroutine pack- age SPIDER is described in this paper.Based on an interactive dialog,the system can generate a complete application program using SPIDER routines.展开更多
In order to enhance the NC programming efficiency and quality of aircraft structural parts (ASPs), an intelligent NC programming pattern driven by process schemes is presented. In this pattern, the NC machining cell...In order to enhance the NC programming efficiency and quality of aircraft structural parts (ASPs), an intelligent NC programming pattern driven by process schemes is presented. In this pattern, the NC machining cell is the minimal organizational structure in the technological process, consisting of an operation machining volume cell, and the type and parameters of the machining operation. After the machining cell construction, the final NC program can be easily obtained in a CAD/CAM system by instantiating the machining operation for each machining cell. Accordingly, how to automatically establish the machining cells is a key issue in intelligent NC program- ming. On the basis of the NC machining craft of ASP, the paper aims to make an in-depth research on this issue. Firstly, some new terms about the residual volume and the machinable volume are defined, and then, the technological process is modeled with a process scheme. Secondly, the approach to building the machining cells is introduced, in which real-time complement machining is mainly considered to avoid interference and overcutting. Thirdly, the implementing algorithm is designed and applied to the Intelligent NC Programming System of ASP. Finally, the developed algorithm is validated through two case studies.展开更多
One way to improve practicability of automatic program repair(APR) techniques is to build prediction models which can predict whether an application of a APR technique on a bug is effective or not. Existing predicti...One way to improve practicability of automatic program repair(APR) techniques is to build prediction models which can predict whether an application of a APR technique on a bug is effective or not. Existing prediction models have some limitations. First, the prediction models are built with hand crafted features which usually fail to capture the semantic characteristics of program repair task. Second, the performance of the prediction models is only evaluated on Genprog, a genetic-programming based APR technique. This paper develops prediction models, i.e., random forest prediction models for SPR, another kind of generate-and-validate APR technique, which can distinguish ineffective repair instances from effective repair instances. Rather than handcrafted features, we use features automatically learned by deep belief network(DBN) to train the prediction models. The empirical results show that compared to the baseline models, that is, all effective models, our proposed models can at least improve the F1 by 9% and AUC(area under the receiver operating characteristics curve) by 19%. At the same time, the prediction model using learned features at least outperforms the one using hand-crafted features in terms of F1 by 11%.展开更多
Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a ...Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a repair pattern from the repair pattern set to apply or prioritize all repair patterns based on the bug's context information.In this paper,we introduce PatternNet,a multi-view feature f usion model capable of predicting the repair pattern for a reported software bug.To accomplish this task,PatternNet first extracts multiview features from the pair of buggy code and bug report using different models.Specifically,a transformer-based model(i.e.,UniXcoder)is utilized to obtain the bimodal feature representation of the buggy code and bug report.Additionally,an Abstract Syntax Tree(AST)-based neural model(i.e.,ASTNN)is employed to learn the feature representation of the buggy code.Second,a co-attention mechanism is adopted to capture the dependencies between the statement trees in the AST of the buggy code and the textual tokens of the reported bug,resulting in co-attentive features between statement trees and reported bug's textual tokens.Finally,these multi-view features are combined i nto a unified representation using a feature fusion network.We quantitatively demonstrate the effectiveness of PatternNet and the feature fusion network for predicting software bug repair patterns.展开更多
This paper provides a formalized definition of the application problem of compound condition query (CCQ) and a formal method of applying requirements elicitation based on trace information space derived from trace a...This paper provides a formalized definition of the application problem of compound condition query (CCQ) and a formal method of applying requirements elicitation based on trace information space derived from trace algebra. With the formalized process of solving the application problem of CCQ, formal requirements specification of application of CCQ is given, a formalized and automatic mapping of the results of requirements elicitation to the formal requirements specification is performed, the software system model and the application code are developed. Through a sample application of comprehensive query on housing information, the feasibility of formalized and automatic software development for the application problem of CCQ is proved. The result has important implications for the other problems regarding formalization and automatic software development.展开更多
Software is a crucial component in the communication systems,and its security is of paramount importance.However,it is susceptible to different types of attacks due to potential vulnerabilities.Meanwhile,significant t...Software is a crucial component in the communication systems,and its security is of paramount importance.However,it is susceptible to different types of attacks due to potential vulnerabilities.Meanwhile,significant time and effort is required to fix such vulnerabilities.We propose an automated program repair method based on controlled text generation techniques.Specifically,we utilize a fine-tuned language model for patch generation and introduce a discriminator to evaluate the generation process,selecting results that contribute most to vulnerability fixes.Additionally,we perform static syntax analysis to expedite the patch verification process.The effectiveness of the proposed approach is validated using QuixBugs and Defects4J datasets,demonstrating significant improvements in generating correct patches compared to other existing methods.展开更多
基金Supported by National Nature Science Foundation of China(6 0 0 730 4370 0 710 42 )
文摘In this paper, based on the following theoretical framework: Evolutionary Algorithms + Program Structures = Automatic Programming , some results on complexity of automatic programming for function modeling is given, which show that the complexity of automatic programming is an exponential function of the problem dimension N , the size of operator set |F| and the height of the program parse tree H . Following this results, the difficulties of automatic programming are discussed. Some function models discovered automatically from database by evolutionary modeling method are given, too.
基金This paperis supported by National Nature Science Foundation! (No.5963 51 60 )Advanced University Doctoral Subject Foundatio
文摘Geometric information is important for automatic programming of arc welding robot. Complete geometric models of robotic arc welding are established in this paper. In the geometric model of weld seam, an equation with seam length as its parameter is introduced to represent any weld seam. The method to determine discrete programming points on a weld seam is presented. In the geometric model of weld workpiece, three class primitives and CSG tree are used to describe weld workpiece. Detailed data structure is presented. In pose transformation of torch, world frame, torch frame and active frame are defined, and transformation between frames is presented. Based on these geometric models, an automatic programming software package for robotic arc welding, RAWCAD, is developed. Experiments show that the geometric models are practical and reliable.
基金The work was supported by a grant from National Natural Science Foundation of China(No.61772423).
文摘The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the delivered patch is plausible since it may satisfy the input MR but violate other MRs.This inspires us to propose an improved approach to enhance the effectiveness of APR-MT with metamorphic relation group.Ourapproach involves three major steps.First,we formally define the repair process of APR-MT by building the model of automatic program repair and metamorphic testing separately.Then,we propose the advanced model of automatic program repair based on metamorphic relation group,named METARO^(3),which takes several MRs as input while only one MR is used in APR-MT.We additionally present two kinds of selection strategies to rank MRs in descending order of the fault detection capability,which helps shorten the repair time of finding a patch.To demonstrate the feasibility and procedure of our approach,an illustration example was conducted.The results show that METARO^(3) can improve the effectiveness of APR-MT significantly.
基金Supported by the National Natural Science Foundation of China(61862033,61902162)Key Project of Science and Technology Research of Department of Education of Jiangxi Province(GJJ210307)Postgraduate Innovation Fund Project of Education Department of Jiangxi Province(YC2021-S306)。
文摘The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existing model has two flaws:incompleteness of program refinement and inadequate automation of formal verification.This paper proposes an automatic algorithm programming model based on the improved Morgan’s refinement calculus.It extends the Morgan’s refinement calculus rules and designs the C++generation system for realizing the complete process of refinement.Meanwhile,the automation tools VCG(Verification Condition Generator)and Isabelle are used to improve the automation of formal verification.An example of a stock’s maximum income demonstrates the effectiveness of the proposed model.Furthermore,the proposed model has some relevance for automatic software generation.
文摘A prototype expert system for generating image processing programs using the subroutine pack- age SPIDER is described in this paper.Based on an interactive dialog,the system can generate a complete application program using SPIDER routines.
基金supported by National Science and Technology Major Project (No.2012ZX04010051)
文摘In order to enhance the NC programming efficiency and quality of aircraft structural parts (ASPs), an intelligent NC programming pattern driven by process schemes is presented. In this pattern, the NC machining cell is the minimal organizational structure in the technological process, consisting of an operation machining volume cell, and the type and parameters of the machining operation. After the machining cell construction, the final NC program can be easily obtained in a CAD/CAM system by instantiating the machining operation for each machining cell. Accordingly, how to automatically establish the machining cells is a key issue in intelligent NC program- ming. On the basis of the NC machining craft of ASP, the paper aims to make an in-depth research on this issue. Firstly, some new terms about the residual volume and the machinable volume are defined, and then, the technological process is modeled with a process scheme. Secondly, the approach to building the machining cells is introduced, in which real-time complement machining is mainly considered to avoid interference and overcutting. Thirdly, the implementing algorithm is designed and applied to the Intelligent NC Programming System of ASP. Finally, the developed algorithm is validated through two case studies.
基金Supported by the National Natural Science Foundation of China(61603242)Opening Project of Collaborative Innovation Center for Economics Crime Investigation and Prevention Technology(JXJZXTCX-030)+1 种基金the Scientific Research Fund of Zhaoqing Univeristy(201734)Innovative Guidance Fund of Zhaoqing City(201704030409)
文摘One way to improve practicability of automatic program repair(APR) techniques is to build prediction models which can predict whether an application of a APR technique on a bug is effective or not. Existing prediction models have some limitations. First, the prediction models are built with hand crafted features which usually fail to capture the semantic characteristics of program repair task. Second, the performance of the prediction models is only evaluated on Genprog, a genetic-programming based APR technique. This paper develops prediction models, i.e., random forest prediction models for SPR, another kind of generate-and-validate APR technique, which can distinguish ineffective repair instances from effective repair instances. Rather than handcrafted features, we use features automatically learned by deep belief network(DBN) to train the prediction models. The empirical results show that compared to the baseline models, that is, all effective models, our proposed models can at least improve the F1 by 9% and AUC(area under the receiver operating characteristics curve) by 19%. At the same time, the prediction model using learned features at least outperforms the one using hand-crafted features in terms of F1 by 11%.
基金Partially supported by the National Natural Science Foundation of China(61802350)。
文摘Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a repair pattern from the repair pattern set to apply or prioritize all repair patterns based on the bug's context information.In this paper,we introduce PatternNet,a multi-view feature f usion model capable of predicting the repair pattern for a reported software bug.To accomplish this task,PatternNet first extracts multiview features from the pair of buggy code and bug report using different models.Specifically,a transformer-based model(i.e.,UniXcoder)is utilized to obtain the bimodal feature representation of the buggy code and bug report.Additionally,an Abstract Syntax Tree(AST)-based neural model(i.e.,ASTNN)is employed to learn the feature representation of the buggy code.Second,a co-attention mechanism is adopted to capture the dependencies between the statement trees in the AST of the buggy code and the textual tokens of the reported bug,resulting in co-attentive features between statement trees and reported bug's textual tokens.Finally,these multi-view features are combined i nto a unified representation using a feature fusion network.We quantitatively demonstrate the effectiveness of PatternNet and the feature fusion network for predicting software bug repair patterns.
基金supported by the Open Fund for National Engineering Laboratory for E-Government Modeling and Emulation
文摘This paper provides a formalized definition of the application problem of compound condition query (CCQ) and a formal method of applying requirements elicitation based on trace information space derived from trace algebra. With the formalized process of solving the application problem of CCQ, formal requirements specification of application of CCQ is given, a formalized and automatic mapping of the results of requirements elicitation to the formal requirements specification is performed, the software system model and the application code are developed. Through a sample application of comprehensive query on housing information, the feasibility of formalized and automatic software development for the application problem of CCQ is proved. The result has important implications for the other problems regarding formalization and automatic software development.
基金This work was supported by the National Natural Science Foundation of China(No.62372173).
文摘Software is a crucial component in the communication systems,and its security is of paramount importance.However,it is susceptible to different types of attacks due to potential vulnerabilities.Meanwhile,significant time and effort is required to fix such vulnerabilities.We propose an automated program repair method based on controlled text generation techniques.Specifically,we utilize a fine-tuned language model for patch generation and introduce a discriminator to evaluate the generation process,selecting results that contribute most to vulnerability fixes.Additionally,we perform static syntax analysis to expedite the patch verification process.The effectiveness of the proposed approach is validated using QuixBugs and Defects4J datasets,demonstrating significant improvements in generating correct patches compared to other existing methods.