排列組合小註解

終於咱家女兒上到了排列組合, 這個令很多人一頭霧水的數學單元. 它大概有幾種情況.

1. N 個不同的東西依序排列, 其順序有意義的話, 第一個位置有 N 個可能, 第二個位置剩下 N -1 種可能, 依此類推, 共有 N! 種排列方式.

2. 如果有 N 種東西, 只能搶 K 個位置, 當然第一個位置仍然有 N 種可能, 第二個位置剩下 N -1 種可能, 第 K 個位置剩下 N – K + 1 個可能. 也就是 Pnk = N! / (N-K)!.

3. 如果 K 個位置中, N 個東西可以重複出現, 那麼排列就有 Nm 種, 稱為重複排列.

來個應用題, 7 個人搭 3 輛車, 可以有幾種排列方式? P73? 37, 73?

如果是 P73, 其實表示最後只有 3 個人上得了車, 每車一個人. 就像是玩大風吹那樣.

如果是 73, 表示每輛車可以從 7 個人中選一個人來上車 (我們就假設車子有意志好了), 第一輛車選上了甲, 而在重複排列的條件下, 第二輛車還是可以選甲. 以至於受歡迎的甲會被兩三輛車子載走 (how? 聽起來不合邏輯), 而其他人可能只得乾瞪眼.

因此可以放在假數 (mantissa ) 位置的, 必須是容器, 可以重複出現的. 放在指數 (exponent) 位置的, 必須是獨立不可切割的, 或是獨立事件.

4. 更進一步是, 若排列物的本身就無法分辨其差異, 例如紅球, 白球, 鉛筆之類的東西. 排列出來也要再打個折扣. 也就是要除以不能分辨的子集合的排列數. 三支鉛筆和五個橡皮擦的排列. 將會得到:

(3+5)! / 3!5!

5. 組合的概念和排列不同, 排列強調有序, 組合只考慮一堆一堆的. 這裡會出現大家熟悉的 Cnk. 也就是從 n 個東西裡面拿出 k 個的組合方式. 既然已經變成無差別的一堆了, 就等於 Pnk /K! = N! / (N-K)!K! = Cnk.

由於這個式子和情況 4 的狀態很像, 我們可以想像成把 n 個東西分成兩堆, 第一堆表示選上了, 第二堆表示沒選上. 選上的那堆無差別, 像是紅球或是鉛筆, 另一推落選的也無差別, 像是白球或是橡皮擦.

6. 再來就是重複組合, 重複組合的公式很簡單, 但是觀念比較難. 網路上的這個例題不錯.

候選人4名,選舉人 18 名,且無廢票,下列各種情形之下結果有幾種?解答

  1. 記名投票之情形。

  2. 不記名投票之情形。

第一小題的答案當然是 418.

第二小題的部分, 此時可以把投票結果想像成票有 4 堆, 堆與堆之間用空格來分別那是誰的票.

由於每一堆代表一位候選人的票, 這個排列是有序的. 而選票本身未記名, 所以它是無差別的. 只要插入一些空格, 它完全符合情況 4 的描述.

因此本小題相當於 18 張票和 3 個空格在排列. 我們套用情況 4 的概念, 組合數是 C 4+18-1 3 或 C 4+18-1 18種. 

帕金森定律小註解

今天在買菜的時候看到一本書, 覺得很有意思. 書名"帕金森法則:管理課上教不到的人性工作學", 這是本翻譯書, 它在講帕金森定律 (Parkinson’s Law).

這個定律在講什麼呢? 可以說是 “工作能夠自動填滿員工人數", 或者說組織會自行長大, 不管有沒有事情要做.

也就是說, 當一個人能力無法應付它的工作時, 除非他選擇急流勇退, 否則只好多找幾個人來分攤工作. 如果找來的人能力超過自己, 難免以後會被這個競爭對手比下去, 所以會找比較弱的人來當手下. 又因為這個手下能不怎麼樣, 所以本來只需要找一個厲害的, 卻變成需要兩個比較差的. 按照這個規則進行下去, 組織裡面就會充滿能力差的人, 而且團隊愈來愈大.

這個定律還有兩個公式. 第一個說 :

第二個說:

我在書店翻書很難消化這個公式, 回來想一想, 覺得應該這樣解釋. 首先看到公式一的 X, 這是每年需要新增的人數.第二個公式的 X 表示人員增加比例, 因為它多除了 Y, Y 代表整個團隊的人數. 而 100 就是為了讓這個數字變成百分比. 帕金森認為不管有沒有那麼多事情要做, 公式二的 X  都會落在 5.17~6.56% 之間. 當然, 這是帕金森所統計出來的. 至於那些 K, m, L 反而只是他建立模型用的.

