基于搜索的高效變異程序自動修復方法
【圖文】:
正確的定位錯誤和獲取更有效的測試用例集,是其關鍵的研究內容。逡逑通過有效利用修復策略對程序中的錯誤能夠無需人工參與進行修復,極大地減輕軟件逡逑開發(fā)人員對程序調試或維護的壓力。目前大量的APR算法采用己有的錯誤定位技術,逡逑參考錯誤懷疑度給出語句序列,進而進行遍歷嘗試修復。逡逑在使用變異技術的自動程序修復中,由于變異所產(chǎn)生的候選變異體空間極為龐逡逑大,因此有效的使用錯誤定位技術能夠在一定程度上避免無效變異體的產(chǎn)生,從而達逡逑到降低執(zhí)行開銷成本的目的;诖,一種結合了錯誤定位和變異技術的自動程序修逡逑復方法被提出t191。該方法首先采用一種錯誤定位方法,按照計算的測程序所有語句的逡逑懷疑度值降序排序,依次對每一條語句應用變異算子產(chǎn)生所有可能的變異體作為修復逡逑補丁,并通過測試集來驗證每一個變異體是否為正確的修復,其流程如圖2-1。逡逑假定一個錯誤可以通過一系列的變異操作進行修復,那么當錯誤語句排列在懷疑逡逑度序列前端時,就能夠能快的修復。換句話說,錯誤定位的效果越好,修復的過程效逡逑率也越高;而當錯誤定位效果較差時,若錯誤語句在懷疑度序列排列較靠后,則對于逡逑前面遍歷到的語句應用變異算子會產(chǎn)生指數(shù)增長的無效變異體。逡逑
圖3-1基于搜索的變異程序自動修復方法流程逡逑Fig.3-1邋Overview邋of邋search-based邋automated邋program邋repair邋using邋mutation邋and邋fault邋localization逡逑圖3-1描述了基于搜索的變異程序自動修復方法流程。首先,利用錯誤定位技術逡逑對錯誤程序進行預處理形成語句的懷疑度序列,根據(jù)懷疑度序列中高懷疑度的語句位逡逑置,結合可應用的變異算子生成初始種群,其中每一個初始種群中的個體代表??個候逡逑選補丁。本課題的方法并沒有采取傳統(tǒng)上隨機產(chǎn)生初始種群的方式,原因是采取錯誤逡逑定位的優(yōu)點可以很容易的構造一些粗略的解,因此在一定程度上縮短了由隨機產(chǎn)生的逡逑解收斂的過程。具體的描述將在后續(xù)初始種群部分進行詳細討論。然后,在GA的搜逡逑索過程中,種群根據(jù)不同的個體適應度值被分為了兩部分,并在這兩部分中應用不同逡逑的交叉算子,即本課題提出的混合式交叉策略。其余的流程,與一般的遺傳算法類似,,逡逑18逡逑
【學位授予單位】:北京化工大學
【學位級別】:碩士
【學位授予年份】:2018
【分類號】:TP311.5;TP18
【相似文獻】
相關期刊論文 前10條
1 劉旭亮;鐘浩;;一種基于StackOverflow分析的程序自動修復方法[J];計算機工程;2018年10期
2 何九葛;;10kV帶電線路絕緣導線自動修復裝置的研制[J];科技資訊;2018年22期
3 李昂;毛曉光;雷晏;;面向自動修復并融合失效場景的缺陷定位方法[J];計算機科學;2015年12期
4 張春元;李貴乾;楊臻;常緒濤;;藥型端面包覆層自動修復系統(tǒng)方案設計[J];裝備環(huán)境工程;2018年03期
5 程德懌;喬健;;無線自組網(wǎng)絡在應急通信中的研究與應用[J];電信工程技術與標準化;2018年08期
6 郭忠文;邵澤武;;FORMAT.COM源程序分析及其在軟硬盤自動修復和反系統(tǒng)病毒技術中的應用[J];微型機與應用;1992年06期
7 曾慶躍;丁友東;;舊電影中基于Hough變換直線劃痕的檢測[J];計算機工程與設計;2010年04期
8 張軍學;;綠色建筑材料裂縫自修復研究[J];住宅科技;2018年07期
9 陳小康;許暢;江磊;;Hybrid-Fixing:上下文一致性錯誤的正確修復[J];計算機研究與發(fā)展;2015年06期
10 張文富;王野;張鐵軼;;基于RGB色系實現(xiàn)Auto-Repair的途徑[J];科技創(chuàng)新與應用;2016年12期
相關博士學位論文 前1條
1 吳川;基于搜索的軟件自動修復關鍵技術[D];中國礦業(yè)大學;2017年
相關碩士學位論文 前4條
1 孫樹W
本文編號:2692719
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2692719.html