目录

1 沉没成本

1.1 兴趣引入

1.2 沉没成本的概念

2 赌徒黑洞理论

2.1 兴趣引入

2.2 对赌徒黑洞理论的刨析

3 沉没成本模型和数据(Matlab代码实现)

3.1 结果展现

3.2 代码

4  赌徒黑洞理论做的一个小游戏

4.1 代码

4.2 展现

4.3 代码打包带走 


所有文章和电气代码一览无遗:电力系统与算法之美(Python&Matlab代码)

这几天经历的事比较多,感触也很多,所以写了这篇文章,与君共勉。

1 沉没成本

1.1 兴趣引入

2001年诺贝尔经济学奖获得者之一的美国经济学家斯蒂格利茨还用一个生活中的例子来说明什么是沉没成本。他说,“假如你花7美元买了一张电影票,你怀疑这个电影是否值7美元。看了半个小时后,你最担心的事被证实了︰影片糟透了。你应该离开影院吗?在做这个决定时,你应当忽视那7美元。它是沉没成本,无论你离开影院与否,钱都不会再收回。”斯蒂格利茨在这里不但生动地说明了什么是沉没成本,而且还指明了我们对待沉没成本应持怎样的态度。

打开衣柜,相信每个人都会有几件买来就没穿过的衣服挂在架子上,而每次整理衣物,却总是无法下定决心来清理掉它们。房间里堆积着说买来就没用过的物件,我们的理由永远都很站得住脚,「我买它的时候还是很喜欢的」,亦或是「我买的时候花了很多的钱,扔了太可惜了。

追女朋友,一开始投入大量的时间和精力还有金钱,越到后面投入的越多,宁可做一个不折不扣的舔狗,也舍不得分手,其实这和我们接下来一部分要讲的赌徒黑洞理论有异曲同工之妙。爱情世界,一直被沉没成本和赌徒黑洞理论所左右,古今中外皆是如此。

再回想自己等公交的场景,是不是沉没成本。哈哈哈......

不难发现,让我们停滞不前或者不愿止损的主要原因,还是自己已经花费了很多金钱以及时就像是投资、炒股或是赌博一样,当我们持有的资产效益下降时,我们仍希望能持有这些资产,以期待之后的翻身,结果往往是自己被套牢,或是在赌局中倾家荡产。

拍卖行与网购网站,就充分利用了这个因素,一个商品,可能被刻意设置成了低价竞标(比如一台iphone,2元钱起拍),这时想必每个人都可以竞标,但是每一次竞拍都需要交给网站1元手续费,另外还有一个条件,就是如果有另一个人用更高的价格竞标,1分钟内无人加价的话,那么这个人就能拍得商品。随着价格的增加,很多人就会变得不那么理智,因为自己之前已经花费了那么多的手续费以及时间,如果竞标失败,等于是自己肉包子打狗,因此即使最后拍卖价格远超商品原价,很多人仍会义无反顾地继续投钱而不是及时止损。


1.2 沉没成本的概念

沉没成本是指已发生或承诺、无法回收的成本支出,如因失误造成的不可收回的投资。沉没成本是一种历史成本,对现有决策而言是不可控成本,不会影响当前行为或未来决策。从这个意义上说,在投资决策时理性的决策者应排除沉没成本的干扰。


从成本的可追溯性来说,沉没成本可以是直接成本,也可能是间接成本。如果沉没成本可追溯到个别产品或部门则属于直接成本;如果由几个产品或部门共同引起则属于间接成本。
从成本的形态看,沉没成本可以是固定成本,也可能是变动成本。企业在撤消某个部门或是停止某种产品生产时,沉没成本中通常既包括机器设备等固定成本,也包括原材料、零部件等变动成本。通常情况下,固定成本比变动成本更容易沉没。


2 赌徒黑洞理论

2.1 兴趣引入

有位大佬总结得而很到位:它就如同一个黑洞,哪怕你只是试探性的靠近一点,也会不由自主的越陷越深加速坠落,只要参透它,你就能参透爱情那血腥的本质。

实在秒啊,生活中,常人很难逃脱这一魔咒。当然,我也不例外(小学作文最喜欢用的开头总算今天也用上了)

美女喜欢渣男的原理这里有一个问题,美女为什么喜欢渣男?在心理逻辑上,我们有一个词叫做「反馈」,也就是说我们眼中所见到的人、事与物,都是一种折射,并在人的大脑中形成「反馈」。


