渗透模型 Percolation Models(一个物理模型的广泛应用)
转自:http://mooc.guokr.com/note/15357/
http://mooc.guokr.com/user/0298406005/note/
模型思想:
有水流下来,是否会渗入地面?


像棋盘一样的格子,可以空白也可以被填满
你只可以从一个被填充的方格跳到相邻的另一个被填充的方格
像这样就不会渗透,因为所有黑色的路都被堵死了,水不会从上面流到底部


假设每个格子被填充的概率是相等的,设为P
P=1/2,有一半的格子被填满
P=1/3,有1/3的格子被填满,剩下2/3,没有
——问题:这个模型渗透吗?
这个模型曲线是这样的


只要P低于59.2%,就不会渗透
超过这个点之后,系统就会引爆
是什么创造出了这个点?
被填满的格子如果从20%增加到21%,或者从21%增加到22%,都不会有什么变化,但是如果从58%-59%,就会有一个突然的变化
这个模型可以有很多应用领域
1、森林火灾模型,把树的密度设置在57%,开始点火,只差一点儿就成功了


然后把它调到61%,让它高于59%的阈值,于是一下就成功了


假设我们有一片森林,我们希望它的产量越多越好,但又有发生火灾的可能性
那么收成曲线会是怎样的?


在59%以前,我们会得到一个漂亮的线性曲线,森林覆盖越多,得到的木材也越多
但一旦超过临界值,我们的收成就会急剧跌落
2、银行渗透模型
假设有5个银行,中间的银行1倒闭了,它有很多不良贷款,假设银行1向银行2,3,4,5借过钱,当银行1倒闭时,它不能偿还这些钱,其他银行可能会跟着倒闭,这个失败就会蔓延开来
问题:如果银行倒闭,会蔓延多远?也存在一个临界点吗?


3、再比如国家失败的模型
如果一个国家衰败了,其他的国家会被渗透到吗?


4、信息渗透
假设有一个人际网络,如果我听到了一些传闻,我会去告诉我的朋友们,那么有多大的可能性事情会传播开来?我们可以用同样的模型
你可能会以为信息的价值越大,被传播到的人数就越多,这是一个线性模型,但如果你真的建立了一个人际网络,很有可能会出现一个引爆点,即使不那么重要的信息,一旦超过阈值,就会扩散至整个人群


引爆点在我们的生活中很常见
例如一些数学问题、工程问题等,人们往往致力于它们很多年,但是一直没有突破,但突然之间有一大部分人几乎在同一时间解决了这个问题
为什么我们经常看到某个领域科学活动的突然爆发?也可以用渗透模型解释
——随着知识和信息的积累,我们会填充更多的格子
渗透模型 Percolation Models(一个物理模型的广泛应用)的更多相关文章
- YII开发技巧分享——模型(models)中rules自定义验证规则
YII的models中的rules部分是一些表单的验证规则,对于表单验证十分有用,在相应的视图(views)里面添加了表单,在表单被提交之前程序都会自动先来这里面的规则里验证,只有通过对其有效的限制规 ...
- Django笔记&教程 4-1 模型(Models)介绍
Django 自学笔记兼学习教程第4章第1节--模型(Models)介绍 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/topics/db/mo ...
- Django笔记&教程 4-2 模型(models)中的Field(字段)
Django 自学笔记兼学习教程第4章第2节--模型(models)中的Field(字段) 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/ref ...
- Django笔记&教程 4-3 模型(models)主键外键
Django 自学笔记兼学习教程第4章第3节--模型(models)主键外键 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/ref/models ...
- Django笔记&教程 6-3 使用模型(models)创建表单(form)
Django 自学笔记兼学习教程第6章第3节--使用模型(models)创建表单(form) 点击查看教程总目录 本文参考:Forms for models 1 - 初步介绍 很多时候,我们使用的表单 ...
- iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序 一.plist文件和项目结构图 说明:这是一个嵌套模型的示例 二.代码示例: YYcarsgroup.h文件代码: // // YYcar ...
- Go语言之高级篇beego框架之模型(Models)
一.模型(Models) 1.beego-orm的相关特性 支持 Go 的所有类型存储 -轻松上手,采用简单的 CRUD 风格 -自动 Join 关联表 跨数据库兼容查询 允许直接使用 SQL 查询/ ...
- 第二节:模型(Models)和管理后台(Admin site)
本节内容我们将配置数据库,创建第一个model并且快速了解Django自动生成的管理后台(admin site) 目录 数据库配置 创建模型 激活模型 使用Django API 介绍Django管理后 ...
- 应用Mongoose开发MongoDB(2)模型(models)
数据模型及基础操作模板 为了使工程结构清晰,将数据模型(Schema, Model)的建立与增删查改的基础操作模板写在一起,命名为数据库设计中的Collection(对应于关系型数据库中的表定义)名, ...
随机推荐
- 51NOD 1833 环
考虑一下简单环覆盖这个图的意义,其实就是找出原序列的所有排列,满足所有<i,a[i]>都是原图中的一条有向边. 因为一个置换就是由很多简单环构成的. 于是我们可以设 f[i][S] 为考虑 ...
- linux下添加定时任务。
这周要做一个定时增量更新Elasticsearch索引的功能,以前没有做过定时更新,所以请教了下同事,使用crontab添加linux下的定时任务. 一.linux下定时执行任务的方法 在linux中 ...
- Extjs grid 单元格事件
celldblclick: function (view, td, cellIndex, record, tr, rowIndex, e, eOpts) { //extjs 4.2下,有时出现,多次不 ...
- IntelliJ IDEA中Spring Boot项目使用spring-boot-devtools无法实现热部署/热更新的问题解决
这个设置真的和Eclipse有很大区别,Eclipse中只要运行之后就可实现修改文件自动重启.但IDEA不太一样,需要做如下配置: 前提: 1.添加spring-boot-devtools到POM. ...
- 谈oracle数据比对(DBMS_COMPARISON)
今天是2014-08-19,我今天收到csdn给我发的申请博客专家的邀请,自己感觉实在羞愧啊. 自从换了工作也一直没有精力在写点东西了.今天我一个同事,在群里贴出了一个数据比对的包(DBMS_COMP ...
- 使用cacheBuilder时捕获内部指定异常
由于cacheBuilder是另起线程获取,对call方法中的抛出的异常进行了封装.所以我们在最外层捕获时是无法直接指定异常类型捕获的, 获取异常的原因判断实例类型 public static voi ...
- Git以及github的使用方法(一)安装并设置git用户
最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Window ...
- 有关C/C++指针的经典面试题(转)
参考一: 有关C/C++指针的经典面试题 0.预备知识,最基础的指针 其实最基础的指针也就应该如下面代码: int a; int* p=&a; 也就是说,声明了一个int变量a,然后声明一个i ...
- UIView 的 autoresizingMask 属性 详解。
转载自:liubo0_0的专栏 链接网址:http://blog.csdn.net/liubo0_0/article/details/7085935 在 UIView 中有一个autoresizin ...
- ZipOutputStream 用法 小计
ZipOutputStream s = new ZipOutputStream(File.Create(ZipedFile)); 构造函数之后 文件就已经创建出来了 只是 0kb s.Write(bu ...