• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Automatic software fault localization based on artificia bee colony

    2015-02-11 03:39:24LinzhiHuangandJunAi

    Linzhi Huangand Jun Ai

    School of Reliability and Systems Engineering,Beihang University,Beijing 100191,China

    Automatic software fault localization based on artificia bee colony

    Linzhi Huang?and Jun Ai

    School of Reliability and Systems Engineering,Beihang University,Beijing 100191,China

    Software debugging accounts for a vast majority of the financia and time costs in software developing and maintenance. Thus,approaches of software fault localization that can help automate the debugging process have become a hot topic in the fielof software engineering.Given the great demand for software fault localization,an approach based on the artificia bee colony (ABC)algorithm is proposed to be integrated with other related techniques.In this process,the source program is initially instrumented after analyzing the dependence information.The test case sets are then compiled and run on the instrumented program,and execution results are input to the ABC algorithm.The algorithm can determine the largest fitnes value and best food source by calculating the average fitnes of the employed bees in the iterative process.The program unit with the highest suspicion score corresponding to the best test case set is regarded as the fina fault localization.Experiments are conducted with the TCAS program in the Siemens suite.Results demonstrate that the proposed fault localization method is effective and efficient The ABC algorithm can efficientlavoid the local optimum,and ensure the validity of the fault location to a larger extent.

    software debugging,software fault localization,artificia bee colony(ABC)algorithm,program instrumentation.

    1.Introduction

    Software testing,which is the most significan analytic qualityassurancemeasure forsoftwaremaintenance,is addressed as one of the key phases in software system development.More than 30%of software expenditure is allocated to testing.Among a series of software testing activities,fault localization is an expensive one[1].Although manual fault localization has proven to be prohibitively time-consuming and tedious,the demand for automatic fault localization techniques is fueled.To meet this demand,a large number of fault localization techniques have been proposed.Each technique attempts to automatically guide programmers to the locations of faults with minimal human intervention.

    Fault localization methods can be divided into two categories,namely,static analysis-based fault localization (SABFL)and test-based fault localization(TBFL),based on whether the software needs to run or not during the localization process.The most critical step in SABFL is to statically analyze dependencies between the software structure and program statements from the perspective of syntax and semantics.The widely cognitive methods of SABFL are symbolic execution[2,3],formal method[4] and pointer analysis[5,6].However,the SABFL approach is inefficien and intractable because of the tremendous amount of data that need to be examined.The key part of TBFL is designing test cases and executing the program which is instrumented around suspicious code to print out the values of some variables.The executiontraces and outputs of the instrumentedprogram will identify the possible locations of program faults.Renieres and Reiss proposed a method called nearest neighbor queries(NNQ)based on the similar program spectrum which is obtained by comparing the differences between the traces of passed and failed executions[7].Jones and Harrold held the opinion that the suspicion of the statement is related to the participation of the statement in failed executions,and their prototype tool“Tarantula”uses colors to visually map the participation of each statement in the outcome of both the passed and failed execution of the program[8].Then several methods of calculating the suspicions of statements were proposed and yet the localization accuracy was not improved much[9,10].Abreu introduced the coefficien Ochiai,which is originally used in the molecular biology domain,to quantify the resemblance between vectors and calculate the suspicions,and the localization accuracy was enhanced compared with Tarantula in the terms of multifaults localization[11].And the crosstab-based statistical method proposed by Wong was proved to be effective in fault localization and performs better(in terms of a smaller percentage of executable statements that have tobe examined until the firs statement containing the fault is reached)than other methods such as Tarantula[12,13]. Hao et al.proposed a similarity-aware fault-localization approach,which takes each test case as a fuzzy set to calculate the similarity between test cases and the statements’suspicions are calculated based on the probability theory [14].A bunch of model-based approaches are proposed to describe the behavior or status of software execution, and the fault localization is conducted based on the models such as SOBER,which is a statistical model-based bug localization method[15].Cleve and Zeller identifie thestate differencesthatcausethefailurebycomparingthe programstates ofafailingandapassingrun,thenthe cause transitions are located by narrowing down the state differences[16].The test-based approaches are dependent on large-scale test data sets and require the execution traces being recorded.

    The application of optimization method-based techniques to software fault localization has been proposed by several researchers to overcome the aforementioned problems[17,18].Optimization method based techniques are adaptiveandrobust,and can producemodelsbased on data withlimitedhumaninteraction.Theimminentproblemcan be expressed as an attempt to learn or deduce the location of a fault based on input data,such as statement coverage. However,the genetic algorithm can be easily trapped into the local best,so a satisfying localizationmay not be determined.The lack of an initial pheromone in the ant colony algorithm[19,20]leads to low search efficien y,and the positive feedback mechanism is prone to premature phenomenon.

    The artificia bee colony(ABC)algorithm was originally presented by Dervis Karaboga in 2007[21]under the inspiration of the collective behavior of honey bees, and it has been adopted to solve problems such as numerical optimization[21,22],distributed generation allocation and sizing in distribution systems[23,24],target recognition[25],etc.Typical optimization algorithms conduct only one search operation in each iteration.For instance, the particle swarm optimization(PSO)algorithm[26]carries out a global search at the beginning and a local search in the later stage.Compared with the usual algorithms,the major advantage of the ABC algorithm is that it conducts both global and local searches in each iteration.Thus,the probability of findin the optimal parameters is signifi cantly increased,which efficientlavoids the local optimum to a large extent.Although the ABC algorithm has rarely been used in software testing,we adopte this algorithm because of the aforementioned advantages.

    The remainder of this paper is organized as follows. Section 2 introduces the background of the fault localization method combined with the ABC algorithm.Section 3 specifie the ABC algorithm for fault localization.In Section 4,the implementation of the algorithm and results of anempirical studyusingthe implementationare discussed. Next,the technique presented is compared with the related work.The fina section discusses the concluding remarks and future work.

    2.Application principle of ABC

    The process of the ABC algorithm,which simulates the bees searching for food sources by exchanging information,highly resembles the process of software fault localization,which is to execute test cases and cover the faults constantly until the faults are specificalllocated. The model of the ABC algorithm has three basic elements: food sources,employed foragers,and unemployed foragers.All the program inputs correspond to the bee colony. The location of one food source is define as a software fault,andthenectaramountofthefoodsourcecorresponds to the fitnes of the fault localization.Execution of the selected set of test cases resembles the employed foragers associated with the particularfoodsource that theyare currently exploiting.Once execution of any test case fails,it means that execution has covered at least one fault,this food source is considered to be a valid one,which resembles the foragers returning to the hive and unloading the nectar to the food area in the hive to evaluate the fitnes of the food source.If the nectar amount decreases to a low level,the foraging bee abandons the food source and becomes an unemployed bee,which means that the current execution path is not suitable for fault localization.If a sufficien amount of nectar still exists in the food source, the foragers can go to the dance area to perform a waggle dance to inform the onlookers about the food source, and lead them to search for the nearby food sources.In this way,the next set of test cases is generated by performing mutation operators and local search schemes to change the original set.Some scout bees start searching spontaneously and globally for new food sources without any knowledge,which correspondsto the process that new sets of test cases are generated randomlyin the input space and executed.Thus,the three basic elements of the behavior model,namely,searching for food sources,recruiting bees for food sources,and abandoning food sources,are defined

    The ABC algorithm is utilized to fin the optimal food source with the largest amount of nectar.When applied to the localization of software faults,a set of test cases with maximumpossibility to locate the faults can be found.The corresponded execution paths which covered the software faults are obtained.During the searching time,the execu-tion data are gathered,the participation of each program unitinthe executionsis countedandthesuspicionsofthem are calculated,thus the faults can be located.

    3.Application of ABC on software fault localization

    Compared with the foraging process of a bee colony,several problems should be solved when applying the ABC algorithm on software fault localization:

    (i)How to design and make an extension of the ABC algorithm to solve the localization problem;

    (ii)How to defin and select the fitnes function of the ABC algorithm related to the localization problem;

    (iii)How to gather the execution data and make it valid for the ABC algorithm to recognize.

    3.1ABC algorithm analysis associated with the localization problem

    Suppose that all the possible fault locations of a program withD-dimensional input space areS=RD,whereSrefers to the global search space of the bee colony,andDrefers to the dimension of individual vectors.The total number of bees isNs=Ne+Nu,in whichNerepresents the number of employed foragers,andNurepresents the number of unemployed foragers.If we assume thatXi∈S(i=1,2,...,Nε)is an individual test case,X=(X1,...XNε)stands for a set of test cases corresponding to an employed bee colony.X(0)represents the initial test case set,andX(n)represents the test cases executed in thenth iteration corresponding to thenthgeneration employed foragers.The fitnes function is represented asf∶S→R,whereRis related to the localization accuracy of the current test cases.The process for solving the fault localization problem using the ABC algorithm can be described in six steps.

    Step 1The initial test case set is generated and executed,after which the cost value of each test case is calculated.The test cases whose cost values rank in the firsNeare chosen as the valid food sources.

    Step 2The employed bees of the next generation search around their current positions to fin new solutions, which means that the current test caseis mutated into a new one according to the search strategy.Thus,the execution paths are changed,and the positions are updated if the new cost value is lower than the original value.The search strategy can be described as follows:

    wherej∈{1,2,...,D},k∈{1,2,...Nε}andk/=i;refers to the new test case,kandjare chosen randomly,is a random value between?1 and 1,andV∈Sis required.

    Step 3The better case is selected between the newly generated test caseViand original test caseXi,which is represented asTs∶S2→S.The probability distribution ofTsis shown as follows:

    This progam assures that the elite individual can be sustainedandtheevolutionarydirectionwillnotretreat,which means that the better cases are reserved.

    Step 4The unemployed bees apply the roulette selection method to choose the individual bee that maintains a relatively low cost value as the leading bee,according to the calculated cost results of employed bees.Each recruited unemployed bee continues to search for new solutions only around the leading bee’s solution space,similar to Step 2.The cost values of these solutions are then calculated.The selection operatorTs1∶SNe→Sis used to select an individual in employed bees,of which the selection possibility is shown as

    Step 5The best fitnes valuef bestand corresponding parameters are updated after the current iteration of the colony is completed.

    Step 6If the search timeBasis larger than a certain maximum valueLimit,the employed bee surrenders the solution and searches for new food resources,which can be realized by re-initializing the parameters.

    where rand(0,1)is a random value between 0 and 1.Once the iteration-stopping criterion is met,the algorithm stops and outputs the global best fitnes valuef bestand corresponding parameters.Otherwise,the algorithm continues and returns to Step 2[21].

    3.2Fitness function analysis

    The calculation of the cost value in the ABC algorithm is determined by the selection of the fitnes function.Thus, the convergence rate of the algorithm and accuracy of the optimal solution can be determined.The selection of the fitnes functionhas greatsignificanc onthe resultsofsoftware fault localization.

    In the process of software fault localization,the approachtocalculatethecostvalueoffoodsourcesis tocompare the test cases that failed in executing with those that succeeded.The test results are then evaluated.The more faults exposed,the higher the suspicion scores are.

    The firs factor of the fitnes function considered in this paper is the correlation coefficien in Tarantula[8],which is define as

    The symbols in the correlation coefficien formula can be related to the observation matrix of the program spectrum and execution results of test cases.In this formula,a11(sk)is the number of test cases that execute the basic unitskand return a result of fail,a10(sk)is the number of test cases that execute the basic unitskand return a result of pass,a01(sk)is the number of test cases that do not execute the basic unitskand return a result of fail,anda00(sk)is the number of test cases that do not execute the basic unitskand return a result of pass.

    The second factor considered to construct the fitnes function in this paper is the program dependence relationship.Consider two program unitssiandsj.Ifsihas control or data dependency onsj,then it contributes some score tosj.The suspicion score ofsjmultiplies a coefficienaij,which is greater than one when rating the suspicion score ofsi.Similarly,if the suspicion score ofsjis higher,it weakens the score ofsi.The suspicion score ofsjmultiplies a coefficienaij,which is less than one.

    Finally,the two main factors are synthesized,and the suspicion score of program unitskisScore(k)=,whereNis the numberof basic program units.

    An illustrative example is shown in Table 1,the coverage conditions and execution results are included.In the table,“1”means that the test case executes the statement and“0”means not.The last row of the table shows if the execution passed(P)or failed(F).

    The correlation coefficien of each statement are calculated:

    The control dependences in the example program are shown in Fig.1.s4 and s8 has control dependency on s3, then they contribute some score to s3.

    Table 1 Sample program with coverage and execution data

    Fig.1 Control dependence graph of the example

    The multiple coefficien is 0.8 as an assumption,then the scores of the statements are calculated:

    Therefore,the fitnes values of the execution are obtained,andScore(4)=1.152,which shows that the statement with max score is s4.Then the location of the fault is found,which matches the real location exactly.

    3.3 Achievement in data gathering

    The collection of program execution information is the basis of the cost value calculation in the searching process of a bee colony.The main process of data gathering is to obtain the information of the statement coverage, branch coverage,and program variable data during program execution.This study mainly uses the program structure analysis,data analysis,and instrumentation technology to gather data for the algorithm.

    Both the control fl w and data fl w of the program can trigger the control dependency and data dependency betweenprogramunits,whichaffectthe outerbehaviorofthe program.Analyzing the structure of the program and data, as well as comprehendingthe relationship among program units,can provide guidance for program instrumentation. Program dependency is a factor to obtain the fitnes function of the ABC algorithmin this paper,andplays a crucial role in the process of fault localization.

    Toobtainthepredicateexecutioninformation,statement coveringinformation,anddatafl winformation,statement coverage probes,conditional branch probes,and variable tracking probes are instrumented in the program without changing the logical accuracy and structural integrity.The programinformationwill be stored where the probeis executed after program execution.The variable information and branchcoverageinformationcan be processeddirectly in the approach of locating faults using the ABC algorithm.The program location coverage information records the coverage of units or statements by all the executed test cases.The abstract representation of the program spectrum is adopted to record the coverage of unit location in this paper.The coverage probe of a basic program unit is assigned as 1 when one of the test cases is executing through it.Otherwise,it is assigned as 0.The view matrix of the executed program spectrum will be obtained as

    Spectra=[Insij]M×Nafter all the test cases are executed,whereInsijrepresents the value of the coverage probe,Mis the number of test cases,andNis the number of basic program units.

    4.Experiment

    The TCAS program in the Siemens suite is selected as an experiment in this paper.The programs of the Siemens suite have been employed by many fault localizationrelated studies in their experiments(such as in[16]).All the correct and faulty versions of the programs(written in the C language)and test cases are downloaded from the software-artifact infrastructure repository[27].The TCAS program comes in 41 faulty versions,together with a reference implementation and 1 608 test cases,whose faults can be classifie into operandmutation,operatormutation, logic mutation,and code missing.Eight wrong versions of the program are selected as the experiment data in this paper.The output of fault localization contains the suspicion value of basic program units,highest fitnes value at each iteration,and optimal test case set.This experimentis mainly conducted in VC 6.0++.

    4.1 Experiment design and specificatio

    The fl wchart of the experiment is shown in Fig.2.After preprocessing,compiling,executing,and collecting information,the cost value is calculated by analyzing program dependency and view matrix of the program spectrum. Thus,the suspicion of each program unit is scored.The searching process ends when the iterations reach the maximum limit or the cost value of food source meets the requirements.The searching result is obtained,and the fault is located where the probe with the highest suspicion score lies.

    Fig.2 Flowchart of the experiment

    After analyzingthe programdependencyrelationshipof TCAS,several probes are instrumented manually in some basic program units.The structure of the inserted probes is shown in Fig.3.Thenumrecords the serial number of the probe,and the value records the variable values that the probe tracks.If no variable is to be tracked,the value will be set to 0.The pass records whether the basic program unit is covered while the program is being executed. Fourteen probes are inserted in TCAS to obtain program execution information in this experiment.

    Fig.3 Structure of probes

    To determine whether the test cases are executed successfully or not,the correct version of the program in the Siemens suite is also compiled and executed,and the expected outputs are obtained.The wrong versions with instrumented probes are then compiled and executed.Thetest result(success/failure)can be obtained by comparing the outputof the wrongversionswith the expectedoutputs.

    After compiling and executing the program,the view matrix of the program spectrum can be obtained from the coverage information of the program units.The coverage information and results of the execution are input to the ABC algorithm to calculate the correlation coefficien and suspicion score of each basic program unit.The initial parameter setting of the ABC algorithm is shown in Fig.4.

    Fig.4 Initial parameters of the ABC algorithm

    Finally,the suspicion scores of the basic units are added to obtain the cost value of the current searching iteration.

    If the fitnes value of the ABC algorithm,namely,the cost value of the food source,cannot meet the iterationstopping criterion,the local and global search for food sources will continue.The current test cases will be mutated in terms of rules set to create new test cases for executing the program.

    4.2 Experimental results and analysis

    The results of fault localization using the proposed approach are shown in Table 2,which reflect the accuracy of this experiment.Considering the wrong version 4 as an example,the fault is located in line 75,and probe 9 located in lines 73–76 has the highest suspicion score.

    Table 2 Experimental results

    The method proposed in this paper can successfully locate the fault position for all the above wrong versions. However,the locating efficien y,reflecte with the number of iterations,is not the same under different types of faults.The differences among each type of fault and the number of iterations are shown in Fig.5.

    Fig.5 Number of iterations

    Fig.5 shows that the number of iterations is relatively lower and the efficien y is high for the fault type of operator mutation.However,the efficien y is lower when dealing with the problem of operandmutation.The main cause of this phenomenon is the difference in exposure degrees of different types.The defects that are easy to expose have a high probability of leading to failure during execution of the test cases,so they are easily discovered.Meanwhile, defects that are hard to expose may not lead to failure; therefore,they need more test iterations to be determined.

    The ABC algorithmand PSO algorithmare comparedto verifythe efficien yand superiorityof the ABC algorithm. As showninFig.6 andFig.7,the red-fille graphonthe left refersto theexperimentalresultsusing theABC algorithm, and the green-fille graph on the right refers to the experimental results using the PSO algorithm.The histograms are the results of fault localization,in which the horizontal axis shows the number of probes,and the vertical axis shows the suspicion scores.The curves show the growth trend of the fitnes value with the number of iterations,in which the horizontal axis shows the number of iterations, and the vertical axis shows the value of fitnes degree(the best cost value of food sources in each iteration).

    Fig.6 shows the results of the experiment conductedwith wrong version 4.The contrast graphs show that the suspicion scores of the ABC algorithm are higher than those of PSO,which indicates that the fault exposure degree of test cases generated by the PSO algorithm is less than that by the ABC algorithm.The fitnes value of the ABC algorithm slowly rises in the firs ten iterations and then peaks quickly.By contrast,the PSO algorithm requires 35 iterations to reach the peak,which proves the efficien y of the ABC algorithm.

    Fig.6 Contrast between ABC and PSO in the experiment of wrong version 4

    Fig.7 shows the results of the experiment conducted with wrong version 29.The effect of fault localization of the ABC algorithm is great,whereas the fitnes value of PSO remains the same all the time.The PSO algorithm falls into the local optimum in the iterations so that it provides the same scores to probe 12 and probe 13.Probe 12 is not the correctfault location,whichindicates that the experiment using the PSO algorithm fails to locate the fault.

    Fig.7 Contrast between ABC and PSO in the experiment of wrong version 29

    In summary,the experimental results show that:

    (i)The ABC algorithm can avoid the local optimum to the largest extent,so the faults can be located without the threat of local optimal searches.

    (ii)Whensolvingthe problemofsoftware fault localization,the efficien y of the ABC algorithmis better than that of the PSO algorithm,which is known for being fast and efficient Therefore,the proposed method is effective and has great potential.

    5.Conclusions

    An approach adopting the ABC algorithm is proposed in this paper to locate software faults.First,the test cases areinput to the wrong versions of the program,which are instrumented with probes to obtain the execution data.The program execution information is then abstracted into the program spectrum to obtain the view matrix.Finally,according to the view matrix and results of program execution,the correlation coefficien of each basic unit is calculated.Combined with the analysis of the dependency relationship between program units,the fitnes value is obtained.

    The Siemens suite,which is widely used in fault localization,is adopted in this study.The results show that the approach presented in this paper is effective and efficient The proposed method outperforms the PSO algorithm in terms of feasibility and efficien y.

    Our future work will focus on implementing our proposedsoftwarefaultlocalizationmethodbasedontheABC algorithm in more complex software,which is a challenging topic in software debugging.

    [1]I.Vessey.Expertise in debugging computer programs:a process analysis.International Journal of Man-Machine Studies, 1985,23(5):459–494.

    [2]J.C.King.Symbolic execution and program testing.Communications of the ACM,1976,19(7):385–394.

    [3]M.Young,R.N.Taylor.Combining static concurrency analysis with symbolic execution.IEEE Trans.on Software Engineering,1988,14(10):1499–1511.

    [4]E.M.Clarke,J.M.Wing.Formal methods:state of the art and future directions.ACM Computing Surveys(CSUR),1996, 28(4):626–643.

    [5]L.Hubert,T.Jensen,D.Pichardie.Semantic foundations and inference of non-null annotations.Formal Methods for Open Object Based Distributed Systems,2008,5051:132–149.

    [6]Spoto F.Precise null-pointer analysis.Software&Systems Modeling,2011,10(2):219–252.

    [7]M.Renieres,S.P.Reiss.Fault localization with nearest neighbor queries.Proc.of the 18th IEEE International Conference on Automated Software Engineering,2003:30–39.

    [8]J.A.Jones,M.J.Harrold,J.Stasko.Visualization of test information to assist fault localization.Proc.of the 24th International Conference on Software Engineering,2002:467–477.

    [9]K.Yu,M.Lin,Q.Gao,et al.Locating faults using multiple spectra-specifi models.Proc.of the ACM Symposium on Applied Computing,2011:1404–1410.

    [10]X.P.Wang.Research on software fault localization based on execution trace.Computer Science,2009,36(10):168–166.

    [11]R.Abreu,P.Zoeteweij,A.J.C.Van Gemund.On the accuracy of spectrum-based fault localization.Proc.of the Testing: Academic and Industrial Conference Practice and Research Techniques,2007:89–98.

    [12]W.E.Wong,Y.Qi,L.Zhao,et al.Effective fault localization using code coverage.Proc.of the 31st IEEE Annual International Conference on Computer Software and Applications, 2007:449–456.

    [13]W.E.Wong,T.Wei,Y.Qi,et al.A crosstab-based statistical method for effective fault localization.Proc.of International Conference on Software Testing Verificatio&Validation,2008:42–51.

    [14]D.Hao,L.Zhang,Y.Pan,et al.On similarity-awareness in testing-based fault localization.Automated Software Engineering,2008,15(2):207–249.

    [15]C.Liu,X.F.Yan,L.Fei,et al.SOBER:statisticalmodel-based bug localization.ACM SIGSOFT Software Engineering Notes, 2005,30(5):286–295.

    [16]H.Cleve,A.Zeller.Locating causes of program failures.Proc. of the ACM 27th International Conference on Software Engineering,2005:342–351.

    [17]R.P.Pargas,M.J.Harrold,R.R.Peck.Test-data generation using genetic algorithms.Software TestingVerificatio and Reliability,1999,9(4):263–282.

    [18]D.Berndt,J.Fisher,L.Johnson,et al.Breeding software test cases with genetic algorithms.Proc.of the 36th IEEE Annual Hawaii International Conference on System Sciences,2003: 10.

    [19]R.Zha,D.Zhang.An optimized software testing strategy based on ant colony algorithm.Computer Applications&Software,2011,28(12):151–155.

    [20]J.Qi.Improved research of software test based on genetic algorithm and ant colony algorithm.Industrial Instrumentation&Automation,2013,6:112–116.

    [21]D.Karaboga,B.Basturk.A powerful and efficien algorithm for numerical function optimization:artificia bee colony (ABC)algorithm.Journal of Global Optimization,39(3), 459–471.

    [22]S.G.Qureshi,U.A.Ansari.Enhanced form of solving real coded numerical optimization problem using ABC algorithm with linear crossover operator.International Journal on Computer Science&Engineering,2012,4(6):1265–1270.

    [23]F.S.Abu-Mouti,M.E.El-Hawary.Optimal distributed generation allocation and sizing in distribution systems via artificia bee colony algorithm.IEEE Trans.on Power Delivery,2011, 26(4):2090–2101.

    [24]H.Nasiraghdam,S.Jadid.Optimal hybrid PV/WT/FC sizing and distribution system reconfiguratio using multi-objective artificia bee colony(MOABC)algorithm.Solar Energy,2012, 86(10):3057–3071.

    [25]C.Xu,H.Duan.Artificia bee colony(ABC)optimized edge potential function(EPF)approach to target recognition for low-altitude aircraft.Pattern Recognition Letters,2010, 31(13):1759–1772.

    [26]Y.Shi,R.C.Eberhart.Empirical study of particle swarm optimization.Proc.of the IEEE Congress on Evolutionary Computation,1999:32–49.

    [27]Software-artifact infrastructure repository.http://sir.unl.edu/ portal/index.php.

    Biographies

    Linzhi Huangwas born in 1991.She received her B.S.degree from Beihang University in 2013. Now she is pursuing her M.S.degree in the School of Reliability and Systems Engineering,Beihang University,Beijing,China,and she is also a member of Key Laboratory of Reliability and Environmental Engineering Technology,Beihang University.Her research interests include software reliability and complex networks.

    E-mail:linzhihuang@buaa.edu.cn

    Jun Aiwas born in 1978.He received his Ph.D.degree from Beihang University in 2006.He is currently an associate professor and Master’s supervisor at Beihang University,Beijing,China.His research interests include software failure mechanism, software complex networks,software defect data mining technology,software defect detection,diagnosis,forecast and localization technology,and system quality evaluation.

    E-mail:aijun@buaa.edu.cn

    10.1109/JSEE.2015.00145

    Manuscript received January 22,2015.

    *Corresponding author.

    欧美国产精品va在线观看不卡| 蜜桃国产av成人99| 日本精品一区二区三区蜜桃| 精品国产超薄肉色丝袜足j| 日日爽夜夜爽网站| 国产精品偷伦视频观看了| 天天躁夜夜躁狠狠躁躁| 制服人妻中文乱码| 99精品久久久久人妻精品| 视频区欧美日本亚洲| 久久精品国产亚洲av香蕉五月 | 国产高清视频在线播放一区 | 久热这里只有精品99| 国产高清视频在线播放一区 | 日韩欧美国产一区二区入口| 欧美日韩国产mv在线观看视频| 国产男女内射视频| 国产极品粉嫩免费观看在线| 亚洲男人天堂网一区| 国产精品1区2区在线观看. | 中文字幕色久视频| 啪啪无遮挡十八禁网站| 久久久精品免费免费高清| 成人av一区二区三区在线看 | 老汉色av国产亚洲站长工具| 午夜免费成人在线视频| 欧美精品亚洲一区二区| 精品久久久精品久久久| 91精品国产国语对白视频| 中文字幕最新亚洲高清| 极品人妻少妇av视频| 欧美精品一区二区免费开放| 最近最新免费中文字幕在线| 免费高清在线观看日韩| 十八禁网站免费在线| 老司机影院成人| 精品一区在线观看国产| 日本撒尿小便嘘嘘汇集6| 黄片大片在线免费观看| 69av精品久久久久久 | 日本欧美视频一区| 亚洲精品国产av蜜桃| 亚洲精品国产av成人精品| 人人澡人人妻人| 国产男女内射视频| 国产精品成人在线| 美女大奶头黄色视频| 十八禁网站免费在线| 亚洲精品久久成人aⅴ小说| 99国产极品粉嫩在线观看| 999久久久精品免费观看国产| 久久国产精品影院| 啦啦啦在线免费观看视频4| 熟女少妇亚洲综合色aaa.| 少妇人妻久久综合中文| 99热国产这里只有精品6| 成年人黄色毛片网站| 久久久久国内视频| 久久天躁狠狠躁夜夜2o2o| 国产亚洲精品久久久久5区| 国产三级黄色录像| 久久久精品免费免费高清| 新久久久久国产一级毛片| 建设人人有责人人尽责人人享有的| 久久精品国产综合久久久| 免费一级毛片在线播放高清视频 | 亚洲成av片中文字幕在线观看| 韩国精品一区二区三区| 亚洲精品国产区一区二| 一级a爱视频在线免费观看| 丝袜美足系列| 欧美大码av| 热99re8久久精品国产| a级毛片在线看网站| 女人久久www免费人成看片| 青春草视频在线免费观看| 天天躁狠狠躁夜夜躁狠狠躁| 欧美精品亚洲一区二区| 国产精品久久久久成人av| 久久午夜综合久久蜜桃| 淫妇啪啪啪对白视频 | 美女主播在线视频| 十八禁人妻一区二区| 亚洲av欧美aⅴ国产| 成年美女黄网站色视频大全免费| 久久狼人影院| av视频免费观看在线观看| 青春草视频在线免费观看| 飞空精品影院首页| 亚洲专区中文字幕在线| 热re99久久精品国产66热6| 久久国产精品影院| 色老头精品视频在线观看| 王馨瑶露胸无遮挡在线观看| 人妻人人澡人人爽人人| 少妇猛男粗大的猛烈进出视频| 国产av国产精品国产| 91精品国产国语对白视频| 久久ye,这里只有精品| 欧美日韩亚洲国产一区二区在线观看 | 日韩欧美一区视频在线观看| 国产又爽黄色视频| 日韩中文字幕欧美一区二区| 少妇 在线观看| 狂野欧美激情性bbbbbb| 97人妻天天添夜夜摸| 欧美人与性动交α欧美软件| 黑人操中国人逼视频| av在线播放精品| 久久久精品94久久精品| 欧美另类亚洲清纯唯美| 99久久精品国产亚洲精品| 99香蕉大伊视频| 高清黄色对白视频在线免费看| 俄罗斯特黄特色一大片| 亚洲男人天堂网一区| 亚洲国产精品999| 国产精品二区激情视频| 国产不卡av网站在线观看| 午夜免费观看性视频| 十八禁高潮呻吟视频| 日韩欧美国产一区二区入口| 一区福利在线观看| 免费在线观看完整版高清| 国产亚洲欧美在线一区二区| 国产av精品麻豆| 亚洲中文av在线| 欧美黑人欧美精品刺激| 男女床上黄色一级片免费看| 国产三级黄色录像| 亚洲精品美女久久av网站| 美女高潮到喷水免费观看| 亚洲国产日韩一区二区| 中文字幕人妻丝袜一区二区| 午夜福利,免费看| 捣出白浆h1v1| 在线精品无人区一区二区三| 1024香蕉在线观看| 欧美老熟妇乱子伦牲交| 精品视频人人做人人爽| 国产一卡二卡三卡精品| 日韩,欧美,国产一区二区三区| 欧美激情极品国产一区二区三区| 国产精品久久久人人做人人爽| 日韩电影二区| 亚洲精品久久成人aⅴ小说| 亚洲欧美色中文字幕在线| 老汉色∧v一级毛片| www日本在线高清视频| 下体分泌物呈黄色| 一级a爱视频在线免费观看| 秋霞在线观看毛片| 亚洲全国av大片| 国产欧美日韩一区二区三区在线| 成人av一区二区三区在线看 | 国产亚洲精品久久久久5区| 国产精品自产拍在线观看55亚洲 | 黄色怎么调成土黄色| 91老司机精品| 国产99久久九九免费精品| 日日摸夜夜添夜夜添小说| 啦啦啦在线免费观看视频4| 亚洲国产欧美网| 99国产精品99久久久久| 国产亚洲精品一区二区www | 精品人妻熟女毛片av久久网站| 欧美午夜高清在线| 国产精品久久久人人做人人爽| 一本一本久久a久久精品综合妖精| 18禁国产床啪视频网站| 91麻豆精品激情在线观看国产 | 淫妇啪啪啪对白视频 | 悠悠久久av| 亚洲国产欧美日韩在线播放| 老熟妇仑乱视频hdxx| 999久久久国产精品视频| 日本91视频免费播放| 国产成人系列免费观看| 国产真人三级小视频在线观看| 极品少妇高潮喷水抽搐| 国产野战对白在线观看| 久久精品aⅴ一区二区三区四区| 天天影视国产精品| 亚洲成人免费av在线播放| 欧美精品高潮呻吟av久久| 国产日韩欧美在线精品| 免费少妇av软件| 久久久国产欧美日韩av| 乱人伦中国视频| 欧美av亚洲av综合av国产av| tube8黄色片| 91麻豆精品激情在线观看国产 | 香蕉国产在线看| 两性夫妻黄色片| 狂野欧美激情性xxxx| 欧美中文综合在线视频| xxxhd国产人妻xxx| 天堂8中文在线网| 我的亚洲天堂| 91九色精品人成在线观看| 一边摸一边抽搐一进一出视频| 国产日韩欧美视频二区| 国产欧美日韩一区二区三区在线| 国产又爽黄色视频| 久久久久精品人妻al黑| 男女下面插进去视频免费观看| 一级,二级,三级黄色视频| 大香蕉久久成人网| 热99re8久久精品国产| 一本—道久久a久久精品蜜桃钙片| 99香蕉大伊视频| 免费不卡黄色视频| 成年女人毛片免费观看观看9 | 又黄又粗又硬又大视频| 老司机在亚洲福利影院| 久久久久国产精品人妻一区二区| 亚洲午夜精品一区,二区,三区| 纯流量卡能插随身wifi吗| 国产91精品成人一区二区三区 | 欧美变态另类bdsm刘玥| 久久久精品免费免费高清| 考比视频在线观看| 在线观看一区二区三区激情| 精品亚洲成国产av| 99久久人妻综合| 亚洲成人免费av在线播放| 欧美激情 高清一区二区三区| 天天添夜夜摸| a级毛片在线看网站| 亚洲欧美精品自产自拍| 一级片免费观看大全| 99香蕉大伊视频| 一级片'在线观看视频| 久久国产亚洲av麻豆专区| 亚洲午夜精品一区,二区,三区| 999久久久国产精品视频| 日韩精品免费视频一区二区三区| 国产一区二区激情短视频 | 精品第一国产精品| 99久久综合免费| 亚洲午夜精品一区,二区,三区| 女人被躁到高潮嗷嗷叫费观| av视频免费观看在线观看| 国产男女超爽视频在线观看| 最近最新中文字幕大全免费视频| 久久久久久久久久久久大奶| 日本一区二区免费在线视频| 精品久久蜜臀av无| 窝窝影院91人妻| 久久人人爽人人片av| 亚洲国产毛片av蜜桃av| 国产一卡二卡三卡精品| 国产精品九九99| 在线观看免费日韩欧美大片| 免费久久久久久久精品成人欧美视频| 国产av国产精品国产| 国产精品免费视频内射| 亚洲全国av大片| 国产淫语在线视频| 亚洲精品美女久久久久99蜜臀| 精品免费久久久久久久清纯 | 丁香六月欧美| 亚洲精品av麻豆狂野| 精品久久久精品久久久| 国产免费视频播放在线视频| 国产人伦9x9x在线观看| 9191精品国产免费久久| 不卡一级毛片| 国产日韩欧美在线精品| 亚洲av电影在线进入| 亚洲色图 男人天堂 中文字幕| 丰满人妻熟妇乱又伦精品不卡| 高清欧美精品videossex| 好男人电影高清在线观看| 男女床上黄色一级片免费看| 亚洲激情五月婷婷啪啪| 免费久久久久久久精品成人欧美视频| 精品少妇内射三级| 黄色 视频免费看| 国产免费av片在线观看野外av| 国产有黄有色有爽视频| 美女主播在线视频| 亚洲精品久久午夜乱码| 日韩中文字幕欧美一区二区| 国产精品久久久av美女十八| 久久女婷五月综合色啪小说| 一区在线观看完整版| 欧美精品av麻豆av| 搡老熟女国产l中国老女人| 三上悠亚av全集在线观看| 99国产精品免费福利视频| 最近最新中文字幕大全免费视频| 热99re8久久精品国产| 欧美大码av| 国产精品偷伦视频观看了| 一本色道久久久久久精品综合| 日日夜夜操网爽| 欧美亚洲日本最大视频资源| 一区福利在线观看| 黄色视频不卡| 两性夫妻黄色片| www.熟女人妻精品国产| 国产在视频线精品| 亚洲伊人色综图| 亚洲av日韩精品久久久久久密| 亚洲av日韩精品久久久久久密| 一级,二级,三级黄色视频| 久久久久精品国产欧美久久久 | a 毛片基地| 波多野结衣av一区二区av| 午夜福利在线免费观看网站| 亚洲天堂av无毛| 精品一区在线观看国产| 一本综合久久免费| 天天躁夜夜躁狠狠躁躁| 考比视频在线观看| 黄频高清免费视频| 国产精品秋霞免费鲁丝片| 日本猛色少妇xxxxx猛交久久| 精品一区二区三区av网在线观看 | e午夜精品久久久久久久| 欧美久久黑人一区二区| 五月天丁香电影| 亚洲国产看品久久| 亚洲av欧美aⅴ国产| 多毛熟女@视频| 欧美 亚洲 国产 日韩一| 国产在线观看jvid| 一个人免费在线观看的高清视频 | 日本猛色少妇xxxxx猛交久久| 岛国在线观看网站| 久久久精品免费免费高清| 亚洲激情五月婷婷啪啪| 男女国产视频网站| 欧美精品亚洲一区二区| 波多野结衣av一区二区av| 亚洲性夜色夜夜综合| 一区二区av电影网| 亚洲av成人一区二区三| 91字幕亚洲| 美女脱内裤让男人舔精品视频| 爱豆传媒免费全集在线观看| 久久精品国产综合久久久| 十八禁高潮呻吟视频| 日本a在线网址| 国产精品免费大片| 一级a爱视频在线免费观看| 国产av一区二区精品久久| av超薄肉色丝袜交足视频| 午夜精品久久久久久毛片777| 中国国产av一级| a 毛片基地| 巨乳人妻的诱惑在线观看| 日韩视频一区二区在线观看| 日韩大片免费观看网站| netflix在线观看网站| www.自偷自拍.com| 十八禁网站网址无遮挡| 欧美成狂野欧美在线观看| 91精品国产国语对白视频| 久久精品国产亚洲av香蕉五月 | 精品亚洲成a人片在线观看| 国产黄频视频在线观看| 高清欧美精品videossex| 国产91精品成人一区二区三区 | 成人手机av| 中文字幕最新亚洲高清| 久久国产精品影院| 日本黄色日本黄色录像| 一区在线观看完整版| 久久精品国产综合久久久| 日韩 欧美 亚洲 中文字幕| 纵有疾风起免费观看全集完整版| 中文字幕最新亚洲高清| 超碰97精品在线观看| 国产欧美亚洲国产| 视频区图区小说| 丰满少妇做爰视频| 国产日韩欧美在线精品| 一级,二级,三级黄色视频| 亚洲情色 制服丝袜| 悠悠久久av| 亚洲精品粉嫩美女一区| 国产精品麻豆人妻色哟哟久久| 久久女婷五月综合色啪小说| 99热网站在线观看| 女人爽到高潮嗷嗷叫在线视频| 欧美av亚洲av综合av国产av| 交换朋友夫妻互换小说| 亚洲欧美日韩高清在线视频 | 国产精品一二三区在线看| 岛国毛片在线播放| 欧美黄色淫秽网站| 香蕉国产在线看| 国产区一区二久久| 侵犯人妻中文字幕一二三四区| 国产不卡av网站在线观看| 国产欧美日韩一区二区精品| 99国产精品99久久久久| 国产高清视频在线播放一区 | 亚洲欧美日韩高清在线视频 | 亚洲欧美日韩另类电影网站| 久久久国产精品麻豆| 各种免费的搞黄视频| 国产亚洲精品一区二区www | 一进一出抽搐动态| 日本黄色日本黄色录像| 中文字幕制服av| 成人免费观看视频高清| av片东京热男人的天堂| 久久久久网色| 日本精品一区二区三区蜜桃| 人人妻人人澡人人看| 免费日韩欧美在线观看| 亚洲精品久久成人aⅴ小说| 一区在线观看完整版| 欧美人与性动交α欧美软件| 日韩精品免费视频一区二区三区| 亚洲美女黄色视频免费看| 免费一级毛片在线播放高清视频 | 成人手机av| 亚洲欧美清纯卡通| 欧美午夜高清在线| 日本一区二区免费在线视频| 欧美激情久久久久久爽电影 | 国产区一区二久久| 97人妻天天添夜夜摸| 亚洲av美国av| 首页视频小说图片口味搜索| 黄色视频在线播放观看不卡| 国产一卡二卡三卡精品| 香蕉国产在线看| 夜夜骑夜夜射夜夜干| 免费在线观看完整版高清| bbb黄色大片| 久久久久网色| 亚洲国产精品999| 国产成人免费观看mmmm| 妹子高潮喷水视频| 欧美老熟妇乱子伦牲交| 一区二区av电影网| 岛国在线观看网站| 亚洲成av片中文字幕在线观看| 日韩一卡2卡3卡4卡2021年| 一级a爱视频在线免费观看| 亚洲av日韩精品久久久久久密| av福利片在线| 在线十欧美十亚洲十日本专区| 国产精品国产av在线观看| 精品国产一区二区久久| 国产精品1区2区在线观看. | 久久精品成人免费网站| 日日夜夜操网爽| 日本欧美视频一区| 在线观看免费日韩欧美大片| 国产精品久久久久成人av| 在线永久观看黄色视频| 日韩有码中文字幕| 欧美性长视频在线观看| 亚洲国产精品999| 别揉我奶头~嗯~啊~动态视频 | 国产真人三级小视频在线观看| 亚洲精品久久久久久婷婷小说| 黄色毛片三级朝国网站| 成年动漫av网址| 最黄视频免费看| 曰老女人黄片| 90打野战视频偷拍视频| 国产高清videossex| www.自偷自拍.com| 视频在线观看一区二区三区| 男男h啪啪无遮挡| 一区二区日韩欧美中文字幕| 久久久精品国产亚洲av高清涩受| 一二三四在线观看免费中文在| 久久精品人人爽人人爽视色| 亚洲男人天堂网一区| 亚洲国产欧美一区二区综合| av在线播放精品| tube8黄色片| 1024视频免费在线观看| 99九九在线精品视频| 高清视频免费观看一区二区| 亚洲精品乱久久久久久| 美女视频免费永久观看网站| 肉色欧美久久久久久久蜜桃| 男女国产视频网站| 精品亚洲乱码少妇综合久久| 大香蕉久久成人网| 亚洲自偷自拍图片 自拍| 91精品三级在线观看| 老司机福利观看| 老熟妇仑乱视频hdxx| 亚洲av国产av综合av卡| 国产成人a∨麻豆精品| 考比视频在线观看| 成人国产av品久久久| 可以免费在线观看a视频的电影网站| 啦啦啦啦在线视频资源| 老鸭窝网址在线观看| 99九九在线精品视频| 久久av网站| 亚洲成国产人片在线观看| 婷婷色av中文字幕| 男女免费视频国产| 91精品伊人久久大香线蕉| 1024香蕉在线观看| 亚洲成国产人片在线观看| 亚洲精品国产区一区二| 国产伦人伦偷精品视频| 中文字幕av电影在线播放| 在线永久观看黄色视频| 777米奇影视久久| 韩国精品一区二区三区| 又大又爽又粗| 99国产精品一区二区三区| 久久精品人人爽人人爽视色| 久久综合国产亚洲精品| 亚洲国产看品久久| 成人国产av品久久久| 久久国产亚洲av麻豆专区| h视频一区二区三区| e午夜精品久久久久久久| 亚洲精品国产av蜜桃| 最新的欧美精品一区二区| 在线十欧美十亚洲十日本专区| 亚洲性夜色夜夜综合| 少妇猛男粗大的猛烈进出视频| 宅男免费午夜| 自拍欧美九色日韩亚洲蝌蚪91| 午夜免费成人在线视频| 欧美精品一区二区免费开放| 一边摸一边抽搐一进一出视频| 成在线人永久免费视频| 啦啦啦视频在线资源免费观看| 欧美在线黄色| 在线观看免费午夜福利视频| 丰满饥渴人妻一区二区三| 肉色欧美久久久久久久蜜桃| 日日夜夜操网爽| 免费在线观看完整版高清| www.熟女人妻精品国产| 亚洲国产毛片av蜜桃av| 日本wwww免费看| 成人av一区二区三区在线看 | 久久久久网色| 少妇裸体淫交视频免费看高清 | 国产高清视频在线播放一区 | 成年人午夜在线观看视频| 免费观看人在逋| 9191精品国产免费久久| 中文字幕人妻丝袜一区二区| 免费av中文字幕在线| 极品少妇高潮喷水抽搐| 美女大奶头黄色视频| 天天躁日日躁夜夜躁夜夜| 日韩视频一区二区在线观看| 国产高清国产精品国产三级| 欧美黑人精品巨大| 爱豆传媒免费全集在线观看| 人人妻,人人澡人人爽秒播| 18禁黄网站禁片午夜丰满| 久久久久久久国产电影| 69精品国产乱码久久久| 超碰97精品在线观看| 国产av又大| 欧美成人午夜精品| 亚洲精品日韩在线中文字幕| 久久久久网色| av网站免费在线观看视频| 欧美性长视频在线观看| 亚洲中文av在线| 国产1区2区3区精品| 久久精品国产亚洲av香蕉五月 | 男人添女人高潮全过程视频| 十分钟在线观看高清视频www| 亚洲av成人不卡在线观看播放网 | 在线观看www视频免费| 久久天躁狠狠躁夜夜2o2o| 黑人操中国人逼视频| 国产精品一区二区精品视频观看| 99精国产麻豆久久婷婷| 国产精品 欧美亚洲| 日日爽夜夜爽网站| 欧美在线黄色| 精品熟女少妇八av免费久了| 秋霞在线观看毛片| 99re6热这里在线精品视频| 欧美另类一区| 女人被躁到高潮嗷嗷叫费观| 亚洲五月婷婷丁香| 岛国在线观看网站| 国产精品.久久久| 黄色a级毛片大全视频| 精品人妻1区二区| 欧美亚洲 丝袜 人妻 在线| 超碰97精品在线观看| 母亲3免费完整高清在线观看| 欧美日韩国产mv在线观看视频| 午夜福利在线免费观看网站| 我的亚洲天堂| 午夜福利乱码中文字幕| 国产精品欧美亚洲77777| 午夜影院在线不卡| 成人三级做爰电影| 欧美 日韩 精品 国产| 亚洲国产欧美一区二区综合| 一区二区三区乱码不卡18| 国产亚洲精品久久久久5区| 热re99久久国产66热| 成在线人永久免费视频| 欧美久久黑人一区二区| 国产在线观看jvid| 亚洲精品国产一区二区精华液| 老熟女久久久|