導讀:據 MIT Technology Review 報道,一位名為“Repairnator”機器人在 GitHub 上“臥底”數月,查詢錯誤並編寫和提交修複補丁,結果有多個補丁成功透過被採納。
作者:OSC-王練
來自:開源中國(ID:oschina2013)
現代計算機程式非常複雜,在開發過程中難免會出現錯誤。查詢和修複補丁是一件需要耗費大量資源的事情,雖然研究人員已經開發除了許多流程自動化的機器人,但是它們往往很慢,而且存在編寫的程式碼質量較低的問題。
Repairnator 是由 KTH 瑞典皇家理工學院的軟體技術教授 Martin Monperrus 及其朋友構建的機器人,目前已被證實可以發現錯誤並編寫高質量補丁。Martin Monperrus 表示:“這是自動修複程式研究中的里程碑,它擁有和人類開發者競爭的潛力。”
據悉,該團隊將 Repairnator 偽裝成了一個名為 LucEsape 的 GitHub 使用者,他們給 Luc 上傳頭像並填寫個人資料,看起來就像是一位渴望在 GitHub 上做貢獻的初級開發者。
他們共進行了兩輪測試,第一輪是在2017年2月到12月,Repairnator 在 14188 個 GitHub 專案的修複串列上執行並掃描錯誤,期間 Repairnator 總共分析了超過 11500 個失敗的構建,其中有 3000 多個能被重現。
然後,Repairnator 生成了針對其中 15 個問題的補丁,遺憾的是由於補丁質量低、花費時間過長等問題,這些補丁均未被接受。
第二輪測試是在2018年1月至6月,該團隊沒有具體說明他們對 Repairnator 做了哪些改進,但 Repairnator 在1月12日成功編寫出了第一個被人類開發者接受的補丁。在之後的6個月裡,Repairnator 陸續又有 5 個補丁被採納。
有意思的是,Repairnator 在5月12日向名為 “eclipse/ditto” 的專案提交補丁後,收到了開發者的反饋,“我們只接受來自簽署了 Eclipse Foundation Contributor 許可協議的使用者的 pull-requests ”。
這又引出了一個新的問題,機器人要怎麼簽署許可協議?誰擁有機器人貢獻的智慧財產權,操作員亦或是演演算法設計師?在人類和機器人想要更深入合作之前,這類還問題有待解決。
論文地址:
-
https://arxiv.org/abs/1810.05806
對於這種機器人,你怎麼看?
據統計,99%的大咖都完成了這個神操作
▼
更多精彩
在公眾號後臺對話方塊輸入以下關鍵詞
檢視更多優質內容!
PPT | 報告 | 讀書 | 書單
Python | 機器學習 | 深度學習 | 神經網路
區塊鏈 | 揭秘 | 乾貨 | 數學
猜你想看
-
誰再問你“天天爬那些資料有什麼用”,就把這5本書扔給他!
Q: 你的工作會被機器人替代嗎?
歡迎留言與大家分享
覺得不錯,請把這篇文章分享給你的朋友
轉載 / 投稿請聯絡:baiyu@hzbook.com
更多精彩,請在後臺點選“歷史文章”檢視