close
數據揭秘北京搖號內幕:搖166年都不中的概率是37%!





搖號次數在24次之內,本次搖到的概率為1

偶數月的26號中午11點到下午1點,沙漠君的手機上就會收到一條短信,不是中介和廣告,但內容肯定是一樣的:“很遺憾,該編碼本次搖號未中簽或搖號資格已過期”。二姨媽真是比大姨媽都準時!呵呵!

幾年過去瞭,在帝都辛苦擠地鐵的你,是否和沙漠君有同樣的疑問?

現在搖號到底有多難?

哪些人搖到瞭號?平均搖瞭幾回?

有沒有提升搖號概率的方法?

搖號算法是什麼?是絕對公平的嗎?

沙漠君用真實的數據,告訴你答案。

2016到2017年,北京每年各有15萬個小汽車指標。新能源比例達到40%,普通號隻剩9萬個,一年6次,每次15000個。

但是!2016年第3次搖號,搖號池總數量是9917981!總搖號人數270.7萬!如果你搖號次數在24次之內,那麼本次搖到的概率為千分之一!花166年搖一千次都不中的概率,是37%!

每搖12次沒中簽,真的會像官方的說法,可能性增加一倍麼?太天真!因為你增加,別人的也在增加。除非你是第一批參加搖號的人,否則會有更多的人比你增加更高的概率。因此,號是越來越難搖的。

五年間,搖到號的人數總共94萬人。2011年時,每隔10個人就會有一個幸運兒,幾年前買車確實比現在買車容易太多。看看這張圖:

2012年和2014年算是搖號黃金期,每期都有接近兩萬人搖到號,可是到瞭2016年,這個數字降為1.3萬。然而,下面這張圖絕對讓你哭暈!

當然,每年增加的搖號人數基本是線性的:

從第一期的18萬,到2016年6月份的270萬,每年增加五十萬人。我們難以確定新增加的是哪些人數,按照政策,學生可能占瞭相當大的比重。

那麼,那些搖到號的人,總共搖瞭多台灣電動床工廠少次呢?下面這張圖回答你:

有接近九萬人第一次就搖到號瞭,還有電動床190人搖瞭整整51次才拿到號,這個曲線非常地光滑,幾個凸起點正好是調整中簽率的門限,非常符合數學的美感。

有14201人,51次搖號沒有一次成功。真正的幸運兒是這些人:在最近的這一期,以1/1000的概率第一次抽簽就拿到瞭號,一共90人。

從6位隨機種子的產生,看搖號程序是否公平

作為程序員的沙漠君,被激發瞭昂揚的鬥志,我們來驗證一下搖號程序是否公平。

通過使用沙漠君自己開發的Hawk爬蟲程序(見數據來源及工具),采集瞭從2011年到2016年51期每期的搖號池列表和隨機種子。同時,我還下載瞭它的搖號程序,用於分析其搖號算法。程序使用C#編寫,沙漠君破解它的源代碼簡直不要太容易。

(DT君在這裡,實在忍不住要吐槽沙漠君的自戀文風……俗話說,文如其人,咳咳。)

為瞭能讓不懂程序的讀者也能理解,我用盡量簡明的語言描述其搖號方法:假設有5人搖號,每個人都有唯一的ID,1-5,用戶2,4有兩倍中簽率,用戶3有3倍中簽率,那麼搖號池排列如下:

第一輪,把所有人都按編號次序排列,即序號1-5;

第二輪,把所有中簽率大於等於2倍的按次序排列,即6-8;

第三輪,把大於等於三倍的按次序排列,隻有9。

現要求從池中隨機抽取三個序號。計算機能通過一個種子,可以生成一串看似隨機的偽隨機序列。在一般程序中,種子通常是當前運行的時間。因每次運行時間不同,所以結果也不同。

而搖號程序有趣的地方就在這裡,種子是事先提供好的一串6位數字,一旦你知道它,那麼你在搖號前就能預測哪些人被抽中。每個人的中簽倍率和ID都是確定的,因此分析6位的隨機數種子是如何產生的,成瞭解決問題的關鍵。

6位隨機種子是如台灣電動床工廠何產生的?

沙漠君研究瞭首都之窗上用於公示隨機數的2013年某期的視頻。

