本书是本运筹学入门书籍,所以难度较低,初中水平就能看懂。总体来说,有收获,但不多。
运筹即综合各种情况和限制,得到一个最优解。
我熟悉的很多故事都涉及到运筹的知识,如建造皇宫 通过挖水道,解决运输和土的问题,最后通过填埋水道来搞定建筑废材的问题,解决几大痛点;小时候很受震惊的边听广播边扫地之类的让时间最短;鬼谷子两个弟子赛吃包子,看谁先吃到最后一个赢;孙膑赛马。其实都或多或少有运筹的意味在里面,虽然故事的呈现方式有很多种,包装不同,但内核一样。
本书内容包括 线性规划,整数规划,非线性规划(动态规划,多目标规划),图论,网络计划,博弈(里面博弈讲了3章,但我没觉得有太大区别,都是画一个图了事,就是动态博弈复杂点)
线性规划:几个因素符合一元一次函数,y=kx+b 的这种形式,根据限制条件,列几个不等式,然后画图看符合区域的点有哪些,找一个值最大的点即为最优解。(画出的图形是一条直线,所以叫线性)kx+b的来源是 y2-y1/x2-x1 得到针对每一个x变化 y会是什么值得关联关系即斜率,加上一个最初值。
线性规划的特例即整数规划,可以先忽略整数这个限制,直接先求一个最优解,如果是小数,那么在它的周围左右取整数值即为最优解。
整数规划里面有一类最特殊的 0-1,0代表不选,1代表选,如此可以构造出特别有意思的等式
如:只选a b 中某一个那么 x1+x2=1
只选k件,那么 x1+x2+。。。+xn = k,至多选 k 件,那么 <= k
第i件是第j件的充要条件,那么 xi=xj
做j前必须要做i,那么 xj<=xi
真正的解法可以不那么死板,直接进行比值对照(注意比值只是相对,不是绝对值,不要直接拿来当作实际值来用,会出现结果翻倍的情况),尽可能多的使用性价比高的选项,同时注意限制条件,还有留心那种有剩余资源的情况,此时可以再让出一些资源,凑足某些次级选项,两者整合会效果更佳。其中还说到比较优势,甲生产a 2 b 6 一天,乙 a 1 b 2,看起来甲完爆乙,其实甲生产一个a 相当于 3个b,而乙生产一个 a 才相当于 2个b,所以甲应该只生产b,乙只生产a,实现共赢(另一个角度理解,甲a是乙a的2倍,而甲b相比乙b是3倍,当然要放大优势)
非线性规划如动态规划和多目标规划。
动态规划就是把问题一层一层细分,n多个分支,然后找到最末端的最优解,再一层层叠加回去。最佳例子就是金字塔形状的数,要求一条路径使得这条路径上的数的加和最大,看起来很复杂,其实只要从最后一层思考,先考虑最后两层的加和,取较大值,抛弃较小值,如此一层层往上加,就能得到最终结果。(感觉很适合程序去实现,毕竟条数太多)
多目标规划可以化为一个目标规划,方法有很多种,比如给不同的目标赋予不同的权重,从而突出最重要的目标;先满足最重要的选项,然后在可选区域再依次满足次级要求;只满足最有限选项,其余选项当作限制条件;如果要和某个值最靠近,可以使用(n-值)^2加权重的方式,让这种方程的结果最小。
权重就是事情所占的比例。
图论即寻找最小路径,那么为了让复杂的问题简单化,可以先从最靠近的点的最短路径找起,只剩下一条,然后依次往外扩,不断的剪枝,最后再统一来看,选项就少了很多,不再那么眼花缭乱;另一种方法就是尽可能把较小值的路径包含进来,那么整体就会趋近最小值。
网络计划引入了一个新技术叫网络图来代替之前的甘特图(看完本书,我才知道原来甘特图是用来估算项目的整体时长的,核心就在于把独立的前后事情拼在一起,然后把其他可以不按顺序做的事情在关键的耗时较长的事情期间完成,这样就可以找出最短时间)。可能真正复杂项目可以用得上,用来细化很多步骤,但单纯解题的话,直接画线,不可以合并的事情就按顺序前后连在一起,其余的就在线段的下面并列画,如此就可以得到最短时长。草图就可以解题。
博弈的话,就是把双方选择用图表示出来,然后看针对对方的各种选择,我方用什么应对能获取最大利益,从而找到一个纳什均衡。对于静态博弈来说,以一变应万变,往往双方不是最佳收益,但是较佳收益。但是对于动态博弈来说,就要根据对方的想法来改变自己的选择,对方发现你的想法后又会改变自己的选择,比如海盗分金问题,这个就挺费脑。(题目为:5个海盗得到100金,然后通过抽签排出顺序,由第一号开始说出自己的分金安排,如果半数以上同意,那么就通过,不然就扔进海里喂鲨鱼,下一个开始说自己的安排。本题的题设是5个海盗都是绝对理性的,智商爆表型)
真正的博弈更复杂,同时也很受信息的影响,而且有些博弈还不是一次,可以进行多次博弈,结果就不一样了,不可能次次都那么自私,容易得到双赢的效果。为了让博弈符合预期,可以通过管制来改变双方的收益值,就可以改变均衡点,比如针对工厂排放污水,双方治不治理环境污染的问题,政府可以通过赏罚干预。