System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)涉及計算機,具體地,涉及一種機器人程序合成方法、裝置、設(shè)備及存儲介質(zhì)。
技術(shù)介紹
1、隨著人工智能(artificial?intelligence,ai)技術(shù)的發(fā)展,ai已經(jīng)深刻改變了人類的生活方式,并對各行各業(yè)產(chǎn)生了深遠的影響。在這個過程中,機器人作為能夠與真實世界產(chǎn)生交互的客觀存在,自然地成為了人類探索世界的延伸與協(xié)助人類、解放人類的工具。與ai的結(jié)合可以進一步強化機器人的能力,促進智能機器人在各個領(lǐng)域中的應(yīng)用。
2、對于智能機器人而言,程序是實現(xiàn)自動化和精細控制的關(guān)鍵。一個理想的機器人程序,往往擁有嚴密且周全的控制邏輯,使得機器人能夠在復(fù)雜多變的環(huán)境狀態(tài)下工作,即使場景發(fā)生變化也能夠完成既定目標,擁有良好的泛化能力。
3、然而,對于機器人程序而言,所處的環(huán)境是一個不可忽視的重要因素。在實際情況下,機器人通常通過傳感器收集數(shù)據(jù)來感知周圍環(huán)境,并且這些數(shù)據(jù)將成為每個決策的基礎(chǔ)。這導(dǎo)致機器人對環(huán)境的感知水平直接影響程序的合成結(jié)果。
技術(shù)實現(xiàn)思路
1、針對現(xiàn)有技術(shù)中的缺陷,本專利技術(shù)的目的是提供一種機器人程序合成方法、裝置、設(shè)備及存儲介質(zhì)。
2、第一方面,本申請實施例提供一種機器人程序合成方法,包括:
3、獲取待執(zhí)行的機器人候選程序;
4、對所述機器人候選程序中的每個標識符進行處理,構(gòu)建程序圖;其中,所述程序圖中的每個結(jié)點對應(yīng)所述機器人候選程序中的每個標識符,所述程序圖中的無向邊對每個結(jié)點進行連接,用以表示程序中的
5、記錄在執(zhí)行所述機器人候選程序過程中相應(yīng)的環(huán)境反饋數(shù)據(jù),構(gòu)建環(huán)境上下文;
6、通過卷積神經(jīng)網(wǎng)絡(luò)對潛在的環(huán)境上下文表示進行學(xué)習(xí),從局部感知中提取出關(guān)鍵環(huán)境特征,用以構(gòu)成環(huán)境上下文特征;
7、基于所述程序圖對每一個標識符的相鄰語法符號信息進行聚合,得到語法上下文;
8、建立代碼符號和環(huán)境上下文之間的聯(lián)系,并聚合得到語法特征;
9、將所述環(huán)境上下文和所述語法上下文輸入到預(yù)設(shè)的模型中進行迭代訓(xùn)練,得到每個可能的程序標識符概率;
10、根據(jù)每個可能的程序標識符概率,以及環(huán)境上下文特征和語法特征,逐個選擇程序標識符,得到修復(fù)后的機器人程序。
11、可選地,對所述機器人候選程序中的每個標識符進行處理,構(gòu)建程序圖,包括:
12、逐個處理所述機器人候選程序中的標識符,為每個標識符創(chuàng)建一個圖結(jié)點;
13、若所述圖結(jié)點對應(yīng)的標識符是控制流語句中的條件部分,則由上一個結(jié)點的左指針指向所述圖結(jié)點;
14、若所述圖結(jié)點對應(yīng)的標識符不是控制流語句中的條件部分,則用上一個結(jié)點的右指針指向所述圖結(jié)點。
15、可選地,記錄在執(zhí)行所述機器人候選程序過程中相應(yīng)的環(huán)境反饋數(shù)據(jù),構(gòu)建環(huán)境上下文,包括:
16、基于所述程序圖,將所述機器人候選程序按順序分別分割為能夠執(zhí)行的最小代碼片段;
17、從所述機器人候選程序執(zhí)行前的初始狀態(tài)開始,逐個執(zhí)行分割后的代碼片段,得到后置狀態(tài);
18、將所述后置狀態(tài)作為下一個代碼片段的前置狀態(tài),直到執(zhí)行完所有代碼片段;
19、分別對每個代碼片段所對應(yīng)的前置狀態(tài)和后置狀態(tài)進行組合,得到所述機器人候選程序中每個標識符所對應(yīng)的環(huán)境上下文。
20、可選地,基于所述程序圖對每一個標識符的相鄰語法符號信息進行聚合,得到語法上下文,包括:
21、以圖嵌入的方式得到程序圖中每個結(jié)點的向量表示;
22、通過圖注意力機制確定鄰居結(jié)點的注意力分數(shù),并經(jīng)過歸一化處理,得到聚合后的語法上下文。
23、第二方面,本申請實施例提供一種機器人程序合成裝置,包括:
24、獲取模塊,用于獲取待執(zhí)行的機器人候選程序;
25、程序圖構(gòu)建模塊,用于對所述機器人候選程序中的每個標識符進行處理,構(gòu)建程序圖;其中,所述程序圖中的每個結(jié)點對應(yīng)所述機器人候選程序中的每個標識符,所述程序圖中的無向邊對每個結(jié)點進行連接,用以表示程序中的語義聯(lián)系;
26、環(huán)境上下文構(gòu)建模塊,用于記錄在執(zhí)行所述機器人候選程序過程中相應(yīng)的環(huán)境反饋數(shù)據(jù),構(gòu)建環(huán)境上下文;
27、環(huán)境上下文特征構(gòu)建模塊,用于通過卷積神經(jīng)網(wǎng)絡(luò)對潛在的環(huán)境上下文表示進行學(xué)習(xí),從局部感知中提取出關(guān)鍵環(huán)境特征,用以構(gòu)成環(huán)境上下文特征;
28、語法上下文獲取模塊,用于基于所述程序圖對每一個標識符的相鄰語法符號信息進行聚合,得到語法上下文;
29、語法特征獲取模塊,用于建立代碼符號和環(huán)境上下文之間的聯(lián)系,并聚合得到語法特征;
30、預(yù)測模塊,用于將所述環(huán)境上下文和所述語法上下文輸入到預(yù)設(shè)的模型中進行迭代訓(xùn)練,得到每個可能的程序標識符概率;
31、修復(fù)模塊,用于根據(jù)每個可能的程序標識符概率,以及環(huán)境上下文特征和語法特征,逐個選擇程序標識符,得到修復(fù)后的機器人程序。
32、可選地,所述程序圖構(gòu)建模塊,具體用于:
33、逐個處理所述機器人候選程序中的標識符,為每個標識符創(chuàng)建一個圖結(jié)點;
34、若所述圖結(jié)點對應(yīng)的標識符是控制流語句中的條件部分,則由上一個結(jié)點的左指針指向所述圖結(jié)點;
35、若所述圖結(jié)點對應(yīng)的標識符不是控制流語句中的條件部分,則用上一個結(jié)點的右指針指向所述圖結(jié)點。
36、可選地,所述環(huán)境上下文構(gòu)建模塊,具體用于:
37、基于所述程序圖,將所述機器人候選程序按順序分別分割為能夠執(zhí)行的最小代碼片段;
38、從所述機器人候選程序執(zhí)行前的初始狀態(tài)開始,逐個執(zhí)行分割后的代碼片段,得到后置狀態(tài);
39、將所述后置狀態(tài)作為下一個代碼片段的前置狀態(tài),直到執(zhí)行完所有代碼片段;
40、分別對每個代碼片段所對應(yīng)的前置狀態(tài)和后置狀態(tài)進行組合,得到所述機器人候選程序中每個標識符所對應(yīng)的環(huán)境上下文。
41、可選地,所述語法上下文獲取模塊,具體用于:
42、以圖嵌入的方式得到程序圖中每個結(jié)點的向量表示;
43、通過圖注意力機制確定鄰居結(jié)點的注意力分數(shù),并經(jīng)過歸一化處理,得到聚合后的語法上下文。
44、第三方面,本申請實施例提供一種機器人程序合成設(shè)備,包括:處理器和存儲器,所述存儲器中存儲有可執(zhí)行的程序指令,所述處理器調(diào)用所述存儲器中的程序指令時,所述處理器用于:
45、執(zhí)行如第一方面中任一項所述的機器人程序合成方法的步驟。
46、第四方面,本申請實施例提供一種計算機可讀存儲介質(zhì),用于存儲程序,所述程序被執(zhí)行時實現(xiàn)如第一方面中任一項所述的機器人程序合成方法的步驟。
47、與現(xiàn)有技術(shù)相比,本專利技術(shù)具有如下的有益效果:
48、本申請中通過獲取待執(zhí)行的機器人候選程序;對于候選機器人程序中的每一個標識符逐個進行處理,構(gòu)建程序圖;執(zhí)行機器人候選程序,并在機器人執(zhí)行程序的過本文檔來自技高網(wǎng)...
【技術(shù)保護點】
1.一種機器人程序合成方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,對所述機器人候選程序中的每個標識符進行處理,構(gòu)建程序圖,包括:
3.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,記錄在執(zhí)行所述機器人候選程序過程中相應(yīng)的環(huán)境反饋數(shù)據(jù),構(gòu)建環(huán)境上下文,包括:
4.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,基于所述程序圖對每一個標識符的相鄰語法符號信息進行聚合,得到語法上下文,包括:
5.一種機器人程序合成裝置,其特征在于,包括:
6.根據(jù)權(quán)利要求5所述的機器人程序合成裝置,其特征在于,所述程序圖構(gòu)建模塊,具體用于:
7.根據(jù)權(quán)利要求5所述的機器人程序合成裝置,其特征在于,所述環(huán)境上下文構(gòu)建模塊,具體用于:
8.根據(jù)權(quán)利要求5所述的機器人程序合成裝置,其特征在于,所述語法上下文獲取模塊,具體用于:
9.一種機器人程序合成設(shè)備,其特征在于,包括:處理器和存儲器,所述存儲器中存儲有可執(zhí)行的程序指令,所述處理器調(diào)用所述存儲器中的程序指令時,所
10.一種計算機可讀存儲介質(zhì),用于存儲程序,其特征在于,所述程序被執(zhí)行時實現(xiàn)權(quán)利要求1至4任一項所述的機器人程序合成方法的步驟。
...【技術(shù)特征摘要】
1.一種機器人程序合成方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,對所述機器人候選程序中的每個標識符進行處理,構(gòu)建程序圖,包括:
3.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,記錄在執(zhí)行所述機器人候選程序過程中相應(yīng)的環(huán)境反饋數(shù)據(jù),構(gòu)建環(huán)境上下文,包括:
4.根據(jù)權(quán)利要求1所述的機器人程序合成方法,其特征在于,基于所述程序圖對每一個標識符的相鄰語法符號信息進行聚合,得到語法上下文,包括:
5.一種機器人程序合成裝置,其特征在于,包括:
6.根據(jù)權(quán)利要求5所述的機器人...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:董震,沈立煒,彭鑫,陳天翼,王麒迪,
申請(專利權(quán))人:復(fù)旦大學(xué),
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。