當前位置:
首頁 > 知識 > 微軟聯手中國知名高校開發軟體自動修復系統,正確率高達80%

微軟聯手中國知名高校開發軟體自動修復系統,正確率高達80%

來自微軟,北京大學,中國電子科技大學的研究人員已經開發出一種可以自動修復軟體系統缺陷而無需人為干預的系統。

這項研究始於微軟和劍橋大學的研究,他們宣布了一個從問題輸入/輸出產生程序的DeepCoder演算法。

DeepCoder仍然非常有限,但新的研究要求計算機程序是否可能識別和修復現有程序中的錯誤。

由精確狀態系統(ACS)發明的系統旨在自動修復軟體系統中的缺陷,而無需人為干預。

微軟聯手中國知名高校開發軟體自動修復系統,正確率高達80%

然而現有的自動化程序修復工具,他們生產的補丁的「精度」低。大多數情況下,主流程序修復方法的精確度小於10%,甚至改進方法的準確度也不到40%。問題是用於將更改標記為「正確」的測試,並不意味著通過測試意味著程序實際上是正確的。而這種最新的方法在Defects4J基準測試中達到80%的「正確性」評級。

ACS通過使用多個信息源,特別是互聯網上存在的「大量代碼」,實現了改進的結果。研究人員側重於條件綜合。在以前的工具中添加了三種新的信息源。首先,通過了解在「if」條件下應該使用本地上下文中的哪些變數給出的信息,以及使用基於變數之間的依賴關係的排序方法。

第二個變化依賴於可以使用API文檔來指導修復過程的觀察。基於此,使用文檔分析技術進一步過濾變數。自然語言分析技術用於分析Javadoc,然後應用程序使用Javadoc中的信息來過濾不正確的補丁。

最後,最重要的是,ACS對互聯網上的開源程序進行統計分析,發現對變數進行操作的條件概率,並進一步生成正確的補丁。

描述ACS系統的文件「程序修復的精確條件綜合」已發表於ICSE 2017。作者包括北京大學、中國電子科技大學和微軟研究院的研究人員。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT168企業級 的精彩文章:

微軟發布.NET Core 2.0,最全亮點合集在這!
Oracle再出新招,C、C++程序員可以更容易訪問資料庫
為什麼Docker會受歡迎?看完這些才恍然大悟
中國企業發力印度伺服器市場會讓印度雲計算髮展提速
Swift 4提案結束,是時候該考慮Swift 5了!

TAG:IT168企業級 |