欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法

文檔序號(hào):6517047閱讀:237來源:國(guó)知局
一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法
【專利摘要】本發(fā)明公開了一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法。目前基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成技術(shù)中,遺傳算法的交叉、變異點(diǎn)隨機(jī)選取在個(gè)體基因中的任意位置,產(chǎn)生優(yōu)良基因的同時(shí)也存在破壞已有優(yōu)良基因的可能;子代種群的個(gè)體最大適應(yīng)度值無(wú)論是否大于父代的個(gè)體最大適應(yīng)度值,都向下繼續(xù)遺傳,延長(zhǎng)了迭代過程。本發(fā)明在計(jì)算適應(yīng)度函數(shù)時(shí)找到不滿足目標(biāo)路徑的具體分支,利用該分支的結(jié)構(gòu)信息約束遺傳算法交叉、變異操作的范圍,同時(shí)通過比較子代與父代種群中個(gè)體的最大適應(yīng)度值,拋棄那些低于父代適應(yīng)度值的子代,從而確保了優(yōu)良基因的傳遞,降低了迭代次數(shù),提高了計(jì)算效率。
【專利說明】一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種測(cè)試用例自動(dòng)生成方法,尤其涉及一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,屬于軟件結(jié)構(gòu)測(cè)試技術(shù)。
【背景技術(shù)】
[0002]數(shù)據(jù)流測(cè)試是一種基于代碼的白盒測(cè)試技術(shù),使用程序中的數(shù)據(jù)流關(guān)系來指導(dǎo)測(cè)試者選取測(cè)試用例。即可以選擇一定的測(cè)試用例,使程序按照某個(gè)變量的定義-使用路徑執(zhí)行,通過檢查執(zhí)行結(jié)果是否與預(yù)期的相符來發(fā)現(xiàn)程序的錯(cuò)誤。相對(duì)控制流,基于數(shù)據(jù)流的軟件測(cè)試考察了每個(gè)數(shù)據(jù)的流向,對(duì)程序的執(zhí)行更深入,更有利于對(duì)代碼的測(cè)試。
[0003]測(cè)試用例生成是軟件測(cè)試中的關(guān)鍵環(huán)節(jié),其實(shí)現(xiàn)對(duì)于軟件測(cè)試過程的自動(dòng)化具有重要意義。因此,隨著數(shù)據(jù)流測(cè)試技術(shù)的深入應(yīng)用,研究面向數(shù)據(jù)流的測(cè)試用例自動(dòng)生成方法十分必要。大量研究表明,遺傳算法采用概率化的搜索方式,具有全局搜索優(yōu)化能力強(qiáng),能自學(xué)習(xí)、自適應(yīng),在測(cè)試用例自動(dòng)生成中取得了較好的效果。文獻(xiàn)《基于數(shù)據(jù)流分析的測(cè)試用例自動(dòng)生成技術(shù)》、《基于數(shù)據(jù)流的測(cè)試數(shù)據(jù)自動(dòng)生成技術(shù)研究》將遺傳算法與數(shù)據(jù)流技術(shù)相結(jié)合,依據(jù)數(shù)據(jù)流信息對(duì)測(cè)試用例進(jìn)行評(píng)價(jià),實(shí)現(xiàn)測(cè)試用例的自動(dòng)生成。但是目前基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成技術(shù)存在如下問題:遺傳算法在進(jìn)行交叉、變異操作時(shí),交叉、變異點(diǎn)可能選取在個(gè)體基因中的任意位置,交叉、變異操作產(chǎn)生優(yōu)良基因的同時(shí)也存在破壞已有優(yōu)良基因的可能;在迭代過程中,沒有對(duì)子代與父代種群中個(gè)體的最大適應(yīng)度值進(jìn)行比較,導(dǎo)致無(wú)論子代是否優(yōu)于父代,都向下逐代遺傳。這些問題導(dǎo)致在生成測(cè)試用例時(shí),迭代次數(shù)多,算法效率低。

【發(fā)明內(nèi)容】