2.2 对赌徒黑洞理论的刨析

「赌徒黑洞」可以拆分两部分来理解,一个是目的,一个是奖励机制。

目的很好理解,就是用对方臆想出来的目标来掩盖真实的目的。当男生踏出了勇敢付出的那一步。这个时候的他希望得到反馈。在反馈并不强烈的时候,反而激起了更多的付出。这样,添狗男就真陷进去了,成为众人眼中的一枚舔狗。

第二部分,奖励机制

在我们的理解中,奖励是一种简单的叠加算术题,比如花100元1斤的苹果,花1000元是不是就买了10斤,相信三岁小孩都懂。这折射出一个原理就是,付出越多越渴望得到更多的回报,很多人心里就认定世间常理都遵循这个道理。

这同时也意味着,害怕失去,害怕之前的付出都是毫无意义的。比如只要骗子骗了你第一笔钱,你就会乖乖投入第二笔钱。

再如时下火热的「拆盲盒」或者抓娃娃机,商家为什么能赚钱?是不是大多数人在不知不觉中都付出了超出商品价值的金钱?

他给你的臆想是,让你认为可以拆出个苹果手机,掩盖他实质就是在做生意赚你钱的目的,他又不是做慈善有病啊才会真给你送苹果手机。

  用少数的得到来掩盖大部分抓空的真相。

  她从来不会说我不喜欢你,或者我喜欢你,只会给你感觉她可能喜欢你,而且需要你。


沉没成本模型和数据(Matlab代码实现)

3.1 结果展现

3.2 代码

沉没成本和赌徒黑洞理论(Matlab代码实现)

4  赌徒黑洞理论做的一个小游戏

4.1 代码


