5
本文作者: 游瑞 | 2015-07-24 19:25 |
“機(jī)器可以自己編程,這就意味著機(jī)器可以教機(jī)器,并且可以通過(guò)“對(duì)、錯(cuò)”這個(gè)基本語(yǔ)言告訴其它機(jī)器學(xué)習(xí)并改進(jìn)自己。”
當(dāng)?shù)弥愱卦谧龅臋C(jī)器人能給自己寫代碼的時(shí)候,我認(rèn)為他這個(gè)項(xiàng)目太瘋狂了。在我看來(lái),人與機(jī)器人最大的區(qū)別就在于人是具有學(xué)習(xí)能力的,倘若機(jī)器人也具備學(xué)習(xí)的能力的話,那么我們將會(huì)何去何從?
這種擔(dān)憂在現(xiàn)在看來(lái),還是很沒(méi)必要的,畢竟自動(dòng)化編程還處于一個(gè)很初期的階段,所以,我們想知道陳曦做的項(xiàng)目到底有多牛!
“我們的機(jī)器人跟其他機(jī)器人,主要表現(xiàn)在智能上的區(qū)別,我會(huì)用一些人工智能的算法去解決一些問(wèn)題?!?/p>
現(xiàn)在的CX5智能機(jī)器人除了有機(jī)械臂去拿東西外,還能識(shí)別并且跟隨一個(gè)顏色信號(hào)移動(dòng)。
“現(xiàn)在做的主要是通過(guò)自動(dòng)化編程的方式讓機(jī)器人自動(dòng)幫我實(shí)現(xiàn)?!?/p>
一般的計(jì)算機(jī)程序都是人編寫的,如果是計(jì)算機(jī)幫寫的話,二十四小時(shí)就能搞定。而且多一臺(tái)計(jì)算機(jī)就相當(dāng)于多一個(gè)機(jī)器人去寫。如果能借助于云計(jì)算的話,這種強(qiáng)大的運(yùn)算能力就會(huì)直接轉(zhuǎn)換為學(xué)習(xí)能力,再下去,我就不敢想了。
機(jī)器人受程序控制,要讓機(jī)器人自己寫程序無(wú)疑就是讓程序自動(dòng)寫程序。
"預(yù)先給電腦一些基本的方法,然后讓程序自動(dòng)調(diào)用。這里還會(huì)用到神經(jīng)網(wǎng)絡(luò)等方法,最大的好處就在于你只要給它們一堆數(shù)據(jù),它就能自己去調(diào)用。這樣給機(jī)器人一大堆的數(shù)據(jù)之后,機(jī)器人也會(huì)產(chǎn)生一大堆的結(jié)果。”
寫完代碼之后我們?cè)偻ㄟ^(guò)這種網(wǎng)絡(luò)去驗(yàn)證這個(gè)程序?qū)懙膶?duì)還是錯(cuò)。這種我們還能再去訓(xùn)練機(jī)器人,讓機(jī)器人自己寫代碼。目前這種方法還只能在一個(gè)小范圍內(nèi)使用,比如說(shuō)只有十幾行的程序。"
目前一些簡(jiǎn)單的代碼,人寫只需要一二十秒的樣子能寫完,機(jī)器人寫可能一分多鐘的樣子也能寫完。但是以后,功能會(huì)越來(lái)強(qiáng)大,代碼會(huì)越來(lái)復(fù)雜,人寫不出來(lái)的時(shí)候,就只能靠機(jī)器人自己去寫。
“等了數(shù)分鐘”用自動(dòng)化編程機(jī)器自己完成了判斷奇偶數(shù)的代碼。而用BP神經(jīng)網(wǎng)絡(luò)(人工智能專業(yè)的必修內(nèi)容)學(xué)會(huì)奇數(shù)偶數(shù)判斷不到10秒鐘,我也可以在不到1分鐘內(nèi)敲完代碼。雖然“自動(dòng)化編程”與“神經(jīng)網(wǎng)絡(luò)”或者其它類似優(yōu)化算法慢了很多,但是,機(jī)器可以自己編程,這就意味著機(jī)器可以教機(jī)器,并且可以通過(guò)“對(duì)、錯(cuò)”這個(gè)基本語(yǔ)言告訴其它機(jī)器學(xué)習(xí)并改進(jìn)自己。
他的代碼如下:
第一個(gè)方案 function test(i){ return (i%2==0?1:0);return(i%2==0)3:2} test(93384);
他寫的第二個(gè)方案 function test(i){if(i%2==0?1:0);}else{}} test(64815);
代碼確實(shí)寫的好奇怪,兩個(gè)方案代碼不一樣,但都可以判斷一個(gè)數(shù)字的奇偶性。我們?nèi)祟惖摹俺绦蛟场保a農(nóng)肯定不會(huì)這樣寫代碼,碼畜和馬奴不好說(shuō)(萬(wàn)一寫不出很尷尬的)。
作為一個(gè)有過(guò)編程背景的人來(lái)說(shuō),代碼中出現(xiàn)死循環(huán)是個(gè)很頭疼的問(wèn)題。既然程序猿都可以寫出死循環(huán),那么機(jī)器人如果寫出了死循環(huán)怎么辦?
"死循環(huán)是一個(gè)很麻煩的問(wèn)題,目前還沒(méi)有解決方案。但是,迄今為止我們也還沒(méi)有出現(xiàn)機(jī)器人寫出死循環(huán)的事件。因?yàn)槲覀円话阕龇ㄊ翘崆岸ê靡恍┫薅ㄕZ(yǔ)句,比如說(shuō)不能出現(xiàn)while語(yǔ)句,只能用for循環(huán)。而且還必須在有限次數(shù)以內(nèi),否則也很難跳出來(lái)。"
說(shuō)到這里相信大家也就發(fā)現(xiàn)了,陳曦做的應(yīng)該說(shuō)是機(jī)器人的一種能力,這種學(xué)習(xí)能力除了可以放在自家的CX5之外,也可以放在任何一款機(jī)器人身上。
“我們的機(jī)器人其是就是一個(gè)載體,能夠通過(guò)外面的數(shù)據(jù)自己去學(xué)習(xí),自己去寫代碼。”
“機(jī)器人之所以能動(dòng)起來(lái),是因?yàn)槿私o它寫了代碼,他有了程序才能運(yùn)行起來(lái)。換而言之,如果機(jī)器人自己能寫代碼的話那它就具備了學(xué)習(xí)的能力。互聯(lián)網(wǎng)上最多的東西有三樣:文字,圖片和代碼。它可以通過(guò)互聯(lián)網(wǎng)自己去獲取很多的代碼,用于學(xué)習(xí)或者改善一些功能?!?/p>
自動(dòng)化編程是一個(gè)大工程,陳曦跟他的團(tuán)隊(duì)還有很長(zhǎng)的路要走。雖然CX5智能機(jī)器人是他靠一己之力做出來(lái)的(硬件),但我個(gè)人覺(jué)得他還是應(yīng)該還是把所有的精力先花在機(jī)器人學(xué)習(xí)能力這件事上,也就是自動(dòng)化編程這塊。對(duì)于現(xiàn)在都已具備獨(dú)立完成機(jī)器人設(shè)計(jì)能力的他來(lái)說(shuō),以后再做個(gè)機(jī)器人不是個(gè)大問(wèn)題,而現(xiàn)在集中精力把一個(gè)問(wèn)題解決,專注去做一件事情,卻能讓他在創(chuàng)業(yè)之路上走的更加穩(wěn)健。
最后,嘮叨一句,陳曦的機(jī)器人項(xiàng)目正在找合伙人與投資人,對(duì)自動(dòng)化編程與機(jī)器人感興趣的朋友可以加我微信(OI23432),我來(lái)給你們做介紹。
雷鋒網(wǎng)先鋒志(公眾號(hào):vangzine)致力于發(fā)掘更多產(chǎn)品和技術(shù)創(chuàng)新驅(qū)動(dòng)的創(chuàng)業(yè)項(xiàng)目。如果你也在創(chuàng)業(yè),如果你也認(rèn)同產(chǎn)品和技術(shù)是改變世界的中堅(jiān)力量,歡迎通過(guò)我們向業(yè)界介紹自己。聯(lián)系方式:startup@leiphone.com,24小時(shí)內(nèi)會(huì)收到我們的回復(fù)。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。