Multivariate Decision Analysis: a Simple Intro

……Twitter 上关注我的人大概都比较清楚我这次找18年实习的故事,很是有些曲折。别的先不说,一共面了小十家公司,进入最后一轮的有四家,拿到了三个 offer。三家虽然都不是 big names,但在各自领域里都是佼佼者,所以关于如何取舍的这个问题我是纠结了很久。灵光一现,突然想起来本科的时候学过在这种情境下如何抉择的方法。翻出来以前的课堂例子,再看了下自己当时写的笔记,感觉一切都连起来了如此的顺理成章。这也帮我最后成功敲定了理想的选择。就还是用课上给的例子来阐述应该如何实践这一分析方法吧~

获取原数据 Gather the Raw Data

万物不离其宗,你首先得有数据才能开始分析对吧。课上给出的例子是选定租哪个公寓。有五个公寓可供选择,考虑的指标有房租,房间面积,到DCA机场的时间,到地铁站的距离,上下班通勤时间,以及所谓的 Hip factor(有多少人年龄大于65岁——并没有歧视的意味,考虑到这是本科时候的一个例子,也可以理解老美本科生们不愿意往老头老太聚居的地方扎堆)。具体到自己的情况的话,也是要根据手头上的可选项合理的划分对应的指标的。下面是原始数据表~

Original raw data table
East falls church apts Courthouse Apt The Elms Annandale Apt Ballston Apt
Monthly cost 1170 800 1530 1250 1845
Sq ft 1000 500 1100 1500 1000
Time to DCA 19 12 23 19 13
Miles to metro 0.8 0.3 1.7 11.1 0.4
Commute time 20 12 30 27 15
Person over 65 (“Hip factor”) 8.70% 8.70% 9.10% 12.10% 8.70%

数据规范化 Normalize Data

这个中文译名怎么感觉这么不得劲233。有了上面的原始数据,下面就开始动真格啦。这个例子给的数据还不错,大部分都是 interval/ratio 的,ordinal(按顺序排列)和 categorical (分类,如A/B/C)的就不太适用于这样的分析方法了,得把数据转换成对应的维度。但这些数字本身并不能告诉我们什么,最后做分析时候只关心这些数字是如何关联的。这时候就得规范化数据了(Normalize data… 简单解释就是把一堆转换成0-1之间的小数方便比较)。下面我提取出来了每个指标的最高值和最低值,以及范围(注意:范围是 最佳-最差,所以不一定总是最高值减去最低值。例如第一行房租就是负数,因为房租我当时考虑的是越低越好)。转换的时候只需要用 (原数字-最差情况值)/范围 就可以转换成功啦。各个指标对应的最差值都用红色标注了出来。

Quick analysis (Min, max, range)
Min Max Range
Monthly cost 800 1845 -1045
Sq ft 500 1500 1000
Time to DCA 12 23 -11
Miles to metro 0.3 11.1 -10.8
Commute time 12 30 -18
Person over 65 (“Hip factor”) 8.70% 12.10% -3.40%
Normalized data table
East falls church apts Courthouse Apt The Elms Annandale Apt Ballston Apt
Monthly cost 0.645933014 1 0.30143541 0.569378 0
Sq ft 0.5 0 0.6 1 0.5
Time to DCA 0.363636364 1 0 0.3636364 0.909090909
Miles to metro 0.953703704 1 0.87037037 0 0.990740741
Commute time 0.555555556 1 0 0.1666667 0.833333333
Person over 65 (“Hip factor”) 1 1 0.88235294 0 1

边际替代率 Marginal Rates

hmm,又是一个我觉得很有趣的中文翻译orz。Normalized 以后并不能看出来每个选项的好坏,我们最后还是想要排序,需要一个单纯的分数(score)。那如何把每个分类都合计起来考虑呢?这时候就需要加权(weights)。但加权也不是随便加的,得考虑边际替代率(Marginal Rates MRS)。一般边际利率会在题目条件里给了,通过这个可以推测出来各个分项的权重各自是多少。下面是一个公式:

mrs_formula

由此可推测出来,w_y/w_x = MRS * Range_y / Range_x。这个之后会用到。下面是这个例子的MRS摘要:

