决策模型(一):不确定型决策法
- 原文链接(转载请注明出处):决策模型(一):不确定型决策法
前言
所谓的不确定型的决策是指决策者对环境情况一无所知。这时决策者是根据自己的主观倾向进行决策,由决策者的主观态度的不同基本可分为四种准则:悲观主义决策准则、乐观主义决策准则、等可能性准则、最小机会损失决策准则。下面将以一个例子来说明这几种决策准则。
设某工厂是按批生产某产品并按批销售,每件产品的成本为30元,批发价为每件35元,若每月生产的产品当月销售不完,则每件损失1元。工厂每投产一批是10件,最大月生产能力是40件,决策者可选者的方案可以是 0 件、10 件、20 件、30 件、40 件。假设决者对其产品的需求情况一无所知。问该决策者该如何决策?
要想解决上诉问题,必须先知道决策矩阵。从问题中我们知道决策者可选的决策方案有五种,这是他们的策略集合,记做 {Si},i = 1,2,···,5。经过我们分析,可断定将发生五种销售情况:销售 0 件、10 件、20 件、30 件、40 件,但是不知道他们发生的概率。这就是事件集合。记做{Ej>},j=1,2,···,5。而对于每个 ”策略—事件“ 对都可以计算出相应的收益值或损失值。例如单选择月产量为 20 件时,销售为 10 件。这时收益值为:
10 x (35 - 30) - 1 x (20 - 10) = 40 元
因此可以将每一个 ”策略—事件“ 对对应的收益值或损失值求出,记做 aij,将这些数据汇总在一个矩阵中,如下所示:
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 |
---|---|---|---|---|---|
S1 = 0 | 0 | 0 | 0 | 0 | 0 |
S2 = 10 | -10 | 50 | 50 | 50 | 50 |
S3 = 20 | -20 | 40 | 100 | 100 | 100 |
S4 = 30 | -30 | 30 | 90 | 150 | 150 |
S5 = 40 | -40 | 20 | 80 | 140 | 200 |
这就是决策矩阵,根据决策矩阵中元素所示的含义不同,可称为收益矩阵,损失矩阵,风险矩阵,后悔矩阵等。
悲观主义(max min)决策准则
定义
悲观主义决策又被称为保守主义决策准则,他分析各种最坏的可能结果,然后从中选择最好的,以它对应的策略为决策策略,用符合表示为 max min 决策准则。
计算步骤
在收益矩阵中先从各策略所对应的结果中选出最小值,将他们至于表的最右列,然后从此列中选出最大值,以他对应的策略为决策者应选的决策策略。
计算公式
S*k\(\rightarrow\) max min (aij )
计算结果
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 | min |
---|---|---|---|---|---|---|
S1 = 0 | 0 | 0 | 0 | 0 | 0 | 0 \(\longleftarrow\) max |
S2 = 10 | -10 | 50 | 50 | 50 | 50 | - 10 |
S3 = 20 | -20 | 40 | 100 | 100 | 100 | - 20 |
S4 = 30 | -30 | 30 | 90 | 150 | 150 | - 30 |
S5 = 40 | -40 | 20 | 80 | 140 | 200 | - 40 |
根据 max min 决策准则有
max (0 , - 10 , - 20, - 30 , - 40) = 0
对应的决策策略为 S1,为决策者选择的策略。在本例中为 “什么也不生产”,这个结论似乎很荒谬,但是在实际生产中表示先看一看,以后再做决定。
计算代码
/*** 悲观主义决策* @matrix 决策矩阵* @row 决策矩阵行数* @col 决策矩阵列数*/
public static void maxMin(double[][] matrix, int row, int col){double[] maxMar = new double[row];for (int i = 0; i < row; i++) {double min = matrix[i][0]; //让第一个最小for (int j = 1; j < col; j++) {if(matrix[i][j] < min){min = matrix[i][j];}}maxMar[i] = min;}System.out.println(Arrays.toString(maxMar));double max = maxMar[0];for (int i = 0; i < row; i++) {if(maxMar[i] > max){max = maxMar[i];}}System.out.println("悲观主义决策结果:"+max);
}
乐观主义(max max)决策准则
定义
持有乐观主义决策准则的决策者对待风险的态度与悲观主义者不同,他不会放过任何一个获得最好结果的机会。来争取好中之好的乐观态度来选择他的决策策略。
计算步骤
决策者在分析收益矩阵各”策略—事件“对的结果中选出最大者,记在表的最右列。再从该列数值中选出最大者,以它对应的策略为决策策略。
计算公式
S*k\(\rightarrow\) max max (aij )
计算结果
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 | min |
---|---|---|---|---|---|---|
S1 = 0 | 0 | 0 | 0 | 0 | 0 | 0 |
S2 = 10 | -10 | 50 | 50 | 50 | 50 | 50 |
S3 = 20 | -20 | 40 | 100 | 100 | 100 | 100 |
S4 = 30 | -30 | 30 | 90 | 150 | 150 | 150 |
S5 = 40 | -40 | 20 | 80 | 140 | 200 | 200 \(\longleftarrow\) max |
根据 max max 决策准则有
max (0 , 50 , 100, 150 , 200) = 200
对应的决策策略为 S5,为决策者选择的策略。也就是选择每月生产 40 件。
计算代码
/*** 乐观主义决策* @matrix 决策矩阵* @row 决策矩阵行数* @col 决策矩阵列数*/
public static void maxMax(double[][] matrix, int row, int col){double[] maxMar = new double[row];for (int i = 0; i < row; i++) {double max = matrix[i][0]; //让第一个最大for (int j = 1; j < 5; j++) {if(matrix[i][j] > max){max = matrix[i][j];}}maxMar[i] = max;}System.out.println(Arrays.toString(maxMar));double max = maxMar[0];for (int i = 0; i < row; i++) {if(maxMar[i] > max){max = maxMar[i];}}System.out.println("乐观主义决策结果:"+max);
}
等可能性(Laplace)准则
定义
等可能性(Laplace)准则是19世纪数学家 Laplace 提出的。该准则认为所以事件发生的概率是相等的。也就是每一事件发生的概率都是 1 / 事件数。
计算步骤
决策者先计算各策略的收益期望值,然后在所有这些期望值中选择最大者。以它对应的策略为决策策略。
计算公式
S*k\(\rightarrow\) max { E ( Si ) }
计算结果
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 | E (Si) = \(\sum_{j} pa_{ij}\) |
---|---|---|---|---|---|---|
S1 = 0 | 0 | 0 | 0 | 0 | 0 | 0 |
S2 = 10 | -10 | 50 | 50 | 50 | 50 | 38 |
S3 = 20 | -20 | 40 | 100 | 100 | 100 | 64 |
S4 = 30 | -30 | 30 | 90 | 150 | 150 | 78 |
S5 = 40 | -40 | 20 | 80 | 140 | 200 | 80 \(\longleftarrow\) max |
在本例中 P = \(\frac{1}{5}\),期望值
max { E ( Si ) } = max {0, 38, 64, 78, 80 } = 80
对应的策略 S5 为决策策略
计算代码
/*** 等概率准则决策* @matrix 决策矩阵* @row 决策矩阵行数* @col 决策矩阵列数*/
public static void laplace(double[][] matrix, int row, int col){double[] maxMar = new double[row];for (int i = 0; i < row; i++) {double sum = 0;for (int j = 0; j < col; j++) {sum += matrix[i][j];}maxMar[i] = sum / col;}System.out.println(Arrays.toString(maxMar));double max = maxMar[0];for (int i = 0; i < row; i++) {if(maxMar[i] > max){max = maxMar[i];}}System.out.println("等概率准则决策结果:"+max);
}
最小机会损失决策准则
定义
最小机会损失决策策略又被称为最小遗憾值决策准则或 Savage 决策准则。首先要将收益矩阵中的各元素变换为每一 “策略—事件” 对的机会损失值(遗憾值,后悔值)。其含义是:当某一事件发生后,由于决策者没有选用收益最大的策略,而形成的损失值。
计算步骤
首先计算出当发生 k 事件后,各策略的收益最大值
aik = max ( aik )
这时各策略的机会损失值为
\(a'_{ik}\) = { max ( aik ) - aik }
从所有最大机会损失值中选取最小者,它对应的策略为决策策略。
计算公式
S*k\(\rightarrow\) min max \(a'_{ik}\)
计算结果(该矩阵为损失矩阵)
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 | max |
---|---|---|---|---|---|---|
S1 = 0 | 0 | 50 | 100 | 150 | 200 | 200 |
S2 = 10 | 10 | 0 | 50 | 100 | 150 | 150 |
S3 = 20 | 20 | 10 | 0 | 50 | 100 | 100 |
S4 = 30 | 30 | 20 | 10 | 0 | 50 | 50 |
S5 = 40 | 40 | 30 | 20 | 10 | 0 | 40 \(\longleftarrow\) min |
决策结果为
min {200, 150, 100, 50, 40 } = 40
对应的策略 S5 为决策策略。在分析产品废品率时,应用本决策准则就比较方便。
计算代码
/*** 最小机会损失决策* @matrix 决策矩阵* @row 决策矩阵行数* @col 决策矩阵列数*/
public static void savage(double[][] matrix, int row, int col){//损失矩阵double[][] loss = new double[row][col];for (int j = 0; j < col; j++) {double max = matrix[0][j]; //先定每一列的第一个最大for (int i = 1; i < row; i++) {if(matrix[i][j] > max){max = matrix[i][j];}}//损失矩阵中对应位置的值 = 决策矩阵中列最大值 - 决策矩阵中对应位置值for (int i = 0; i < row; i++) {loss[i][j] = max - matrix[i][j];}}//此时损失矩阵已经求出double[] maxMar = new double[row];for (int i = 0; i < row; i++) {double max = loss[i][0]; //让第一个最大for (int j = 1; j < col; j++) {if(loss[i][j] > max){max = loss[i][j];}}maxMar[i] = max;}System.out.println(Arrays.toString(maxMar));double min = maxMar[0];for (int i = 0; i < row; i++) {if(maxMar[i] < min){min = maxMar[i];}}System.out.println("最小机会损失决策结果:"+min);
}
折中主义准则
定义
当用 min max 决策准则或 max max 决策准则来处理问题时,有的决策者认为这样它极端了。于是提出把这两种决策准则给予综合,令 a 为乐观系数,且 0 < a < 1。
计算步骤
设 \(a^i_{max}\),\(a^i_{min}\)分别表示第 i策略可能得到最大收益值与最小收益值。根据下列关系式
\(H_i\)= \(a*a^i_{max}\) + \((1-a)a*a^i_{min}\)
将计算出的 \(H_i\) 记在矩阵表右侧,然后选择其中的最大者,对应的策略即为决策策略
计算公式
S*k\(\rightarrow\) max { Hi }
计算结果(设 a = 1/3)
(策略\事件) | E1 = 0 | E2 = 10 | E3 = 20 | E4 = 30 | E5 = 40 | \(H_i\) |
---|---|---|---|---|---|---|
S1 = 0 | 0 | 0 | 0 | 0 | 0 | 0 |
S2 = 10 | -10 | 50 | 50 | 50 | 50 | 10 |
S3 = 20 | -20 | 40 | 100 | 100 | 100 | 20 |
S4 = 30 | -30 | 30 | 90 | 150 | 150 | 30 |
S5 = 40 | -40 | 20 | 80 | 140 | 200 | 40 \(\longleftarrow\) max |
决策结果为
min {0, 10, 20, 30, 40 } = 40
对应的策略 S5 为决策策略。
计算代码
/*** 折中主义决策* @matrix 决策矩阵* @row 决策矩阵行数* @col 决策矩阵列数* @a 乐观系数*/
public static void eclecticism(double[][] matrix, int row, int col,double a){double[] H = new double[row];for (int i = 0; i < row; i++) {double max = matrix[i][0]; //让第一个最大double min = matrix[i][0]; //让第一个最小for (int j = 1; j < col; j++) {if(matrix[i][j] > max){max = matrix[i][j];}if(matrix[i][j] < min){min = matrix[i][j];}}//对运算结果四舍五入,保留两位小数H[i] = new BigDecimal(a*max + (1-a) * min).setScale(2, RoundingMode.UP).doubleValue();}System.out.println(Arrays.toString(H));double max = H[0];for (int i = 0; i < row; i++) {if(H[i] > max){max = H[i];}}System.out.println("折中主义准则决策结果:"+max);
}
总结
在不确定型的决策中是因人、因地、因时选择决策准则的,但是在实际中当决策者面临不确定型决策问题时,首先是获取有关各事件发生的信息。使不确定型决策问题转化为风险决策。下篇将讨论风险决策。
参考
- 运筹学(第4版)本科版
转载于:https://www.cnblogs.com/dmego/p/9981061.html
决策模型(一):不确定型决策法相关推荐
- 怎样应对“需求不确定型项目”?
怎样应对"需求不确定型项目"? 问题描述 1.需求不确定,老板直接和客户谈需求,项目经理不能或不方便参与,打下手,这类项目怎样办? 2.要深层次了解客户的想法,各种利益,地盘等,这 ...
- 图灵之非确定型图灵机
非确定型图灵机 如果不加特殊说明,通常所说的图灵机都是确定型图灵机.非确定型图灵机和确定型图灵机的不同之处在于,在计算的每一时刻,根据当前状态和读写头所读的符号,机器存在多种状态转移方案,机器将任意地 ...
- 【人工智能】确定型推理
确定性推理(Deterministic Reasoning)目录 一.推理基本概念 二.推理逻辑基础 1. 命题逻辑(Propositional Logic) 2. 谓词逻辑(Predicate Lo ...
- 决策模型(二):风险决策法
原文链接(转载请注明出处):决策模型(二):风险决策法 前言 风险决策法是指决策者对客观情况不了解,但是对将发生各事件的概率是已知的.决策者往往通过调查,根据过去的经验或主观估计等途径获得这些概率.在 ...
- 【渝粤教育】国家开放大学2019年春季 0408-22T管理学基础 参考试题
科目编号:0408 管理学基础 试题 2019年7月 单项选择:(每小题3分,共计30分) 1.管理的首要职能是( ). A.计划 B.控制 C.协调 D.指挥 2.人们常说"管理是一门艺术 ...
- 【渝粤教育】国家开放大学2018年春季 0034-22T现代管理原理 参考试题
科目编号:0034 现代管理原理 试题 2018年7月 单项选择:(每小题3分,共计30分) 1.下列各选项中,( )属于管理的对象. A.组织资源和组织目标 B.组织资源和组织活动 C.组织目标和组 ...
- 期末复习系列之企业管理
企业管理 复习!!!冲冲冲!!! 企业管理期末复习整理 一. 名词解释 1 股份有限公司(6) 2 企业管理(40) 3 市场细分(94) 4 财务分析(213) 5 人力资源管理(148) 6 产品 ...
- 企业管理考试复习精炼版
企业管理 复习 企业管理期末复习整理(精炼版) 一. 名词解释 1 股份有限公司(6) 2 企业管理(40) 3 市场细分(94) 4 财务分析(213) 5 人力资源管理(148) 6 产品质量(2 ...
- 存贮论(一):基本概念、无约束的确定型存贮模型
存储论系列博文: 存贮论(一):基本概念.无约束的确定型存贮模型 存储论(二):有约束的确定型存贮模型.单周期随机库存模型 目录 1 存贮模型中的基本概念 1.存贮问题的基本要素 2.存贮模型的基本费 ...
最新文章
- 在c 语言中stdio,C语言中,什么时候用到stdio.h之外的解释文件
- 微信小程序 - 实现左滑动删除功能
- python列表的索引算法_Python-确定列表是否对称的算法
- HNOI2008 玩具装箱
- PHP 一个比较完善的文件上传(转).
- call stack是什么错误_Go语言(golang)的错误(error)处理的推荐方案
- webpack打包流程_了不起的 Webpack 构建流程学习指南
- 20190901:(leetcode习题)缺失数字
- bio linux 创建_Linux设备驱动--块设备之概念和框架以及相关结构体
- 关于JavaScript实现图片预加载的改进
- mysql必知必会样例表_《SQL必知必会》笔记1-样例表说明及建表语句
- 我们的小太阳钟汉良,不老男神,希望你继续帅下去
- [生存志] 第122节 金匮真言脉要精微
- matlab示波器图形导出,(最新整理)Matlab-simulink示波器图形保存
- BI神器Power Query(2)-- PQ数据源
- ITK (1)窗宽窗位的意义与设置
- 湖北师范大学----操作系统实训(c语言)
- 2022年危险化学品经营单位主要负责人及危险化学品经营单位主要负责人模拟考试
- IPC-共享内存 (七猫的藏经阁 )
- C++中函数重载是如何实现