顯示廣告
隱藏 ✕
※ 本文為 MindOcean 轉寄自 ptt.cc 更新時間: 2017-08-15 21:57:37
看板 Gossiping
作者 DavidGuo (大衛郭)
標題 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……
   然後就會在台下說,學這個到底要幹嘛,多此一舉,

   後來等到自己遇到麻煩了,才知道自己當時的無知。


3. 時間成本很重要,誰會省這20元。
   這當然是這樣,現在比較忙,時間都不夠用,我自己每次坐高鐵都坐直達的,誰想每站在那裡換位置!
   省錢只是文章的手段,讓讀者願意點進來看,但重點不在此,不要再被記者拉著走了。


4. 數學教授整天算一些沒用的東西。
   其實有沒有用每個人都不同,
   否則籃球員為什麼要一直把球丟到籃框裡?
   畫家為何要畫畫?不就照起來,再用一些濾鏡就好了?
   這都是他們的工作、成果、興趣。
   自然會有欣賞的人,自然也都有它的價值在。


5. 只要會加減乘除就可以活的好好的,為什麼要學這麼多?
   這老生常談了。這就讓大家幫忙回答吧!
   連加減都不會,也是可以活的好好的。


上了幾次新聞後,發現,其實水果算是新聞媒體裡還不錯的,他們會主動去採訪、訪問、找新聞,
然後很多媒體都是看到水果發布的新聞後,自己再改寫後再發布。
之前辦魔術方塊比賽,也沒發布新聞稿,水果記者前一天就會來訪問,比賽當天新聞就會出來,
其他家的記者看到新聞才來採訪,比賽都快比完了…

至於新聞內容有時會斷章取意,或是技術方面有寫錯,這是人人皆知的,
因為大家都是站在自己熟悉的專業在看新聞,但記者卻是要寫所有領域的東西,
錯誤是難免。(當然有些離普的,都被網友整理出來。)
不過,在大家關注的主題上,
有瑕疵的新聞,反而點擊率會更高,這是無庸置疑的。














