突然看到这样一个神片, 用建模方式进行分析, 绝了,故转之....

引言:

  上周我的一个朋友第N 次向女生表白遭到拒绝,作为好朋友的我除了同情之外觉得应该做点什么。之前一次聊天受到 菠菜 的启发,加上出于对数学的兴趣,我对女生“选择与拒绝”的策略试着做了一个简单的建模,并得出比较有意义的结论。

  摘要:

  每一个女生都渴望找到自己心中的白马王子,找到自己一生的幸福。但是面对追求者们,女生应该是选择还是拒绝,怎样才能以最大的可能找到自己的Mr. Right 呢?在这篇文章中我们运用数学中概率论的知识对女生选择追求者的这一过程进行数学建模,得到女生的选择的最优策略,最后对结果进行简单的讨论。

  关键词:

  炮灰模型 排列 选择

  模型假设:

  众所周知生活中涉及到感情的事情是很复杂的,把所有可能影响的因素都考虑到几乎是不可能的。为此我们先对现实进行简化,并做出一些合理的假设,考虑比较简单的一种情况。

  假设一个女生愿意在一段时间中和一位男生开始一段感情,并且在这段时间中有N 个男生追求这位女生。

  说明:这里的N 不是事先确定的,每个女生根据自身条件,并结合以往的经历和经验,猜测确定这个数字N 。

  比如其它各方面都相同的两个女生,一般来说,PP 的女生就要比不PP 的女生N 值相对要大一些。在适合这个女生的意义上,假设追求者中任何两个男生都是可以比较的,而且没有相等的情况。这样我们对这N 个男生从1 到N 进行编号,其中数字越大表示越适合这个女生。这样在这段时间中,女生的Mr. Right 就是男生N了。现在问题变成面对这N 个追求者应该以怎样的策略才能使得在第一次选择接受的男生就是N 的可能性最大,注意到这N 个男生是以不同的先后顺序来追求这位女生的。

  为了将实际复杂的问题进行简化,我们做出下面几条合理的假设:

  1、N 个男生以不同的先后顺序向女生表白,即在任一时刻不存在两个或两个以上的男生向这位女生表白的情况的发生,而且任何一种顺序都是完全等概率的。

  2、面对表白后的男生,女生只能做出接受和拒绝两种选择,不存在暧昧或者其它选择。

  3、任一时刻,女生最多只能和一位男生谈恋爱,不存在脚踏多船的情况。

  4、已经被拒绝的男生不会再次追求这位女生。

  基于上述假设,我们想要找到这样一种策略,使得女生以最大的概率在第一次选择接受的那个男生就是N ,i.e. Mr. Right 。

  先考虑最简单的一种策略,如果一旦有男生向女生表白,女生就选择接受。这种策略下显然女生以1/N 的概率找到自己的Mr. Right 。当N 比较大的时候,这个概率就很小了,显然这种策略不是最优的。

  基于上面这些假设和模型,我们提出这样一种策略:对于最先表白的M 个人,无论女生感觉如何都选择拒绝;以后遇到男生向女生表白的情况,只要这个男生的编号比前面M 个男生的编号都大,即这个男生比前面M个男生更适合女生,那么女生选择接受,否则选择拒绝。

  下面以N=3 为例说明:

  三个男生追求女生,共有六种排列方式:

  1 2 3

  1 3 2

  2 1 3

  2 3 1

  3 1 2

  3 2 1

  如果女生采用上述最简单的策略,那么只有最后两种排列方式选择到Mr. Right ,概率为2/3!=1/3 。

  如果女生采用上面我们提出的策略,这里我们取M=1 ,即无论第一个人是否优秀,女生都选择拒绝。然后对于之后的追求者,只要他比第一个男生更适合女生就选择接受,否则拒绝。 基于这种策略,“1 3 2 ”、“2 1 3 ”、“ 2 3 1 ”这三种排列顺序下女生都会在第一次做出接受的选择时遇到“3 ”,这样我们就把这种概率增大到3/3!=1/2 。

  现在我们的问题就归结为,对于一般的N ,什么样的M 才会使这种概率达到最大值呢?(在这种模型中,前面M 个男生就被称为“炮灰”,无论他们有多么优秀都要被拒绝)

  模型建立:

  在这一部分中,根据上面的模型假设,我们先找到对于给定的M 和N(1<M<N) ,女生选择到Mr. Right 的概率的表达式。

  1 到N 个数字进行排列共有N! 种 可能。当数字N 出现在第P 位置(M<P<=N ),如果使上述策略在第一次选择接受时遇到的是N ,排列需要满足下面两个条件:

  1、N 在第P 位置

  2、从M+1 到P-1 位置的数字要比前M 位置的最大数字要小

  运用数学中排列组合的知识,不难知道符合上面两个条件的排列共有

  

  这样对于给定的M 和N ,P 可以从M+1 到N 变化,求和化简后得到给定M 和N 共有

  

  种序列符合要求。

  由此得到女生选择接受时遇到Mr. Right 的概率为

  

  模型求解:(不感兴趣的话可以直接跳过这部分推导)

  这一部分中我们求解使这个表达式取得最大值时M 的值。

  记函数

  

  且设自变量取值为M 时,函数取得最大值。

  因此:

  

  所以M 应满足

  

  我们知道,当x>0, In(1+x)< x ;

  当x-->0, In(1+x) ~ x 。

  所以由左不等式

  

  所以:

  

  当N 比较大时,同理由右不等式可得M ≈N/e , 以上e 为自然对数。

  若记[x] 为不大于x 的最大整数,由以上推导我们可猜测当M 取[N/e] 或[N/e]+1 时,该表达式取得最大值。

  用MATLAB 仿真,上述结论正确。

  结果分析:

  由上述分析可以得到如下结论:为了使一个女生以最大的概率在第一次选择接受男生时遇到的正是Mr. Right ,女生应该采用以下的策略:

  拒绝前M=[N/e] 或者[N/e]+1 个追求者,当其后的追求者比前M 个追求者更适合则接受,否则拒绝。

  “打战的时候,很多士兵身先士卒,跑到前线勇往直前。通常来说,走在最前面的,都会给大炮打中(古代的大炮像象个球一样滚过来的)成为灰烬。而后来的士兵,就踏着炮灰走到胜利,所以成为别人利益的牺牲品的人就叫炮灰.。”-------- 百度上关于炮灰的解释

  在本篇文章中介绍的“炮灰模型”中,前M个男生就成了炮灰的角色,无论其有多么优秀,都会被拒绝。

  朋友,如果你追求一个女生而遭到拒绝,看完这篇文章后你会突然发现,也许这不是你的的错,也许你真的很优秀,只是很不幸,你成了“炮灰”。

  这几天在校内上看到很多朋友都因为拒绝或失恋而苦恼。希望上面这些看似复杂的推导和模型对你能有所启发。不要因为一次的拒绝而伤心、失落,振作起来,你的Miss Right is waiting for you somewhere!

  附:胡波同学的补充和推导

  为向作者致敬,将这个策略的最优性简证如下(限于篇幅,不借助复杂的数学公式了):

  1.作为“策略”,可以认为应该类似于算法,对于确定的输入有确定的输出。因此对第M号追求者是否同意仅取决于之前M-1个人与该人的状况比较,以及M的大小;进一步地,显然与前M-1个人的好坏顺序无关(因为前M-1个人的顺序与第M个人及以后无关)。

  2.如果仅考虑选中N号,那么答应某个人的必要条件是此人比之前的都好(否则一定不是No.N)

  3.综1、2,所有可能的策略都有相同形式:对于第K1,K2,...,Kt号人,如果比以前的都好,OK;如果不符合条件,“还是做朋友吧”

  4.进一步,如果Km + 1<K(m+1),将Km替换为Km + 1。简单计算可以发现(其实是我不想写了)在这一步答应且选对的概率不变(始终是1/n*前面没有答应的概率),但这一步答应的概率减小,后面答应且选对的概率相应增大(如果替换的是Kt,概率不变,但可以接着换K(t-1)使概率增大)。由此可以得出K1到Kt应该是连续整数且Kt=n

  5.(从楼主的文章继续)

  再由作者的理论小推论一下:

  设女性最为灿烂的青春为18-28岁,在这段时间中将会遇到一生中几乎全部的追求者(之前之后的忽略不计),且追求者均匀分布(

  ),则女性从18+10/e=21.7即22岁左右开始接受追求……这告诉我们,想谈恋爱找大四的……

  看完之后,我又简单想了一下,在文章中我只考虑了N个男生表白的先后顺序是完全随机的,并没有考虑相邻两次之间的时间隔。如果把时间因素也考虑进去的话,在一个相对较短的时间中,可以近似的假设为齐次泊松过程,这样不仅可以得出女生应该选择上面的第M个男生的结论,而且找到男生表白的最佳时间在t=T/e时刻。 例如如果取时间段为大学四年的话,则T/e=1.4715。 也就是说,在大学四年里,男生表白的最佳时刻在第三个学期的期末或寒假(大二的ddmm们现在 要把握机会哟 )

  如果这个时间段较长的话,那么男生追求可近似假设为了一个非齐次泊松过程,或者分段齐次泊松过程,具体建模中对各段参数lamma的估计就比较困难了,而且每个人以后的经历都会不同,不太可能找到一个统一的参数集,我就不再进一步考虑了,欢迎大家继续提出改进意见~~

  谨以此篇文章献给所有为爱而战的猛士们!最后祝大家快乐!

