※ 本文為 MindOcean 轉寄自 ptt.cc 更新時間: 2017-08-15 21:57:37
看板 Gossiping
作者 標題 Re: [新聞] 超狂數學教授活用演算法 高鐵分段買票竟
時間 Tue Aug 15 18:38:00 2017
大家好,
我是這篇文章的作者,今天我的Line跟FB都費這則新聞洗板了…
身為鄉民這麼久,第一次在八卦版發言,
Unimath是陳宏賓教授發起的網路期刊,旨在刊登一些科普文章,
告訴大眾數學、科學在生活中處處都是,
而且學校學的數學,常常都能應用到生活上。
期刊中有不少教授寫了很多不錯的文章,有興趣的人可以看看。
回到主題,高鐵拆票是去年寫的文章,蘋果記者應該是最近看到,所以想寫篇專欄吧!
我目前在歐洲,昨天才跟蘋果的記者通電話,沒想到今天就刊出來了。
拆票有可能變便宜,我想很多人很早就知道了,
如鄉民講的,只要利用加法,還有比較大小,就可以知道了,
沒錯,會這樣想的話,表示已經可以把數學用到生活中了。
但更進一步想,
1.有時拆票又會變貴,到底為什麼?是不是高鐵的Bug?
2.又怎麼拆會最便宜?
不管答不答的出來,會這樣想的人,就是有著數學思維,Unimath的目的就達到了。
那本篇文章重點就是幫大家回答這兩個問題:
原文:https://goo.gl/yQi9GE
1. 因為「誤差是會累加的」,高鐵票的計算方式是四捨五入到十元,有誤差,所以分越多段的誤差就會越大。
2. 但怎麼拆才會「最佳」,這就要靠電腦的幫忙了。(演算法用在哪?後面會講)
而記者把重點放錯了,都著重在省20元,去售票機買不會影響別人,之類的。
而且下的標題還很聳動!
(這當然不能怪記者,因為不聳動的標題,沒人要點進去看!但至少重點要放對啊…)
大致上是這樣!其實還蠻高興大家對這個主題有興趣的,
若有什麼好的科普主題或文章,歡迎投稿Unimath,跟大家一起分享。
- 師大數學系 郭君逸
下面是一些比較boring的部份,順便回答一些鄉民的問題,沒興趣的話可以直接跳過!
1. 演算法用在哪?不是只要加法就可以了嗎?
會這樣問的人,應該是沒碰過程式。
知道怎麼拆票的話,當然是直接把每一段票價加起來即可。只用到加法。
但問題就是不知道怎麼拆,有時拆了還會變貴。
一個簡單的想法就是,A到F中間有B,C,D,E站的話,每個站要分不分,總共2^4種切法都去試,
這樣就是一種演算法,但這樣的爆力法,效率很差(指數時間),
當中間的站點一多(例如算台鐵的分票),電腦也算不完。
那要怎麼省時間呢?我觀察到了中間有很多重複計算的部份,例如:
計算A到F站的話,在試切C點時,也會把AC與CF的最佳解都算過了,後來就不用再重複算。
所以我就採取空間換取時間的方法(Dynamic Programming)把算過的存起來,就不用再重算,
這樣的演算法就會快很多,即時算台鐵的所有站的分票,也是按個Enter馬上就算完了。
整個演算法雖然是我自己想的,後來還是查了一下書,
整個演算法雖然是我自己想的,後來還是查了一下書,
發現在演算法書中,最短路徑一章就有很多類似的東西,
然後我的演算法跟Dijkstra無迴圈的版本很像。
(其實還是有點不同,只是原理相同,
有興趣的同學可以自己寫程式列出所有站點之間的分票方式,比較能體會其奧妙。程式其實很短。)
2. 誤差疊加,很重要,求學時老師每次講,台下的我聽了都沒感覺,
明明多項式計算就代進去就好,為什麼還要改成巢狀計算;
矩陣就直接乘就好,為什麼還要對角化、Jordan Form……
然後就會在台下說,學這個到底要幹嘛,多此一舉,
矩陣就直接乘就好,為什麼還要對角化、Jordan Form……
然後就會在台下說,學這個到底要幹嘛,多此一舉,
後來等到自己遇到麻煩了,才知道自己當時的無知。
3. 時間成本很重要,誰會省這20元。
這當然是這樣,現在比較忙,時間都不夠用,我自己每次坐高鐵都坐直達的,誰想每站在那裡換位置!
省錢只是文章的手段,讓讀者願意點進來看,但重點不在此,不要再被記者拉著走了。
4. 數學教授整天算一些沒用的東西。
其實有沒有用每個人都不同,
否則籃球員為什麼要一直把球丟到籃框裡?
畫家為何要畫畫?不就照起來,再用一些濾鏡就好了?
這都是他們的工作、成果、興趣。
自然會有欣賞的人,自然也都有它的價值在。
5. 只要會加減乘除就可以活的好好的,為什麼要學這麼多?
這老生常談了。這就讓大家幫忙回答吧!
連加減都不會,也是可以活的好好的。
上了幾次新聞後,發現,其實水果算是新聞媒體裡還不錯的,他們會主動去採訪、訪問、找新聞,
然後很多媒體都是看到水果發布的新聞後,自己再改寫後再發布。
之前辦魔術方塊比賽,也沒發布新聞稿,水果記者前一天就會來訪問,比賽當天新聞就會出來,
其他家的記者看到新聞才來採訪,比賽都快比完了…
至於新聞內容有時會斷章取意,或是技術方面有寫錯,這是人人皆知的,
因為大家都是站在自己熟悉的專業在看新聞,但記者卻是要寫所有領域的東西,
錯誤是難免。(當然有些離普的,都被網友整理出來。)
不過,在大家關注的主題上,
有瑕疵的新聞,反而點擊率會更高,這是無庸置疑的。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 83.216.94.104
※ 文章代碼(AID): #1PaiyBlZ (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1502793483.A.BE3.html
→ : 沒空1F 08/15 18:38
→ : 沒空2F 08/15 18:38
推 : 太早3F 08/15 18:38
推 : 可惜你現在po只會被洗掉4F 08/15 18:39
噓 : 無聊5F 08/15 18:39
推 : 專業 可是沒空6F 08/15 18:39
→ : 沒空7F 08/15 18:39
推 : 我頭好痛 停電你在算數學 = =8F 08/15 18:39
推 : 可惜9F 08/15 18:40
推 : 幫你推推 但你po錯時間了10F 08/15 18:40
推 : 沒空11F 08/15 18:40
推 : 台灣停電中12F 08/15 18:41
推 : 專業推13F 08/15 18:42
推 : 您有電嗎?14F 08/15 18:42
推 : 時候不對15F 08/15 18:43
推 : 怎樣從台北到高雄最省錢?16F 08/15 18:44
推 : 推老師!魔術方塊台灣第一人!17F 08/15 18:44
推 : 幫推一下18F 08/15 18:44
推 : 難得好文..19F 08/15 18:44
推 : 推20F 08/15 18:45
推 : 沒空的估計沒學過algo21F 08/15 18:45
推 : 推22F 08/15 18:45
推 : 推23F 08/15 18:46
推 : 推24F 08/15 18:46
推 : 推25F 08/15 18:46
推 : 沒空26F 08/15 18:47
推 : 好文27F 08/15 18:47
推 : 這時候發認真文不會覺得很幹嗎?28F 08/15 18:47
推 : 推 郭大29F 08/15 18:47
推 : 推30F 08/15 18:49
推 : 幫你推拉31F 08/15 18:49
推 : 推32F 08/15 18:49
→ : ...33F 08/15 18:49
推 : 讚34F 08/15 18:50
推 : 推教授!!35F 08/15 18:50
推 : 專業36F 08/15 18:51
推 : 推一下37F 08/15 18:51
推 : 推認真文38F 08/15 18:51
推 : 推 噓記者39F 08/15 18:51
推 : 推40F 08/15 18:52
推 : ㄜ,這位教授好像是當年讀大學的助教41F 08/15 18:53
推 : 難得好文,時機不對,QQ42F 08/15 18:53
推 : 推!43F 08/15 18:55
推 : 停電推44F 08/15 18:56
推 : 讚45F 08/15 18:56
推 : 推46F 08/15 18:57
推 : 推你的想法 心胸好寬大47F 08/15 18:57
推 : .48F 08/15 18:59
推 : 推49F 08/15 19:00
推 : 真猛50F 08/15 19:01
噓 : Xxxxxxx51F 08/15 19:02
推 : 教授真心猛啊..52F 08/15 19:02
推 : 推!53F 08/15 19:02
推 : 推54F 08/15 19:02
推 : 推55F 08/15 19:03
推 : 推56F 08/15 19:03
推 : 推57F 08/15 19:04
推 : 洪seafood 嘗試切他c路58F 08/15 19:09
推 : 可以幫算一下台電會賠償多少錢嗎59F 08/15 19:11
推 : 教授回答令人舒服60F 08/15 19:11
推 : 數學系給推61F 08/15 19:14
推 : 教授好 可惜時間錯了62F 08/15 19:15
推 : 郭大發錯時間惹,台灣大停電63F 08/15 19:15
推 : 推,可惜64F 08/15 19:18
推 : 推65F 08/15 19:18
推 : 推66F 08/15 19:18
推 : 難得在八卦版看到熟悉的東西,推67F 08/15 19:19
推 : 喔喔下次講講如何用你那方法避免停電吧68F 08/15 19:23
推 : 沒電69F 08/15 19:23
推 : 幫推啦70F 08/15 19:24
推 : 優文給推71F 08/15 19:25
推 : 幫推,有幾個錯字欸72F 08/15 19:25
推 : 會想到用數學解決生活問題就很屌73F 08/15 19:27
推 : 停電很熱...演算法沒心情看74F 08/15 19:30
推 : 好文推75F 08/15 19:31
推 : 是教授!推推~76F 08/15 19:32
推 : 推77F 08/15 19:32
推 : 推78F 08/15 19:33
推 : 是老師!!!推一個79F 08/15 19:33
推 : 郭大必推80F 08/15 19:35
推 : 推推!81F 08/15 19:35
推 : 推82F 08/15 19:35
推 :83F 08/15 19:37
推 : Push84F 08/15 19:37
推 : 郭大!85F 08/15 19:38
推 : 斷章取「義」86F 08/15 19:38
推 : 推87F 08/15 19:41
推 : 推88F 08/15 19:45
推 : 推89F 08/15 19:47
推 : 快推90F 08/15 19:48
推 : 推91F 08/15 19:50
推 : 推! 演算法的日常生活應用!92F 08/15 19:50
推 : 推郭教授~93F 08/15 19:52
推 : 推94F 08/15 19:56
推 : 推95F 08/15 19:56
推 : 媽,我在這96F 08/15 19:57
推 : 推97F 08/15 20:03
推 : 我看你的網站學魔術方塊啊!!98F 08/15 20:06
推 : 了解!推~~~99F 08/15 20:09
→ : 推100F 08/15 20:10
推 : 推101F 08/15 20:11
推 : 推102F 08/15 20:13
→ stock0907 …
推 : 推君逸老師!!!104F 08/15 20:15
推 : 推105F 08/15 20:16
推 : 推106F 08/15 20:22
推 : 推107F 08/15 20:23
推 : Memo 之後補108F 08/15 20:23
→ : 挖快出來見上帝109F 08/15 20:24
推 : 推110F 08/15 20:24
推 : 推 但是會被洗掉111F 08/15 20:27
推 : 推推112F 08/15 20:29
推 : 推113F 08/15 20:31
推 :114F 08/15 20:31
推 : 推專業115F 08/15 20:33
→ : 里組才是台灣社會的棟樑啊116F 08/15 20:40
推 : 推 ftp,魔術方塊,數學都受到教授無私的分享 ^^117F 08/15 20:42
推 : 推師大118F 08/15 20:43
推 : 推119F 08/15 20:50
推 : 數學能實用120F 08/15 20:50
推 : 謝謝你帶我進入魔術方塊的世界121F 08/15 20:54
推 : 我頭痛 還是推本人122F 08/15 21:02
推 : 推123F 08/15 21:03
推 : 推124F 08/15 21:05
推 : 發錯時間啦125F 08/15 21:05
推 : 推這篇126F 08/15 21:12
推 : 郭大我還不推!!!127F 08/15 21:12
推 :128F 08/15 21:12
推 : 推推129F 08/15 21:14
推 : 可惜發的時間不對 再推個
推 : 可惜發的時間不對 再推個
推 : 推131F 08/15 21:16
→ : 快出來見神阿 學長好!!!!132F 08/15 21:21
推 : 基本的optimization problem133F 08/15 21:22
推 : 推134F 08/15 21:24
推 : 推135F 08/15 21:26
推 : 好教授推一個136F 08/15 21:32
→ harry7319 …
推 : 本來就是一種演算法啦138F 08/15 21:37
推 : 推專業139F 08/15 21:38
推 : 一個不同的思考方式,推140F 08/15 21:48
推 : 推141F 08/15 21:49
推 : pro142F 08/15 21:50
推 :143F 08/15 21:52
推 : 推郭大!!144F 08/15 21:53
推 : 五樓在噓三小?145F 08/15 21:53
推 : 好教授推推!146F 08/15 21:53
--
( ̄︶ ̄)b bloodtclf3, microken, PhantomLord, tsukiyumi 說讚!
回列表(←)
分享