--
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 83.216.94.104
※ 文章代碼(AID): #1PaiyBlZ (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1502793483.A.BE3.html
FreeWiFi: 沒空1F 08/15 18:38
Halu5566: 沒空2F 08/15 18:38
p458732: 太早3F 08/15 18:38
ulosy: 可惜你現在po只會被洗掉4F 08/15 18:39
kenro: 無聊5F 08/15 18:39
klyee: 專業 可是沒空6F 08/15 18:39
asdwsd: 沒空7F 08/15 18:39
Namukab: 我頭好痛 停電你在算數學 = =8F 08/15 18:39
kennethlin: 可惜9F 08/15 18:40
ipad9: 幫你推推 但你po錯時間了10F 08/15 18:40
o11i: 沒空11F 08/15 18:40
mossdevin: 台灣停電中12F 08/15 18:41
kevin1996: 專業推13F 08/15 18:42
PlayPtt: 您有電嗎?14F 08/15 18:42
pmes9866: 時候不對15F 08/15 18:43
aaazzza: 怎樣從台北到高雄最省錢?16F 08/15 18:44
hioer: 推老師!魔術方塊台灣第一人!17F 08/15 18:44
CWNS: 幫推一下18F 08/15 18:44
faloca: 難得好文..19F 08/15 18:44
hamubochen: 推20F 08/15 18:45
gaowei16: 沒空的估計沒學過algo21F 08/15 18:45
kuzu: 推22F 08/15 18:45
charlly: 推23F 08/15 18:46
silver00: 推24F 08/15 18:46
m9o2o: 推25F 08/15 18:46
gnemail183: 沒空26F 08/15 18:47
Cblack: 好文27F 08/15 18:47
eWriter: 這時候發認真文不會覺得很幹嗎?28F 08/15 18:47
cubegaga: 推 郭大29F 08/15 18:47
Philethan: 推30F 08/15 18:49
mnnraku: 幫你推拉31F 08/15 18:49
asd2260123: 推32F 08/15 18:49
positMIT: ...33F 08/15 18:49
watameki: 讚34F 08/15 18:50
JKLIOPNM: 推教授!!35F 08/15 18:50
yansi821: 專業36F 08/15 18:51
linda17a3: 推一下37F 08/15 18:51
Daedolon: 推認真文38F 08/15 18:51
icps: 推 噓記者39F 08/15 18:51
liangsmfish: 推40F 08/15 18:52
imvh: ㄜ,這位教授好像是當年讀大學的助教41F 08/15 18:53
COOLTARO: 難得好文,時機不對,QQ42F 08/15 18:53
papac: 推!43F 08/15 18:55
notsmall: 停電推44F 08/15 18:56
liue234: 讚45F 08/15 18:56
linkkeenn: 推46F 08/15 18:57
miao145: 推你的想法 心胸好寬大47F 08/15 18:57
kuromu: .48F 08/15 18:59
jameskey: 推49F 08/15 19:00
s711193: 真猛50F 08/15 19:01
darkMood: Xxxxxxx51F 08/15 19:02
smallwolf89: 教授真心猛啊..52F 08/15 19:02
william769: 推!53F 08/15 19:02
thankyoualot: 推54F 08/15 19:02
moebear: 推55F 08/15 19:03
Agnesb0924: 推56F 08/15 19:03
princeguitar: 推57F 08/15 19:04
CSMUck: 洪seafood 嘗試切他c路58F 08/15 19:09
fqstory: 可以幫算一下台電會賠償多少錢嗎59F 08/15 19:11
kicoking: 教授回答令人舒服60F 08/15 19:11
a41503: 數學系給推61F 08/15 19:14
t77133562003: 教授好 可惜時間錯了62F 08/15 19:15
sleep123: 郭大發錯時間惹,台灣大停電63F 08/15 19:15
otis1713: 推,可惜64F 08/15 19:18
killerken: 推65F 08/15 19:18
blindpupil: 推66F 08/15 19:18
JameC: 難得在八卦版看到熟悉的東西,推67F 08/15 19:19
h73o1012: 喔喔下次講講如何用你那方法避免停電吧68F 08/15 19:23
WindSucker: 沒電69F 08/15 19:23
abex144312: 幫推啦70F 08/15 19:24
notneme159: 優文給推71F 08/15 19:25
PPK33: 幫推,有幾個錯字欸72F 08/15 19:25
l75cm: 會想到用數學解決生活問題就很屌73F 08/15 19:27
jainyoyo: 停電很熱...演算法沒心情看74F 08/15 19:30
selivea: 好文推75F 08/15 19:31
sky80319: 是教授!推推~76F 08/15 19:32
hdjj: 推77F 08/15 19:32
creation09: 推78F 08/15 19:33
hayate1143: 是老師!!!推一個79F 08/15 19:33
samurai101: 郭大必推80F 08/15 19:35
conan110149: 推推!81F 08/15 19:35
berder: 推82F 08/15 19:35
yokan:83F 08/15 19:37
benjelly: Push84F 08/15 19:37
pili761003: 郭大!85F 08/15 19:38
Idaresay: 斷章取「義」86F 08/15 19:38
finalillusio: 推87F 08/15 19:41
jame2408: 推88F 08/15 19:45
bestupid: 推89F 08/15 19:47
ms7083k: 快推90F 08/15 19:48
headingUSA: 推91F 08/15 19:50
Seabook: 推! 演算法的日常生活應用!92F 08/15 19:50
ruby87159: 推郭教授~93F 08/15 19:52
cmid05: 推94F 08/15 19:56
shadow77727: 推95F 08/15 19:56
kenalog: 媽,我在這96F 08/15 19:57
lin190ya: 推97F 08/15 20:03
ji31j6g4gp6: 我看你的網站學魔術方塊啊!!98F 08/15 20:06
WK7er: 了解!推~~~99F 08/15 20:09
luckycat158: 推100F 08/15 20:10
darkfiredark: 推101F 08/15 20:11
tricia1231: 推102F 08/15 20:13
stock0907: 你知道你在創造華(ㄠˋ)客嗎 @@!?103F 08/15 20:14
tatatako: 推君逸老師!!!104F 08/15 20:15
kiminocodo: 推105F 08/15 20:16
chopssin: 推106F 08/15 20:22
oidkk: 推107F 08/15 20:23
louis210000: Memo 之後補108F 08/15 20:23
kinomon: 挖快出來見上帝109F 08/15 20:24
AAPL: 推110F 08/15 20:24
toyeee: 推 但是會被洗掉111F 08/15 20:27
nuclearforce: 推推112F 08/15 20:29
sunhero: 推113F 08/15 20:31
faxy:114F 08/15 20:31
wuheroin: 推專業115F 08/15 20:33
WWIII: 里組才是台灣社會的棟樑啊116F 08/15 20:40
adifdtd: 推  ftp,魔術方塊,數學都受到教授無私的分享  ^^117F 08/15 20:42
johnson932: 推師大118F 08/15 20:43
lfi: 推119F 08/15 20:50
coolda: 數學能實用120F 08/15 20:50
syaman: 謝謝你帶我進入魔術方塊的世界121F 08/15 20:54
SuperRoMay: 我頭痛 還是推本人122F 08/15 21:02
sriomcokn: 推123F 08/15 21:03
akata: 推124F 08/15 21:05
lv256: 發錯時間啦125F 08/15 21:05
donyuan: 推這篇126F 08/15 21:12
himonkey1: 郭大我還不推!!!127F 08/15 21:12
cosco:128F 08/15 21:12
SHIU0315: 推推129F 08/15 21:14
SHIU0315: 可惜發的時間不對 再推個
cho860928: 推131F 08/15 21:16
gosee: 快出來見神阿  學長好!!!!132F 08/15 21:21
mn228426: 基本的optimization problem133F 08/15 21:22
ctes940008: 推134F 08/15 21:24
SameLaw:   推135F 08/15 21:26
Frank20225: 好教授推一個136F 08/15 21:32
harry7319: 推137F 08/15 21:35
kindaichitom: 本來就是一種演算法啦138F 08/15 21:37
gametv: 推專業139F 08/15 21:38
rax1010: 一個不同的思考方式,推140F 08/15 21:48
ss5010593: 推141F 08/15 21:49
debian99: pro142F 08/15 21:50
gamesame7711:143F 08/15 21:52
TampaBayRays: 推郭大!!144F 08/15 21:53
Bijala: 五樓在噓三小?145F 08/15 21:53
klks0304: 好教授推推!146F 08/15 21:53

--
※ 看板: Gossiping 文章推薦值: 4 目前人氣: 0 累積人氣: 11875 
※ 本文也出現在看板: PttHot
分享網址: 複製 已複製
( ̄︶ ̄)b bloodtclf3, microken, PhantomLord, tsukiyumi 說讚!
1樓 時間: 2017-08-15 21:15:22 (台灣)
  08-15 21:15 TW
水果新聞快辦不下去了
2樓 時間: 2017-08-15 23:31:57 (台灣)
  08-15 23:31 TW
來幫老同學推一下....
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