公證人員事先從市民中選出12位代表人。主持人在魚缸中隨機抽出6個球,每個球都是一個市民代表人的號碼。之後,6個代表人會依次敲擊鍵盤,隨機產生出0-9的隨機數作為隨機數種子。有趣的地方就在這裡!!

主持人說,請每一位代表搖出號碼,我一幀幀地分析瞭視頻,從市民代表在鍵盤上的操作位置來猜測,點擊的多半是是回車鍵,但代表按鍵盤都是背對攝影機的。你可以簡單理解為,每按一次回車,電腦產生出一個新的0-9的數字,總計6個。

網站提供瞭隨機產生搖號號碼的程序,卻沒有提供隨機產生六位種子的程序。這個隨機數種子本身,會不會事先保存,一定能保證隨機嗎?看下面這張圖(當然,300次采樣數量有點少)

如果你感興趣的話,可以去參考本文的附錄,附錄詳細地給出瞭如何從申請編碼入手,探索搖號系統的可能的秘密。但能不能探索出來就不知道瞭。

假如系統真的有破綻呢?

(本段僅作為思想實驗,開腦洞而已,請任何朋友不要對號入座。水表在門外,謝謝!)

通過控制種子,可以保證特定號碼中簽。但這樣可能沒法讓所有要中簽的都中簽,策略是插入一些無效號。無效號能將特定的號碼擠到對應必中的位置。

因為我們也無法判斷參與抽簽的每個號碼都是有效的。而且你註意到瞭嗎?2016年,每次搖號應該有15000個,但每次搖中的數量都差瞭一百多個,剩下的哪裡去瞭?

通常計算機產生無效號,都是在短時間內集中產生的。如果能發現給每個用戶分配編碼的規則,就能反推用戶的基本信息和註冊時間,如果在統計上發現異常,就能找到這些無效號碼,進而搜索隨機種子。

沙漠君盯著這些長度都是13位的號碼,統計瞭每一位上0-9字符出現的頻率,發現它們都是等概率出現的。說明編碼是按照某種隨機算法生成的。什麼工具的隨機算法產生的字符長度是13位呢?我花瞭五六個小時破解這個邏輯:

我通過搖號程序簽名,發現開發這套系統的公司叫taiji。我通過該公司網站的招聘信息和項目介紹,瞭解瞭驗證軟件是2014年1月6號下午開發開發,用瞭一個半月開發完,電動床後臺語言多半是C#。

據我猜測,每次會從後臺隨機產生不在數據庫裡的一個13位的隨機數,作為新申請人的編碼ID。理論上說,如果其系統用的是C#默認的隨機生成器,那麼就能通過暴力搜索的方法,找出每個編碼生成的時間,也就是號碼註冊的時間,當然,這種計算的復雜度非常高,靠一己之力是很難完成的。

但我相信,以上這些推測都是瞎扯,這套系統一定是公平而完美的。(DT君:你說什麼我聽不懂?)

那我們該怎麼辦?

一種方法是購買新能源汽車,中簽率約為12分之一。開著新能源,六環可能都出不去就沒電瞭( _ )。

按照非官方說法,搖號政策可能在未來退出,並引入傢庭單位搖號和征收擁堵費。但發出去的車牌不會回收,而一旦放開限購會導致瘋狂購車,因為擁堵費太貴,大傢塞滿小區就是不出門:先把坑占上。這肯定也不是政府願意看到的。至於之前傳言的24次搖號沒中者自動分配一個號碼,我都不想告訴你24次以上沒搖中的人有多少!傳謠也要講基本法啊。

通過以上分析,解決瞭沙漠君之前的疑惑,這套系統設計是符合規范的,抽簽是隨機和公平的。各位親愛的讀者,安心搖號,洗洗睡吧~/( o )以後多綠色出行,為首都交通做出貢獻。



本文來源:投資界網站

責任編輯:王曉易_NE0011

B02B5060D57B8A28
arrow
arrow
    文章標籤
    台灣電動床工廠 電動床
    全站熱搜
    創作者介紹
    創作者 nnj157pt11 的頭像
    nnj157pt11

    憨呆的好康推薦

    nnj157pt11 發表在 痞客邦 留言(0) 人氣()