// Variables
var ticketCost = getTicketCost();
var rounds = 1; // default to first round
var money = 0;  // default to no change in moneyvar isFree = false; const numberRounds = 20; // Controls the math portion. Doesn't control html (aka "x / 20 rounds"); // Functions: Organized generally in order of call
function getTicketCost() { // get ticket cost. Changes to test rounds lastedvar num = (Math.floor(Math.random() * 6)) * 5; // 0, 5, 10, 15, 20, 25if (num < 1) { // num is 0 var btnBuy = document.getElementById("buybutton"); btnBuy.style.display="block"; btnBuy.innerHTML = "Get Ticket"; document.getElementById("incrementButton").style.display="none"; document.getElementById("uselessInfo1").innerHTML="There's a free ticket to a game."document.getElementById("uselessInfo2").style.display="none"; document.getElementById("ticketCost2").innerHTML = 0; }return num;
} function createTicket() { // Setting the proper fields with the ticketCostdocument.getElementById("ticketCost").innerHTML = ticketCost.toString(); document.getElementById("ticketCost2").innerHTML = ticketCost.toString(); }function incrementMoney() {var btn = document.getElementById("incrementButton"); money += 1; btn.innerHTML = money.toString(); document.getElementById("moneychange").innerHTML = (money).toString(); var leftPercent = Math.floor(Math.random() * 75);var topPercent = Math.floor(Math.random() * 75);btn.style.transform = "translate(" + topPercent + "vw, " + leftPercent + "vh)"; if (money === ticketCost) {var btnBuy = document.getElementById("buybutton"); btnBuy.style.display="block"; document.getElementById("incrementButton").style.display="none"; }}function buyTicket() { // Choosing to buy the ticket, shows next block of text var element1 = document.getElementById("buybutton").style.display='none'; var element2 = document.getElementById("description");var trials = document.getElementById("trialInfo"); trials.style.display="block"; unfade(trials); element2.style.display="block";unfade(element2);money -= ticketCost; document.getElementById("moneychange").innerHTML = (money).toString();
}function begingame() { // begins the game. Sets the first section as visible, hides introductiondocument.getElementById("introsection").style.display="none";document.getElementById("firstsection").style.display="block";
}function proceed() { // Proceed to play the game. document.getElementById("hiddenobj").style.opacity=0; // Hides the display of resultsdocument.getElementById("secondsection").style.display="block"; // Shows second sectiondocument.getElementById("buttonsdisplay").style.display="none"; // Hides the buttons to proceed / back outrng(); // Creates RNG timerssetTimeout(unfadeElem, 2750); // After the timer
}function endgame(lastRound) { // Ends the game. if (lastRound || confirm("Back Out?")) {// Set what must be seen / not seen document.getElementById("firstsection").style.display="none"; document.getElementById("secondsection").style.display="none"; document.getElementById("infoBox").style.display="none"; // Since rounds is the current round, they lasted rounds - 1 rounds total. rounds -= 1; document.getElementById("lasted").innerHTML = (rounds).toString(); document.getElementById("cost").innerHTML = (ticketCost).toString(); unfade(document.getElementById("lastsection")); // Link to pre populated google form document.getElementById("formLink").href= "https://docs.google.com/forms/d/e/1FAIpQLSdPvo9OQP_-neUyDhT4FV4PJCSItr-jy9lDGsvdtL5Nutn1Og/viewform?entry.1051975222&entry.1130850895=" + ticketCost.toString() + "&entry.571258578=" + rounds + "&entry.1545061294=" + money; // Displayed is the final number of rounds they lasted, or how many times they clicked the 'proceed / play' button. }
}function rng() { // Sets timersvar lessThan = 3000; var multiply = 1.2;for (i = 1; i < lessThan; i *= multiply) {setTimeout(setRandom, i); // Set a timer for a function };
}function setRandom() { // Set a random number to a section on the screendocument.getElementById("rng").innerHTML = Math.floor(Math.random()* 11); // 0-10 inclusive
}function unfadeElem() { // After the timer. if (rounds < numberRounds) { // Normal round var elem = document.getElementById("hiddenobj");unfade(elem); // Unfade the result of the rngvar amount = Number(document.getElementById("rng").innerHTML); // Find the final amountif (amount % 2 === 0) { // even - lose money = money - amount; document.getElementById("roundDescription").innerHTML = "The result was even, so you lose $" + amount.toString(); } else { // odd - winmoney = money + amount; document.getElementById("roundDescription").innerHTML = "The result was odd, so you win $" + amount.toString(); }reset(); // Reset the trial number and money change} else { // rounds === numberRounds. Implies it's the final round possible. var elem = document.getElementById("hiddenobj");unfade(elem); // Unfade the result of the rng// Unfade the back out and continue buttons, fade in the "finish" buttondocument.getElementById("buttonDivNormal").style.display="none"; document.getElementById("buttonDivEnd").style.display="block";// Continue as regularvar amount = Number(document.getElementById("rng").innerHTML); // Find the final amountif (amount % 2 === 0) { // even - lose money = money - amount; document.getElementById("roundDescription").innerHTML = "The result was even, so you lose $" + amount.toString(); } else { // odd - winmoney = money + amount; document.getElementById("roundDescription").innerHTML = "The result was odd, so you win $" + amount.toString(); }rounds -= 1; // So that instead of setting trial as 21/20, stays at 20/20reset(); // Reset the trial number and money changerounds += 1; // So set back to 21. }
}function reset() { // Update information document.getElementById("moneychange").innerHTML = money.toString();rounds += 1; // Successfully passed a rounddocument.getElementById("trialnumber").innerHTML = rounds.toString();
}function unfade(element) { // For flow. Unfades an element var op = 0.1;  // initial opacityvar timer = setInterval(function () {if (op >= 1){clearInterval(timer);}element.style.opacity = op;element.style.filter = 'alpha(opacity=' + op * 100 + ")";op += op * 0.1;}, 10);
}

4.2 展现

接下来,如果你感兴趣。我把资源打包了。

4.3 代码打包带走

关注公众号:电力系统与算法之美

回复关键字:沉没成本

致谢

比黑暗森林更恐怖的赌徒黑洞原理:赌徒黑洞 (baidu.com)

