这例子有不同版本。
最早是把决定权放在电车司机手上,问题是“电车司机是否应该撞死一个人来保存五个人的生命”。不料,很多人在讨论的时候就把电车司机自己的职责因素考虑在里面了。这样一考虑,那个司机反正都是有罪,所以从选择罪行比较轻的角度考虑,他应该让电车撞死一个人,而不是五个人。
但是,这样的讨论,就偏离了问题的中心议题:一个行为的道德与否,是否应该根据这个行为最后达到的对于社会总利益(或幸福)量的影响来判断,(功利主义的观点)。所以,后来的版本就假定没有电车司机,而是旁人面对这样的情形,是否应该出手改变电车轨道的问题了。
看到老闹子的题目,想起了以前有人引用过的一个女人问男人:“如果我和你娘一起掉进河里,而你只能救一个,你救谁?”性质是一样的。
不知道那哈佛教授怎么解的:那录像太长没耐心看完。看过结果的人能否告知一下他的解。
回到LZ的问题。再帮LZ简化一下,撇除一切社会因素,换言之,换成数学问题:
这里有两个数字:1 和 5,假设数字大的=好,如果你要得到一个好,请问你选择1 还是选择 5。这答案毫无疑问是 5。但你加上社会性的因数进来,答案就变得不同了,因为你必须考虑社会性因数。对这些社会因素认识和观点不同的人就会对选择 5 还是 1 作为最好有不同。
如果只是有限地加上一些社会因素到这个数学问题中,选择可能相对就容易一些了:
假设这世界上只剩下你和5个病人外加另外一个正常人,五个病人需要那个正常的人器官移植才能活下来,而只有你有权力决定是5人活(加上你就是6人)还是1人活(加上你就是2人),并且拿器官移植成功的概率是100%并且5个病人恢复到正常人状态是那1人死亡后立即发生。那么,你选 1 人还是 5 人?这里还有一个社会因素要考虑,换句话说一个前提:人越多,生存和人类延续的机会越大;地球上只有2 人,生存和延续可能基本没有。那么,答案似乎也容易选择。当然实际上,前面列出的前提条件都有不确定性,所以让这样一个简单决策比一个数学题要复杂很多。变量太多,而且不确定性太多,所以取最大却不一定最后得到最大。
当问题变成LZ列出的,那又有背景因数在里面,事情变得更复杂。然而,人的大脑的“聪明”(按进化论来说经过长期进化而得到的)让人在瞬间的决策不自觉地(潜意识地)将背景因数考虑进去,因而大部分人对第一个问题选择 5 而对第二个问题选择1。
举个背景因数的例子。在医院的例子中,一个在潜意识中的背景因数会影响到选择:经常会有人到医院检查,如果医生杀1个救5个,那么这样的杀戮会经常发生,谁还敢去医院,因而不可容忍。而在电车的例子中,事故只是偶然发生并且应该被预防,因此牺牲1救5变得可以容忍。
突然发现,LZ是在出一个心理学的题目吗?
还是一个决策问题 -- minimax?
function minimax(node, depth)
if node is a terminal node or depth = 0
return the heuristic value of node
if the adversary is to play at node
let α := +∞
foreach child of node
α := min(α, minimax(child, depth-1))
else {we are to play at node}
let α := -∞
foreach child of node
α := max(α, minimax(child, depth-1))
return α