其中, K = 能力不足的主管人數, 2 表示要找兩個人, m 表示內部文書作業的工作量, 單位是人-小時 (man-hour). 而 L 表示職涯的長度, 不同的行業應該會有不同的值. 而 n 是部門的數目, 看起來 N 也是. 總而言之, 帕金森希望表達出人就是會愈來愈多, 和實際工作多少沒有關係, 和文書作業這種 overhead 的複雜度倒是有關係.

為了避免組織老化, 首先就是需要找優秀的人進公司. 而且每個主管都要試圖找出比他自己更優秀的員工. 在這種情況下, 組織的膨脹就可以得到適當的抑制. 不過在另外一方面, 會發生帕金森所說的症狀也是基於人性. 若公司一直晉用年輕有幹勁的新人, 長此以往, 老員工的地位的確岌岌可危. 為了不要危害組織, 老員工應該從第一線自動引退比較好. 換言之, 公司的制度應該設計為鼓勵員工在適當的年紀退休, 這樣才能兩全其美.

畢竟員工會變得衰老, 不只是能力好不好的問題. 當員工已經不再能勝任他現在的工作, 他上面的老闆除了把他辭退, 也只能多找幾個人來學新把戲. 於是乎組織仍然會愈長愈大, 這就是 L  這個變數在公式中的妙用. 無論是我們行業中的工程師, manager, director, executive 都有自己的保鮮期. 可惜學校不教這些, 等我們自己體會到的時候又已經太老了啦!

在讀這本書的時候, 本書出版於 1958 年,不過作者舉得例子仍然很鮮活. 作者提到, 逼退一個人的最佳方式有兩種: 第一種是叫他不斷地出差, 讓他搞不清楚東西南北, 白天黑夜. 第二就是叫他填一大堆表格, 做很多 paper work. 個人覺得 AE 好像一直在做這樣的工作嘛! 常常被客戶叫去罰站, 又要寫一大堆作業解釋那裏做錯了? 會改進什麼? 什麼還沒改好? 什麼時間可以改完? 嗯, 能夠撐下去的人真是英雄好漢啊!

另外在書中的某一章, 還有第三種逼退方法, 聽起來有點搞笑. 那就是大家都在會議室裡面張口假裝講話, 但什麼也沒說, 讓對方以為自己已經老到重聽, 該退休了, 哈! 總之, 帕金森先生對人性的分析很有趣. 一個人從什麼都不懂, 進步到慢慢可以做出貢獻, 產生成就, 再到能夠獨當一面, 成為重要人物. 最後卻又落得跟不上時代被大家嫌棄, 像是花開又花落. 旁觀者清, 就怕當局者迷 – 不曉得自己已經不是花, 應該是果了. 若沒能修成正果, 也是責無旁貸的事.

先鋒基金超市 vs FirstTrade

最近一期前雜誌介紹了金鋒基金超市, 據說手續費比較划算, 所以我拿它和綠角先生推的 First Trade 比較一下.