转载于:https://www.cnblogs.com/nucdy/p/6297645.html

炮灰模型:对女生选择追求者的数学模型的建立-转相关推荐

  1. 由炮灰模型到“微软钻石题”

    很好玩的一个算法 微软钻石题 引言 在ADSP课上,作为课间小插曲,老师提出了一个微软的钻石面试题,题目的描述是如下: 一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一.你乘坐电梯从一楼到十楼,每 ...

  2. mysql求女生人数_在读女硕士110多万!为什么越来越多的女生选择考研?

    近几年,由于就业压力增大.企业招聘门槛变高.个人职业规划以及对于未来生活的期望值增高,越来越多的人选择考研来增加自身竞争力,从而获得更高的就业平台,"考研热"已成为不争的事实. 根 ...

  3. 西瓜书~至臻笔记(二)——模型评估与选择(可直接享用)

    文章目录 第二章 模型评估与选择 2.1 经验误差与过拟合 2.2 评估方法 2.2.1 留出法 分层采样 数据集中样本的顺序 数据集的大小比例 2.2.2 交叉验证法 数据集的样本顺序 留一法 2. ...

  4. 西瓜书第二章 模型评估与选择

    第2章 模型评估与选择 2.1 经验误差与过拟合 学习器在训练集上的误差称为"训练误差"或"经验误差",在新样本上的误差称为"泛化误差":过 ...

  5. 女生读计算机专业好,女生选择计算机专业就读好吗?

    既要考虑到毕业生的就业率,还可以进行自主创业,因为自己对于这样的专业比较感兴趣,用人单位对毕业生选择余地增加,不仅要具有一定的专业素养和综合素质,. 导致对应聘者的要求将越来越高,毕竟对于同学来说,社 ...

  6. 《机器学习》周志华-CH2 模型评估与选择

    写在前面 CH1讲述了机器学习领域的基本概念,包括算法.模型.数据集等重要的专有名词.在算法的帮助下,能从数据集中提取了模型:对于同一数据集而言,给定不同的算法,会提取不同的模型,甚至给定同一算法的不 ...

  7. 机器学习笔记(二)模型评估与选择

    2.模型评估与选择 2.1经验误差和过拟合 不同学习算法及其不同参数产生的不同模型,涉及到模型选择的问题,关系到两个指标性,就是经验误差和过拟合. 1)经验误差 错误率(errorrate):分类错误 ...

  8. 《机器学习》 —— 第二章:模型评估与选择 学习笔记

    2.1 经验误差与过拟合 把分类错误的样本数占样本总数的比例称为"错误率"(error rate),即如果在m个样本中有a个样本分类错误,则错误率E=a/m:相应的,1-a/m称为 ...

  9. 西瓜书学习记录-模型评估与选择(第二章)

    西瓜书学习记录-模型评估与选择 第二章啦 整个过程可以描述为在训练集上去训练,在验证集上去调参,调完参之后再到训练集上去训练,直到结果满意,最后到测试集上去测试. 例子(反例): 上图选择蓝色的线,坏 ...

  10. 机器学习中的不平衡分类方法(part2)--模型评估与选择

    学习笔记,仅供参考,有错必纠 参考自:<机器学习中的不平衡分类方法>-- 康琦,吴启迪 文章目录 模型评估与选择 训练误差与测试误差 过拟合与欠拟合 模型选择 评估方法 模型评估与选择 训 ...