[0004]本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提供一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,本發(fā)明根據(jù)被測(cè)程序的結(jié)構(gòu)信息約束遺傳算法交叉、變異操作的范圍,同時(shí)在迭代過程中拋棄種群最大適應(yīng)度函數(shù)值不大于父代種群的子代,從而確保了優(yōu)良基因的傳遞,降低了迭代次數(shù),提高了算法效率。
[0005]本發(fā)明的技術(shù)方案是:一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,步驟如下:
[0006](I)針對(duì)被測(cè)程序P中的一個(gè)定義使用對(duì)(def, use),找出由入口節(jié)點(diǎn)Ii1開始并且經(jīng)過定義節(jié)點(diǎn)def的使用節(jié)點(diǎn)use的支配路徑domdef Oi1, use);
[0007](2)根據(jù)設(shè)定的遺傳算法參數(shù)和輸入變量的取值范圍、精度,隨機(jī)生成初始種群InitPop,并賦值給當(dāng)前種群 CurrentPop,即 CurrentPop=InitPop,同時(shí)將 CurrentPop 賦值給父代種群 ParentPop,即 ParentPop=CurrentPop ;
[0008](3)將當(dāng)前種群CurrentPop中的每個(gè)個(gè)體輸入被測(cè)程序P,檢查實(shí)際路徑Pa對(duì)支配路徑domdef Oi1, use)的覆蓋程度;
[0009](4)若當(dāng)前種群CurrentPop中的所有個(gè)體執(zhí)行完后,domdef Oi1, use)中仍有節(jié)點(diǎn)沒有被覆蓋,且當(dāng)前遺傳代數(shù)沒有達(dá)到設(shè)定的最大遺傳代數(shù),則執(zhí)行(5)- (7),否則執(zhí)行(8);
[0010](5)計(jì)算當(dāng)前種群CurrentPop中每個(gè)個(gè)體的適應(yīng)度函數(shù)值,將其中最大值賦值給當(dāng)前種群CurrentPop中個(gè)體的最大適應(yīng)度值fmax_cur,當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur不大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),拋棄當(dāng)前種群,將父代種群再賦值給CurrentPop,即CurrentPop=ParentPop,其中fmax_old初始值為O,然后執(zhí)行(6);當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),更新父代種群中個(gè)體的最大適應(yīng)度值,即fmax_old=fmax_cur,然后執(zhí)行(6);
[0011](6)依據(jù)適應(yīng)度函數(shù)值,根據(jù)程序結(jié)構(gòu)信息對(duì)當(dāng)前種群CurrentPop利用遺傳算法進(jìn)行選擇、交叉和變異操作得到新的種群NewPop ;
[0012](7)將當(dāng)前種群CurrentPop賦值給父代種群的副本ParentPop,即 ParentPop=CurrentPop,將新種群 NewPop 賦值給當(dāng)前種群 CurrentPop,CurrentPop=NewPop,重復(fù)步驟(3)-(4);
[0013](8)若在最大遺傳代數(shù)之內(nèi)找到了覆蓋Cbmdef(I^use)中所有節(jié)點(diǎn)的測(cè)試用例,則輸出該符合要求的測(cè)試用例;否則返回步驟(2)重新設(shè)定遺傳算法參數(shù),直到生成符合要求的測(cè)試用例。
[0014]所述步驟(1)中找出支配路徑domdef Oi1, use)的方法為:
[0015]domdef (Ii1, use) =dom (Ii1, def) U dom(def, use)
[0016]其中,domOv def)表示由入口節(jié)點(diǎn)Ii1到定義節(jié)點(diǎn)def所必須經(jīng)過的節(jié)點(diǎn)組成的路徑,dom(def, use)表示由定義節(jié)點(diǎn)def到使用節(jié)點(diǎn)use所必須經(jīng)過的節(jié)點(diǎn)組成的路徑。
[0017]所述步驟(5)中計(jì)算個(gè)體適應(yīng)度函數(shù)值的公式為:
L
[0018]/= —