這邊說的先鋒基金超市 (http://www.ezfunds.com.tw/) 和另外一個 "先鋒基金" (The Vanguard Group) 沒有關係, 前者賣各種基金, 後者是知名基金的名字.

很明顯地, First Trade 所賣的基金總類遠高於先鋒基金超市. 因為它不但可以買美國的金融商品, 也可以買其他國家的.

此外, 先鋒基金超市的手續費雖然低於一般銀行或投信所賣的基金, 但又高於 First Trade. 認真說來,  在 First Trade 買基金並非沒有手續費, 只是 First Trade 本身不賺這個錢. 如果基金本身要收, 就得扣掉手續費, 這個潛規則對其他單位也成立.

First Trade 還有個隱藏費用是:匯款到 First Trade 戶頭需  USD 17, 匯出需 USD  35. 同時台灣的收款銀行大概各收個 200 NTD 左右.

至於繳稅的部分, 先鋒基金倒是和 First Trade 可以一較高下. 在台灣報稅的話, 依據海外所得課稅辦法: 所得若超過 600 萬, 最多會課 20% 的稅.

而 First Trade 是在美國報稅, 配息有可能被課 30% 的稅. 包括: 貨幣市場基金 (Money Market Fund), ETF, 和股票的配息都在內. 而直接持有定存單與債券之配息, 或ADR現金股息則不用被課30%稅金.

簡單地說, 如果會被扣 30% 的所得稅, 那麼手續費無論多麼低都不划算. 除非某人在台灣的所得稅率已經超過 40%, 那麼被美國政府收 30% 的稅倒還不打緊. 

  先鋒基金超市 一般基金 First Trade
基金數量 700 數百 11,000
手續費 / 交易費 / 銷售費

0.897% (股票型 / 平衡型)

0.5985% (債券型)

1.5~3% 都有 
或有最低手續費

但一般廣告只強調折扣

0 (無銷售費基金除外) or

6.95 USD / 次 (有免費次數)

信託管理費 0 0.20% 0
債轉股差價 0 1.5% 0
轉換費 有 0.5% 0
轉換手續費 新台幣300元/次 新台幣500元/次 0
報稅單位 台灣 台灣

美國

[Note] 

推薦別人加入 First Trade 可以得到 50 USD, 被推薦的人可以得到 5次交易免手續費 (5 x 6.95 = 34.75 USD), 這個算隱藏的好處. 請參考.

[Note 2]

看到網路上一大堆人請綠角大當 First Trade 的推薦人, 我想他所寫的那些文章可都有回報了, 哈!

我讀 «龍紋身的女孩»

史迪格拉森 (Stieg Larssion) 是 “千禧三部曲" – 龍紋身的女孩, 玩火的女孩, 直搗蜂窩的女孩這三本書的作者, 他在 2004 年完成鉅作後不久就因心臟病去世, 連新書上市都沒能見到. 據說本書暢銷 6000 萬冊, 我也知道它被拍成了電影, 不過這些財富和名聲, 拉森先生都無緣享受.

這個傳奇給了我一個啟示, 寫好一本就應該趕快出書, 不要等寫好三本才一次出版 – 換句話說, 定期定額還是比單筆要好, 不要孤注一擲. 

“龍紋身的女孩" 屬於犯罪小說, 前半部都在鋪陳劇情, 包括男女主角 – 雜誌 “千禧年" 發行人布隆維斯特和駭客莎蘭德兩段原本不相干的故事. 由於鋪陳了太多, 個人感覺像是吃到佛跳牆之前先喝了三大壺紅茶.

大約在本書過了 280 頁之後, 劇情才開始緊湊起來. 後半本書算是相當地精彩 (本書內容共 555 頁). 雖然我沒看過電影版本, 不過把前半本書修剪一下可能比較好.

本書一開始男主角就因為毀謗罪被判入獄. 原本他打算在自家的雜誌上舉發企業家溫納斯壯的內幕, 結果反而被假情報所害, 使得雜誌失去公信力, 而自己又被判了三個月徒刑.

接著第二男主角 – 另外一個企業家范耶爾正式登場, 因為他而把男女主角連繫在一起.

范耶爾是個行將就木的有錢老人, 他想要在死前調查出失蹤 36 年的姪孫女海莉的下落, 所以雇用了布隆維斯特. 表面上布隆維斯特受託為他的家族寫傳記, 實際上是授予男主角調查每個家族成員的權力. 而女主角莎蘭德就是老人雇來調查男主角背景的米爾頓保全公司的人.

至於為啥范耶爾要找布隆維斯特調查他們家的事, 而不是直接透過保全公司呢? 理由包括布隆維斯特小時候恰好見過失蹤的海莉, 並且以偵探般的特質聞名, 而范耶爾本身又是千禧年雜誌的讀者. 既然布隆維斯特因毀謗案上了新聞, 成為公眾矚目的人物, 所以范耶爾想到找他也算是勉強有點道理.

莎蘭德調查完布隆斯維特之後, 不小心被布隆維斯特反查出自己的身分. 兩個人了解對方的陌生人化敵為友, 最後終於追出龐大的案外案. 本書的架構大致如此.

作者非常重視人物的描寫, 可說是不厭其煩地塑造男女主角的個性. 因此我們可以看到布隆維斯特並不怎麼像個英雄, 但為人還算是有大原則. 而外型弱小的女子莎蘭德有俠客之風, 她不把法律當作一回事, 完全用自己的倫理做人做事.

當然, 若是守法就當不成駭客; 若是什麼隱私都要揭發, 雜誌記者就成狗仔隊了. 這是男女角基本上的矛盾情結, 也是作者刻意著墨的地方. 只不過作者並不會跳出來說話, 也沒有藉著書中人物分辨是非善惡, 他只是呈現故事讓讀者自己去思考.

至於推理小說常見的元素 – 密碼 – 在本書也扮演重要的角色. 個人覺得本書中的密碼用得比較沒特色, 比較新奇的應該是男主角用到的另外一個招數 – “看照片". 從攝影的角度分析, 被害人眼光看到的方向可能就有兇手在內. 男主角根據當天每個人的所照的相片, 拼湊出消失數十年的現場, 這個手法還滿有趣的.

另外就是女主角的駭客功力很高, 這提醒了我們要把不用的 port 都封鎖起來才能安心!

最後, 男女主角的筆電都是蘋果的 – 女主角: powerbook, 男主角: ibook. 殺人犯用 Dell, 經濟犯用 IBM…作者可能是個果粉 (蘋果粉絲) 啊!

 

2012/4/17 補充

接著我用一週的時間把 “玩火的女孩" 和 “直搗蜂窩的女孩". 原來這三部曲真的是同個故事的延伸. 話說女主角 A 了壞人的錢賺很大之後, 原本也平靜無事. 不過男主角卻因為跑一則性交易醜聞, 而惹上了國安局裡面的人. 很不巧這個幕後的大黑手竟然是女主角莎蘭德的爸爸. 

在第二集中, 解釋了莎蘭德和她爸爸的深仇大恨, 也就交代了她的身世. 所謂 “玩火" 或 “直搗蜂窩", 說明了莎蘭德的主動出擊. 而男主角則以新聞報導的觀點, 挖掘性交易與國安局的內幕, 和女主角相互輝映. 有趣的是動手多的是女性那一方, 男方運籌帷幄, 多半出一張嘴.

後兩集中又出現了不少人物, 感覺故事都快講完了, 還有很多配角陸續登場. 除了作者在描述細節的部份還是和以前一樣累贅之外, 整體而言還是很刺激好看的一本書. 男女主角各自受到生命威脅, 卻又彼此相關連. 故事尤其布局完整, 讓每一本書都各自有其生命.

值得特別介紹的有兩個地方, 第一個就是女主角無論被通緝跑路或是被關在加護病房都能有戲, 這個安排非常有趣, 也顯示出作者說故事的功力. 第二個就是作者希望藉由莎蘭德數學優異來凸顯她的能力, 不過基本上只有描述, 沒辦法產生火花. 雖然她閒暇的時候證明了費馬最後定理. 不過作者連這個定理在證明什麼都沒說清楚, 只能列出方程式 a3 + b3 = c3. 我想作者畢竟有其極限, 頂多只能寫到這樣了.

DASH 小註解

DASH 這邊是指 MPEG DASH (Dynamic Adaptive Streaming over HTTP), 也就是用 HTTP 傳輸動態碼流的意思. 聽到這個名詞不得不令人想到 Apple 的 HLS (HTTP Live Streaming), 沒錯!這兩個規格是互相競爭的. 類似的規格還有 Microsoft Smooth Streaming 和 Adobe Dynamic Streaming. 據說這類的規格 80% 長得一樣, 但 100% 不相容.

為什麼會有這種規格上的需求呢?因為在網路上傳輸影片是一個不可逆的趨勢 – 例如 VOD (video on demand) 或 streaming, 而網路環境中又很難握實際的頻寬, 所以動態傳輸當然有必要. 接著講到 HTTP, 為啥用 HTTP 呢?因為防火牆一般不會擋它. 公司要是擋了 HTTP 就不能 Google 啦!所以 HTTP 影片可以順勢穿透防火牆, 也可以善用各種 proxy 或是 cache 的設備. 兩個因素加起來, 就導致了 HTTP streaming  的興起.

為了適應不同螢幕解析度和頻寬, 在 server 當然得準被各種規格影片. 此外, 所謂的動態當然需要靠偵測結果作為依據, 每個規範的著眼點也不一樣, 大致上是用 client 的 CPU loading 或是頻寬.

Server 動態偵測 切割方式 Container CODEC
Adobe RTMP Streaming Server 假設靜態 AMF, SWF, FLV and F4V Adobe assigned
Adobe’s HTTP-based Dynamic Streaming (HDS) HTTP CPU utilization time-code MP4 V: H.264 or VP6

A: AAC or MP3

Microsoft’s

Smooth Streaming

HTTP or RTSP CPU utilization time-code MP4 V: H.264 or VC1

A: AAC or WMA

Apple’s

HTTP Live Streaming (HLS)

HTTP buffer status segment M2TS
MPEG DASH HTTP CPU or buffer MPD M2TS or MP4 open
RealNetworks’ RTSP Real Data Transport (RDT) ? ? RM or RMVB RealNetwork assigned
DiVX Plus Streaming (DPS) HTTP delay? HTML5+

segment

MKV V: H.264
A: AAC, AC3, DTS, DTS Express

DASH 看似比大公司推出的規範更有公信力, 但是也受到某些苛責. 例如 DASH 並沒有指定 video CODEC, 所以號稱支援 DASH 的 browser 也就得多才多藝, 什麼格式都得解. 製作 DASH content 的人,  也要考慮接收端是否什麼都能解?而得把各式菜色都煮好才能端出來. 不過往好處想, DASH 開放了 CODEC 和 DRM (digital rights management) 的 support.

上表中 MPEG DASH 的 MPD (Media Presentation Description) 代表一個用 XML 管理的方式. 它把各個時間片段, 各種頻寬需求的影片 URL 一次給足. 因此 client 永遠知道下一個 byte 要去哪個 URL 撈. 抓一個圖解釋如下.