最新文章

  1. 保存一下dedecms数据库表和字段说明,方便日后查询
  2. 在一个JSP页面中包含另一个JSP页面的三种方式
  3. HTTP协议那些不得不说的事
  4. 四川2020年三月计算机等级考试报名时间,四川2020年3月计算机等级考试报名时间...
  5. 家庭记账软件 —— Java
  6. 操作系统(一)计算机系统概述
  7. 判断一个无符号整数是不是2的n次幂的幂
  8. ajax jsp模糊查询源码,Ajax动态执行模糊查询功能
  9. 互联网把农业推向“科技仙境”
  10. 这操作厉害:怎么样发布你的 Python模块给别人 “pip install”
  11. UVA - 101 The Blocks Problem
  12. vue : 无法加载文件 D:\Program Files\nodejs\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsof t.com/fwlin
  13. matlab 发音,MATLAB,MATLAB language,音标,读音,翻译,英文例句,英语词典
  14. 微软产品界面配色方案分析
  15. JGIT使用的常见问题
  16. 事后诸葛亮项目总结会议
  17. java大转盘抽奖概率算法_幸运大转盘抽奖 抽奖算法 程序实现逻辑
  18. 【Android -- 架构】MVP 模式
  19. html5动态连线,canvas简单连线动画的实现代码
  20. Post接口测试示例

热门文章

  1. 用python爬虫抓站的一些技巧
  2. python代码转java工具_Python代码转为java代码?
  3. Crystal Ball 图标进入EXCEL后却没加载 Crystal Ball
  4. 安卓ViewFlipper跑马灯效果
  5. mysql 系统序列号_mysql 序列号
  6. STL源码剖析 阅读(一)
  7. C语言 数据结构 结构体 LinkList
  8. Verilog初级教程(13)Verilog中的块语句
  9. 免费c语言入门自学书籍pdf下载,c语言从入门到精通pdf
  10. 应届java开发简历,一文全懂