ηι
[0019]其中,m表示支配路徑Clomdef (叫,use)的長(zhǎng)度,Ls為程序?qū)嶋H執(zhí)行路徑Pa從入口點(diǎn)Ii1開始覆蓋支配路徑domdef Oi1, use)的連續(xù)路徑長(zhǎng)度。
[0020]所述步驟(6)中根據(jù)程序結(jié)構(gòu)信息對(duì)當(dāng)前種群CurrentPop利用遺傳算法進(jìn)行選擇、交叉和變異操作的方法為:
[0021](4.1)首先進(jìn)行選擇操作:種群中每個(gè)個(gè)體進(jìn)入下一代的概率等于其適應(yīng)度值與整個(gè)種群中個(gè)體適應(yīng)度值和的比值,采用優(yōu)先級(jí)隨機(jī)概率選擇的方式選擇M個(gè)適應(yīng)度好的個(gè)體,其中M > 2 ;
[0022](4.2)對(duì)選中的個(gè)體進(jìn)行分組:按照適應(yīng)度值對(duì)選中的個(gè)體進(jìn)行分組,具有相同適應(yīng)度值的個(gè)體被分在同一組里,同組個(gè)體擁有相同的“第一個(gè)不滿足目標(biāo)路徑的分支節(jié)點(diǎn)” Clst,即以同組個(gè)體作為輸入測(cè)試被測(cè)程序時(shí),程序執(zhí)行路徑將在同一分支節(jié)點(diǎn)處偏離目標(biāo)路徑,提取與該分支節(jié)點(diǎn)相關(guān)的輸入變量作為與該組個(gè)體相關(guān)的輸入變量,約束后續(xù)交叉變異的范圍;
[0023](4.3)對(duì)分組后的個(gè)體進(jìn)行交叉操作:交叉操作在同組個(gè)體之間進(jìn)行,對(duì)提取出的與該組個(gè)體相關(guān)的輸入變量所對(duì)應(yīng)的數(shù)據(jù)位進(jìn)行多點(diǎn)交叉,其他輸入變量直接賦值給子代;
[0024]根據(jù)組內(nèi)個(gè)體數(shù)目,分兩種情況進(jìn)行交叉操作:[0025]I)組內(nèi)個(gè)體大于I時(shí),對(duì)相鄰的兩個(gè)個(gè)體進(jìn)行交叉;
[0026]2)組內(nèi)只有一個(gè)個(gè)體時(shí),通過復(fù)制個(gè)體的方式來完成交叉操作;
[0027](4.4)對(duì)交叉操作后的個(gè)體進(jìn)行變異操作:對(duì)交叉操作生成的子代個(gè)體,隨機(jī)從每個(gè)需要修改的輸入變量所對(duì)應(yīng)的數(shù)據(jù)位中選取一個(gè)或多個(gè)數(shù)據(jù)位進(jìn)行修改,形成新的個(gè)體。
[0028]所述步驟(4.2)中提取與某分支節(jié)點(diǎn)相關(guān)的輸入變量的步驟為:
[0029](a)提取分支表達(dá)式中運(yùn)算符號(hào)左右兩邊涉及到的所有變量,將其中的輸入變量
加入到R輸人變量集合中,即R輸人變量={R輸人變量I,R輸人變量2,…,R輸人變量J,將程序變量加入到R程序變量集合中,即R程序變量={R程序變量丨,R程序變量2,…,R程序變量J,n e [1,N], N為自然數(shù);
[0030](b)對(duì)每個(gè)程序變量,從該分支表達(dá)式向前逐條語(yǔ)句回溯掃描,若掃描到該程序變量的賦值語(yǔ)句(該程序變量位于賦值號(hào)左邊),則賦值號(hào)右邊的變量即為程序變量的相關(guān)變量;
[0031](C)如果這些相關(guān)變量都為輸入變量,則針對(duì)該程序變量的掃描停止,將其相關(guān)的輸入變量加入到R?入集合中,如果這些變量中還有程序變量,則繼續(xù)執(zhí)行(b)和(c),直到這些變量中沒有程序變量為止;
[0032](d)對(duì)集合中的所有變量執(zhí)行(b)和(C),從而找到與每一個(gè)程序變量相關(guān)的輸入變量,R?入》集合中所有的變量即為與該分支相關(guān)的所有輸入變量。
[0033]本發(fā)明與現(xiàn)有技術(shù)相比具有如下有益效果:
[0034](I)目前遺傳算法的交叉、變異點(diǎn)可能選取在個(gè)體基因中的任意位置,產(chǎn)生優(yōu)良基因的同時(shí)也存在破壞已有優(yōu)良基因的可能。本發(fā)明在計(jì)算適應(yīng)度函數(shù)時(shí)找到不滿足目標(biāo)路徑的具體分支,利用該分支的結(jié)構(gòu)信息約束遺傳算法交叉、變異操作的范圍,從而確保了優(yōu)良基因的傳遞,提高了算法效率;
[0035](2)目前基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成技術(shù)沒有對(duì)迭代過程中子代與父代種群中個(gè)體的最大適應(yīng)度值進(jìn)行比較,即使子代適應(yīng)度值低于父代,也仍然向下繼續(xù)遺傳,本發(fā)明比較子代與父代的最大適應(yīng)度值,只有子代適應(yīng)度值大于父代才繼續(xù)向下遺傳,否則拋棄子代,由父代再重新生成新的子代,從而降低了迭代次數(shù),提高了效率。
【專利附圖】

【附圖說明】
[0036]圖1為本發(fā)明方法流程圖;
[0037]圖2為某程序流程圖。
【具體實(shí)施方式】
[0038]如圖1所示,本發(fā)明提供了一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,步驟如下:
[0039](I)針對(duì)被測(cè)程序P中的一個(gè)定義使用對(duì)(def, use),找出由入口節(jié)點(diǎn)Ii1開始并且經(jīng)過定義節(jié)點(diǎn)def的使用節(jié)點(diǎn)use的支配路徑domdef Oi1, use);
[0040]domdef (Ii1, use) =dom (Ii1, def) U dom(def, use)
[0041]其中,domOv def)表示由入口節(jié)點(diǎn)Ii1到定義節(jié)點(diǎn)def所必須經(jīng)過的節(jié)點(diǎn)組成的路徑,dom(def, use)表示由定義節(jié)點(diǎn)def到使用節(jié)點(diǎn)use所必須經(jīng)過的節(jié)點(diǎn)組成的路徑;[0042](2)根據(jù)設(shè)定的遺傳算法參數(shù)和輸入變量的取值范圍、精度,隨機(jī)生成初始種群InitPop,并賦值給當(dāng)前種群 CurrentPop,即 CurrentPop=InitPop,同時(shí)將 CurrentPop 賦值給父代種群 ParentPop,即 ParentPop=CurrentPop ;
[0043](3)將當(dāng)前種群CurrentPop中的每個(gè)個(gè)體輸入被測(cè)程序P,檢查實(shí)際路徑Pa對(duì)支配路徑domdef Oi1, use)的覆蓋程度;
[0044](4)若當(dāng)前種群CurrentPop中的所有個(gè)體執(zhí)行完后,domdef Oi1, use)中仍有節(jié)點(diǎn)沒有被覆蓋,且當(dāng)前遺傳代數(shù)沒有達(dá)到設(shè)定的最大遺傳代數(shù),則執(zhí)行(5)- (7),否則執(zhí)行(8);
[0045](5)計(jì)算當(dāng)前種群CurrentPop中每個(gè)個(gè)體的適應(yīng)度函數(shù)值,將其中最大值賦值給當(dāng)前種群CurrentPop中個(gè)體的最大適應(yīng)度值fmax_cur,當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur不大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),拋棄當(dāng)前種群,將父代種群再賦值給CurrentPop,即CurrentPop=ParentPop,其中fmax_old初始值為O,然后執(zhí)行(6);當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),更新父代種群中個(gè)體的最大適應(yīng)度值,即fmax_old=fmax_cur,然后執(zhí)行(6);
[0046]計(jì)算個(gè)體適應(yīng)度函數(shù)值的公式為:
[0047]
【權(quán)利要求】
1.一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,其特征在于步驟如下: (1)針對(duì)被測(cè)程序P中的一個(gè)定義使用對(duì)(def,use),找出由入口節(jié)點(diǎn)II1開始并且經(jīng)過定義節(jié)點(diǎn)def的使用節(jié)點(diǎn)use的支配路徑domdef Oi1, use); (2)根據(jù)設(shè)定的遺傳算法參數(shù)和輸入變量的取值范圍、精度,隨機(jī)生成初始種群InitPop,并賦值給當(dāng)前種群 CurrentPop,即 CurrentPop=InitPop,同時(shí)將 CurrentPop 賦值給父代種群 ParentPop,即 ParentPop=CurrentPop ; (3)將當(dāng)前種群CurrentPop中的每個(gè)個(gè)體輸入被測(cè)程序P,檢查實(shí)際路徑Pa對(duì)支配路Sdomdef(IiDuse)的覆蓋程度; (4)若當(dāng)前種群CurrentPop中的所有個(gè)體執(zhí)行完后,domdefOi1, use)中仍有節(jié)點(diǎn)沒有被覆蓋,且當(dāng)前遺傳代數(shù)沒有達(dá)到設(shè)定的最大遺傳代數(shù),則執(zhí)行(5)- (7),否則執(zhí)行(8); (5)計(jì)算當(dāng)前種群CurrentPop中每個(gè)個(gè)體的適應(yīng)度函數(shù)值,將其中最大值賦值給當(dāng)前種群CurrentPop中個(gè)體的最大適應(yīng)度值fmax_cur,當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur不大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),拋棄當(dāng)前種群,將父代種群再賦值給CurrentPop,即CurrentPop=ParentPop,其中fmax_old初始值為O,然后執(zhí)行(6);當(dāng)CurrentPop種群中個(gè)體的最大適應(yīng)度值fmax_cur大于父代種群中個(gè)體的最大適應(yīng)度值fmax_old時(shí),更新父代種群中個(gè)體的最大適應(yīng)度值,即fmax_old=fmax_cur,然后執(zhí)行(6); (6)依據(jù)適應(yīng)度函數(shù)值,根據(jù)程序結(jié)構(gòu)信息對(duì)當(dāng)前種群CurrentPop利用遺傳算法進(jìn)行選擇、交叉和變異操作得到新的種群NewPop ; (7)將當(dāng)前種群CurrentPop 賦值給父代種群 ParentPop,即 ParentPop=CurrentPop,將新種群NewPop賦值給當(dāng)前種群CurrentPop,即CurrentPop=NewPop,重復(fù)步驟(3)-(4);` (8)若在最大遺傳代數(shù)之內(nèi)找到`了覆蓋d0mdefOi1, use)中所有節(jié)點(diǎn)的測(cè)試用例,則輸出該符合要求的測(cè)試用例;否則返回步驟(2)重新設(shè)定遺傳算法參數(shù),直到生成符合要求的測(cè)試用例。
2.根據(jù)權(quán)利要求1所述的一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,其特征在于:所述步驟(1)中找出支配路徑Cbmdef(I^use)的方法為:
domdef (Ii1, use)=dom(n1, def) U dom(def, use) 其中,domOvdef)表示由入口節(jié)點(diǎn)Ii1到定義節(jié)點(diǎn)def所必須經(jīng)過的節(jié)點(diǎn)組成的路徑,dom(def, use)表示由定義節(jié)點(diǎn)def到使用節(jié)點(diǎn)use所必須經(jīng)過的節(jié)點(diǎn)組成的路徑。
3.根據(jù)權(quán)利要求1所述的一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,其特征在于:所述步驟(5)中計(jì)算個(gè)體適應(yīng)度函數(shù)值的公式為:
4.根據(jù)權(quán)利要求1所述的一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,其特征在于:所述步驟(6)中根據(jù)程序結(jié)構(gòu)信息對(duì)當(dāng)前種群CurrentPop利用遺傳算法進(jìn)行選擇、交叉和變異操作的方法為: (4.1)首先進(jìn)行選擇操作:種群中每個(gè)個(gè)體進(jìn)入下一代的概率等于其適應(yīng)度值與整個(gè)種群中個(gè)體適應(yīng)度值和的比值,采用優(yōu)先級(jí)隨機(jī)概率選擇的方式選擇M個(gè)適應(yīng)度好的個(gè)體,其中M≥2 ; (4.2)對(duì)選中的個(gè)體進(jìn)行分組:按照適應(yīng)度值對(duì)選中的個(gè)體進(jìn)行分組,具有相同適應(yīng)度值的個(gè)體被分在同一組里,同組個(gè)體擁有相同的“第一個(gè)不滿足目標(biāo)路徑的分支節(jié)點(diǎn)” Clst,即以同組個(gè)體作為輸入測(cè)試被測(cè)程序時(shí),程序執(zhí)行路徑將在同一分支節(jié)點(diǎn)處偏離目標(biāo)路徑,提取與該分支節(jié)點(diǎn)相關(guān)的輸入變量作為與該組個(gè)體相關(guān)的輸入變量,約束后續(xù)交叉變異的范圍; (4.3)對(duì)分組后的個(gè)體進(jìn)行交叉操作:交叉操作在同組個(gè)體之間進(jìn)行,對(duì)提取出的與該組個(gè)體相關(guān)的輸入變量所對(duì)應(yīng)的數(shù)據(jù)位進(jìn)行多點(diǎn)交叉,其他輸入變量直接賦值給子代;根據(jù)組內(nèi)個(gè)體數(shù)目,分兩種情況進(jìn)行交叉操作: O組內(nèi)個(gè)體大于I時(shí),對(duì)相鄰的兩個(gè)個(gè)體進(jìn)行交叉; 2)組內(nèi)只有一個(gè)個(gè)體時(shí),通過復(fù)制個(gè)體的方式來完成交叉操作; (4.4)對(duì)交叉操作后的個(gè)體進(jìn)行變異操作:對(duì)交叉操作生成的子代個(gè)體,隨機(jī)從每個(gè)需要修改的輸入變量所對(duì)應(yīng)的數(shù)據(jù)位中選取一個(gè)或多個(gè)數(shù)據(jù)位進(jìn)行修改,形成新的個(gè)體。
5.根據(jù)權(quán)利要求4所述的一種基于遺傳算法的數(shù)據(jù)流測(cè)試用例自動(dòng)生成方法,其特征在于:所述步驟(4.2)中提取與某分支節(jié)點(diǎn)相關(guān)的輸入變量的步驟為: (a)提取分支表達(dá)式中運(yùn)算符號(hào)左右兩邊涉及到的所有變量,將其中的輸入變量加入到R輸人變量集合中,即R輸人變量={R輸人變量I,R輸人變量2,…,R輸人變量J,將程序變量加入到R程序變量集合中,即R程序變量={R程序變量丨,R程序變量2,…,R程序變量J,n e [1,N], N為自然數(shù); (b)對(duì)每個(gè)程序變量,從該分支表達(dá)式向前逐條語(yǔ)句回溯掃描,若掃描到該程序變量的賦值語(yǔ)句(該程序變量位于賦值號(hào)左邊),則賦值號(hào)右邊的變量即為程序變量的相關(guān)變量; (C)如果這些相關(guān)變量都為輸入變量,則針對(duì)該程序變量的掃描停止,將其相關(guān)的輸入變量加入到集合中,如果這些變量中還有程序變量,則繼續(xù)執(zhí)行(b)和(C),直到這些變量中沒有程序變量為止; (d)對(duì)集合中的所有變量執(zhí)行(b)和(C),從而找到與每一個(gè)程序變量相關(guān)的輸入變量,R?入集合中所有的變量即為與該分支相關(guān)的所有輸入變量。
【文檔編號(hào)】G06N3/12GK103593287SQ201310524293
【公開日】2014年2月19日 申請(qǐng)日期:2013年10月30日 優(yōu)先權(quán)日:2013年10月30日
【發(fā)明者】楊桂枝, 鄭平, 張輝, 張偉, 詹海潭, 高金梁 申請(qǐng)人:北京信息控制研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
甘孜| 巴林右旗| 鹤山市| 正镶白旗| 高青县| 天津市| 万山特区| 临安市| 舞阳县| 临桂县| 巨鹿县| 司法| 台湾省| 界首市| 清水河县| 阳原县| 巴南区| 宣武区| 沅陵县| 佛教| 沂南县| 神农架林区| 页游| 稻城县| 西乌珠穆沁旗| 民县| 满城县| 武威市| 岗巴县| 定南县| 桦甸市| 新巴尔虎右旗| 股票| 石柱| 武威市| 紫云| 永善县| 易门县| 邵东县| 贵南县| 来安县|