值得每个人看的一篇文章——沉没成本和赌徒黑洞理论(Matlab代码实现)相关推荐

  1. 关于VR产品的前世今生,看这一篇文章就够了

    关于VR产品的前世今生,看这一篇文章就够了(转) 文/胡勇 即使最富质疑精神最冷静的人也无法漠视现在的 VR/AR 掀起的狂潮,这个从科技圈蔓延到实业界最后席卷大众的想象力的狂欢正以前所未有的态势改变 ...

  2. 五年程序员是如何玩转闲鱼无货源的,只看这一篇文章就够了

    今天的内容方向主要是基础篇-进阶篇 ,优化了一下操作方法,尽量细化,让你看完这篇内容之后从入门到大神. 基础篇: 注册这些基础的之前说过,这次就不说了,这次说下如何养号. 完善个人资料(头像.昵称.简 ...

  3. js层级选择框样式_IOS和JS的交互,看这一篇文章就够了

    IOS和JS的交互,看这一篇文章就够了 创作不易,请珍惜,之后会持续更新,不断完善 Demo地址 目录 WKWebView使用.JS的交互 WKWebView使用.JS的交互 演示(本来想贴张GIF作 ...

  4. 非常值得看的一篇文章—HP大中华区总裁孙振耀退休感言

    如果这篇文章没有分享给你,那是我的错. 如果这篇文章分享给你了,你却没有读,继续走弯路的你不要怪我. 如果你看了这篇文章,只读了一半你就说没时间了,说明你已经是个"茫"人了. 如果 ...

  5. 动态规划——01背包问题 看此一篇文章就够了

    本文讲述经典算法--动态规划的 常见问题 01背包  一篇文章带你学会01背包问题,妈妈再也不担心我遇到01背包了!!! 问题描述 有n个物品,它们有各自的体积和价值,现有给定容量m的背包,如何让背包 ...

  6. 产品经理如何进行数据分析?看这一篇文章就够了

    一.数据分析的层级 产品的数据分析经常会遇到这样的问题:只有数据,没有分析.仅仅是描述数据,告诉你产品发生了什么. 比如次日留存率只有5%,这个数据偏低,可以看出该功能的用户粘性不好. 然后呢?往往就 ...

  7. 经典!!!华为boss力荐公司高层看的一篇文章[转载]

    转自:http://blog.csdn.net/m13666368773/article/details/7817938 今天是 22 岁的最后一天.几个月前,我从沃顿商学院毕业,用文凭上" ...

  8. java 计算机概述看这一篇文章就够了

    第一章 计算机概述 第1节 计算机介绍 1 广义上: 凡是可以帮助我们完成计算的工具统称为计算机(比如 算盘.计算器等...) 狭义上: 当前说计算机一般情况特指电子计算机(电脑) 第2节 计算机历史 ...

  9. 关于5G,看这一篇文章就够了

    对于大多数人来说,5G 这个名词即使不了解也一定听说过.不过,4G 时代不是才开始没几年吗?现在就说下一代无线通讯技术是不是有点早?确实是,不过时光飞逝岁月如梭,技术发展可不等人,5G移动通信可能很快 ...

  10. 什么是Docker?看这一篇文章就够了

    作者 | 码农的荒岛求生 来源 | 程序员小灰(ID: chengxuyuanxiaohui) 程序员,应该怎样理解docker? 容器技术的起源 假设你们公司正在秘密研发下一个"今日头条& ...

最新文章

  1. asp.net mvc 简易上传功能
  2. python在哪里写程序和运行-如何编写和运行Python程序
  3. 北斗导航 | 卫星导航发展史
  4. 指定的服务已经标记为删除_你的电话号码被标记过吗?你知道这件事情还能赚钱吗?...
  5. docker中的容器和镜像
  6. Google SVN托管和使用学习笔记
  7. 数据绑定 单个对象和集合绑定差异
  8. Oracle优化查询技巧
  9. (二)Netty之IO模型
  10. 程序设计与算法----动态规划之最长上升子序列
  11. mkpasswd命令
  12. Android重写View并且自定义属性(二)
  13. 1复数与复变函数(一)
  14. react学习系列3 使用koa-router模拟后台接口
  15. 【NOIP2017】【Luogu3954】成绩(模拟)
  16. 如何得到给定序列的互补序列以及反向互补序列
  17. emoji语言抽象话大全_当抽象话也成为一种暗语
  18. ipa逆向分析class-dump的安装和使用
  19. Linux--解决vi报错:E37: No write since last change E162: No write since last change for buffer
  20. Simulink提速方式

热门文章

  1. javaIO流实现文件拷贝
  2. MMKV 原理以及使用
  3. ARM指令集 --RISC精简指令集
  4. 关于jesd204出错
  5. Cocos Creator 实现大厅+子游戏模式
  6. SM3算法 C语言 (从OpenSSL库中分离算法:六)
  7. kitti数据集格式
  8. win10安装虚拟机vm遇到的坑
  9. ipmitool源码解析(一)——一次带内ipmitool raw data发送过程
  10. 幅频特性曲线protues_【2017年整理】幅频相频特性multisim11.ppt