They would trade a 1-minute reduction in commute time for:

$20 additional monthly cost

10 fewer square feet

1-minute increase to DCA

0.5-mile increase in miles to Metro

1% increase in residents over 65

Define: y = commute time, x = other attributes.

MRS(sq ft/commute time) MRS(monthly cost/commute time) MRS(time to DCA/commute time) MRS(miles to metro/commute time) MRS(hip factor/commute time)
10 20 1 0.5 0.01

通过边际替代率计算权重 Calculate Weights through MRS

上表已经提供了MRS以及如何通过MRS算权重的公式。这个例子里假设通勤时间的权重为1,可由此推测其他指标的权重为多少。根据上面的定义,y是通勤时间,x是其他指标。下面这个表计算出来了其他指标的权重和通勤时间这一权重的倍数关系:

x MRS(y/x) Range(x) Range(y) Range(x)/Range(y) w_x/w_y
cost 0.05 -1045 -18 58.05555556 2.9027778
sq ft -0.1 1000 -18 -55.55555556 5.5555556
time to DCA 1 -11  -18 0.611111111 0.6111111
Miles to metro 2 -10.8  -18 0.6 1.2
hip factor 0.01 -3.40%  -18 0.001888889 1.889E-05

所有指标加起来的权重为1,知道了每个指标相对于通勤时间的倍数可以算出来对应的权重:(通勤时间的权重 = 1/所有倍数之和,其他权重 = 倍数×通勤时间的权重)其实没有必要像我一样算到小数点后面好多位,两三位大概就够了。

Multiplier Weights
commute time 1 0.08873537
cost 2.9027778 0.257579061
sq ft 5.5555556 0.492974278
time to DCA 0.6111111 0.054227171
Miles to metro 1.2 0.106482444
hip factor 1.889E-05 1.67611E-06
SUM 11.269463 1

知道权重以后算分数的公式就是 score = ∑ (individual attribute value * weight) 了。继续举例,East falls church apts 的总分 = 0.645933014 * 0.08873537 + 0.5 * 0.257579061 + 0.363636364 * 0.492974278 + 0.953703704 * 0.054227171 + 0.555555556 * 0.106482444 + 1 * 1.67611E-06 = 0.583436735. 再次重申,是我比较喜欢精确所以算到小数点后好多位,但其实并没有这个必要……

结论 Conclusion

East falls church apts Courthouse Apt The Elms Annandale Apt Ballston Apt
Weighted score 0.583436735 0.507025722 0.46610866 0.6741423 0.475228881
Rank 2 3 5 1 4

分数算出来咯,排序就按数字从大到小的顺序。Annandale Apt 总分最高,是权衡各方面利弊的最优选择。

其实光看 Normalized data table 也能看出来些门道:Ballston Apt 的交通很发达地区也很年轻化,输就输在房租太贵房间太小上。如果MRS不是如此残忍的惩罚高房租和小房间的话(加起来 weight 已经超过了 75%)它怎么说也不可能是只排第四名。Annandale Apt 看着是赢了,但其实离地铁站最远,周围老人也多通勤时间也久。之所以会有这样的结果,很大程度上都是MRS的锅。也就是说,一开始你就得从各个指标里选定某一个指标,然后看你愿意为了换取其他指标上的便利而在这个指标上牺牲多少。这个例子里假设用户为了减少1分钟的通勤时间,乐意交换$20的额外房租和减少10平方英尺的房屋面积。这也难怪这两项指标最后权重极大了。多说一句,最后我选 offer 的时候没有用到这么复杂的MRS,但根据个人情况,有时候合理的划分MRS也是很重要的。

以上就是 Multivariate Decision Analysis 的一个简单入门啦。其实后面还有更多高深的技巧,例如 sensitivity analysis, rating improvement, how changes in MRS affecting best choice 等。时间/篇幅有限(主要是我也不太记得了orz)就不在此班门弄斧啦,希望这篇入门小文章可以在你下次选择困难的时候帮到你(还真是帮到了我挺多的)。最后说一句,人还是要讲信誉的,不要随便 renege offer。我这次真是败了人品以后会更加谨慎……求RP回来啊不要一直倒霉了orz

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s