第三十章:算法大賽(四更)
書迷正在閱讀:重生之全能明星學霸不太易、紅樓之賈赦修仙記、[綜漫]在下才不要穿小洋裙、抗日之超級壯丁、紅樓之貴妃是個小花精、拯救二次元美女、他的陸太太很甜、抗戰雙子星、變身最強之病弱七實、大宋超級學霸
算法大賽是由國內知名的細細打車公司,于四月份在燕京召開的u生態大會上提出的,在演講中李思燕表示,今年細細將舉辦首屆“細細世界調度算法大賽”。 根據介紹,從生態大會舉行的那天起,世界上所有的團隊、個人都可以在細細移動端、c端官網上了解詳細的賽程及流程,并且在大會結束一周以內可以開始報名活動,在“細細世界調度算法大賽”開始的第三天,也就是7月26號截止報名。 這次算法舉辦的目的是,希望與廣大開發者一起探索算法的更多可能。 算法大賽設置了獎項,第一名是50萬元的獎金,第二名是20萬元獎金,還有第三名10萬元獎金。 打車出行,是我們日常出行的一個重要的組成部分,已經有幾百年的歷史,不過在早期是黃包車,再往前是馬車。 到了21世紀,互聯網和打車的結合,給大家的出行帶來了更多的便捷之處。 現在人們只需要在手機上下一個軟件,乘客在上面說要在何時何地上車在什么地方下車,細細打車公司就會通過后臺,給安裝了司機版本a的手機上推送相應的消息。司機師傅看到后,可以在手機上cao作選擇是否接單。 如果有師傅接單,打車者的手機就能收到已接單的提醒,然后就可以通過手機a看到車輛的位置、車牌號,還有司機的手機號碼。 一般情況下司機會打個電話確認一下,只需要到時候乘客出現在約定好的上車地點就行,然后司機就開車帶著乘客去目的地。 到了目的地,可以選擇現金支付或者在線支付,這個流程就算是完成了。 但是調度是由以下各個環節組成的預測目的地、價格預估、時間預估、最佳路徑匹配、司機和乘客匹配、訂單分派、供需預測、預測乘客體驗。 其中,司機和乘客匹配、訂單分配是智能調度的核心。 在某個時刻有成千上萬的乘客,同時也有成千上萬的空閑車輛,要完成司機和乘客的最優匹配,最大限度提升匹配率和成交率。 一個好的調度算法,能讓乘客等待更少的時間,帶來更好的體驗,同時也能讓司機在相同的時間拉更多的人,帶來更多的收入。 林奇詳細的了解了這些存在的問題之后,就開始搜集相關的信息,然后進行調度算法的開發。 首先下載了一個小城市的地圖,包含了大部分的商家、辦公樓、地鐵入口、公交站點、電影院、酒店、飯店、公園、小區等和生活息息相關的場所。然后寫程序模擬城市中的隨機乘客和固定數量的出租車。 沒有拉人的時候,出租車在路上來回的跑,范圍一般在自己家附近,也不跑太遠的地方。 模擬的機器人有了出行計劃之后,就會用手機打車,然后通知附近的車輛。算法會根據司機的位置,和上車地點目的地,這些所有的相關因素,綜合考慮起來,最后給相關的人推薦,然后模擬司機搶單模式。 通過這樣的方式,用一些固定的人固定的時間打車到不同的地方,來訓練自己的算法程序。 剛開始的時候,林奇發現自己的算法,總是不盡人意。 分配的的訂單總是有問題,有的時候給某些人分配的比較多的,而其他人分配的較少,并且乘客的等待時間,還有司機的等待時間、收入都不是很滿意。 于是林奇不斷地調整算法,每一次調整都是在曲折中前進,優化了很多次,每次能做到讓乘客和司機更加滿意。 不過還是無法和細細公司,公布出來的算法的結果相比。 一直到比賽的前幾天,林奇才想到了一個新的算法,能更加優化這個算法。經過在不同的數據集里面測試,林奇發現這個算法模型比官方公布的數據效果還要好。 到了參賽的時間,林奇非常有信心的帶上了自己的程序坐上火車去參加比賽。 做火車到了燕京之后,找到了細細公司說的比賽的地方之后,先到簽到處簽了到,然后在一個機器人充當引路人的指導之下來到了比賽大廳。 大廳里面已經來了很多的參賽者,大部分都是團隊參賽的,很少有個人參賽,在40多個的參賽隊伍中僅僅有3個是個人參賽。 林奇仔細看了參賽人員的配置,發現他們都自己帶了電腦。 林奇有點尷尬,自己家里只有一個臺式機,雖然性能還可以,但是太大了,自己來的時候也沒有打包帶來,結果到了這里遇到了沒有電腦可用的尷尬局面。 趕緊向工作人員反映這個情況,大會的組織人員也驚呆了,他們也沒有想到居然會有人不帶電腦就來參賽,也怪公司沒有在官網上說明必須自己帶電腦,不過話又說回來,現在搞開發的,誰還沒有一個筆記本電腦。 經過協調之后,工作人員從細細公司來參加比賽的同事那里,借來了一臺acbook給林奇救急一下,并告訴了他電腦的密碼。 林奇拿著acbook,打開了蓋子。輸入密碼后,進入了系統,因為之前林奇從來沒有用過ac電腦,所以對這個系統不是特別熟悉,進入了系統后林奇第一件事就是馬上熟悉下新系統的使用。 算法大賽的主持人在臺上開始了激情的演講。 首先是細細的cto開始了一段激情的演講,從細細的創立之初講到了細細是如何發展成為現在這樣大的規模,是怎么在之前的殘酷的戰爭中勝利的,還有舉辦這場算法大塞的目的。 洋洋灑灑的一個小時過去了,除了林奇以外(林奇沒有聽過這些演講所以很有興趣),大家都有點想睡覺的時候,cto終于結束了他的演講。 主持人接著開始了他的主持。 “我們今天的比賽是在一個虛擬的地圖上進行的,這次的地圖是由軟件隨機生成的一個大型而復雜的虛擬城市地圖,再生成過程中參考了很多城市建筑,所以雖然是虛擬地圖,但是也有很大的參考意義。和之前相同的是同樣的是出租車的數量是固定的,還有隨機出來了一些乘客,目的地也是隨機的。但是每一個人拿到的都是相同的副本。我背后的大屏幕上出現的下載地址,是這次比賽需要用到的素材,大家可以自行下載。” “從現在開始在接下來的5個小時內,大家可以根據這個地圖模型來隨意調整自己的算法,你們可以在本地模擬多次,也可以提交多次,結果以最好的為準。” 林奇在電腦中輸入了大屏幕顯示的地址,開始下載模型,在剛才cto演講的時候,林奇已經把他寫的程序考到了電腦上,并且編譯好了。 之前林奇在測試時候,就發現了一個問題,每次寫了之后都要重新編譯,會花費一定的時間。 后來林奇把程序修改了,只要程序改動不大,直接就能熱編譯,且編譯速度非常的快,這給林奇帶來了一些時間上的優勢。 在這場比賽中這樣的時間優勢,也給林奇帶來了不少的優勢。 最終,林奇在這個算法大賽中獲得了第二名。第一名受邀上臺,講了一下自己算法的核心思想。 林奇聽完之后,感覺自己進入了一個神奇的世界。這個算法讓林奇眼前一亮,頓時又有了新的想法,要不是時間不允許,林奇相信自己絕對能寫出來比他更好的算法。 大會剛結束,林奇就趕緊向家里打了一個電話,說自己這次算法贏得了第二名,獎金有20萬之多。 家里人聽到之后,都非常的激動,二十萬啊,一輩子都沒有見過這么多錢,如果全部換成現金得有好幾斤重吧! 贏得了20萬元的獎勵,林奇一路上高興的都沒有睡著覺。 回到家里,林奇把獎金都給了父母,和父母商量了一下,用一萬多塊錢買了一臺acbook電腦,林奇在參賽的時候用過這個電腦,就對這個電腦念念不忘。 最后林奇開始了暑假最后一個月的沖刺。 只是他不知道他這一個月給開源世界帶來了多大震驚。