数学建模灵敏度分析

文章介绍了模型灵敏度分析的概念,通过一个牛的销售优化问题说明如何进行分析。它强调了对不确定参数如市场价格下降率的敏感性研究,并指出灵敏度分析适用于神经网络模型、遗传算法、优化模型等。文章还提供了基本的分析流程和注意事项,包括选择关键参数、绘图描述和实际运算的重要性。
摘要由CSDN通过智能技术生成

数学建模——模型灵敏度分析

作者:Peter韓
资料参考:数学建模老哥

1 什么叫模型灵敏度分析

灵敏度分析,是研究与分析一个系统(或模型)的状态或输出变化对系统参数或周围条件变化的敏感程度的方法。

  • 改变模型的某个参数,引起这个模型输出的变化的程度

eg. 一头牛重200斤,每天增重5斤,饲料每天花费45元。牛的市场价是每斤65元,但目前行情不好,每天下降1元,求出这头牛的最佳销售时间

这是一个简单的单变量优化问题。求这头牛的最佳销售时间,就是求卖出价格最高的时间,为了求出这个时间,我们假设:销售时间t,牛的重量w,牛的价格p,饲料花费C,卖出牛的收益R,净收益P

于是有,P=R-C,其中R=P*w,C=45t,即得到的净收益模型如下:
P=(65-t)(200+5t)-45t …(1)
容易得出,当t=8时,P取最大值13320元。

”每天下降多少块钱“是由市场决定的不易非常好地预估。在此题中该量变化的可能性最大,应当着重分析。

  • 常数变量容易产生变化且不好预估的应当是灵敏度分析的重点

其实,大多数情况下,问题到这里就已画上句号。但是在现实生活中,稍微细心一点,我们会发现在上述模型的参数中,牛的重量、当前市场价格、每天饲料钱是很容易测量的,即确定性较大,但牛的生长率和市场价格的下降率两个参数不是那么好确定,例子中虽然规定了市场价格下降r=1元/天,但实际中,每天的r都是不一样的。

  • 灵敏度分析不必考虑所有,只关心最重要的几个因素即可

于是,我们会有一个疑惑——是不是对于所有的市场价格下降率,这个模型都适用?
为了消除疑虑,我们选取原下降率周围的几个数 r=0.8, 0.9, 1.0, 1.1, 1.2。根据上述公式(1),分别得出t=15, 11, 8, 5, 3。

  • 这里数据的变动越小,反映的是模型稳定程度更高,模型的效果更好。

灵敏度分析,就是将市场价格下降率【公式】作为位置参数,计算最佳卖出时间t和r的关系。这时候,将例子中的”每天下降1元“改为”每天下降r元“,净收益模型就变为:
P=(65-rt)(200+5t)-45t
P对t求导,令dP/dt=0,得:
t=(28-20r)/r …(2)
至此,我们已经得到了一种灵敏性关系——r-t关系,绘制r-t关系图(递减、下凸的曲线,其中r=1.4左右时,t_best值取0)
公式(2)和关系图的意义在于——作为牛贩子,我能确定一个r-t关系,确保我在不同r下,都能确定最佳卖牛时间。当0<r<1.4时,最佳卖牛时间由公式(2)给出;否则一旦r>1.4时,最佳卖牛时间t<0,也就是说,需要当天就把牛卖掉,这时候饲养牛已经没有任何经济价值了。

实际使用时,我们更多地将这种灵敏性关系表示成相对改变量百分比改变的形式。
例如,r的10%下降,导致了t的38%的增加。如果t的改变量为Δt,则t的相对改变量为Δt/t,百分比改变量为100%*Δt/t,则相对改变量的比值为Δt/t与Δr/r的比值,令Δr→0由导数定义得:

(Δt/t)/(Δr/r)→(dt/dr)*(r/t)

业内,称极限值(dt/dr)*(r/t)t对r的灵敏性,记作S(t,r)。

仍以上述例题为例,S(t,r)=(dt/dr)(r/t)=(-28/r^2)(r/t)=-28/rt,又已知当r=1时,t=8,故S(t,r)=-28(1*8)=-3.5

对于某些模型而言,本身并不能做出合适的函数(也不能画出对应的函数图像),这时可以考虑将区间内的数据取得很密,数据与数据之间的间隔很小,再借助拟合的相关知识用回归拟合(尽量使用非线性方程拟合,不推荐多项式拟合)的方法得出方程,进而采用上述的步骤求解。

2 常见的需要做灵敏度分析的模型

1 神经网络模型,隐层神经元数量的变化对结果的影响

2 遗传算法/粒子群算法:初始种群规模的大小

3 优化模型:往往需要对决策变量参数做灵敏度分析

4 预测模型:针对类似于出生率、死亡率、气温等数据做灵敏度分析(题目往往已给出相关数据)

5 评价类模型:对评价指标中表达为变量的指标进行考虑

3 灵敏度分析的基本流程

一般灵敏度分析主要有两种思路:

  • 直接改变参数值评估结果的变化(适合求最优值-比如上述老汉卖牛的例子)
  • 改变参数值,评估因变量随自变量的变化(适合分析数变动)

针对第一条:

A 首先寻找出待分析的模型参数,将其设置为变量s

B 将其代入到原始方程中,得到新的关系方程,并求导,得出变量x与s的关系

C 绘制x与s的方程,若斜率较小则灵敏度低,稳定性强

D 计算(dt/dr)*(r/t),即可得到最终结果

针对第二条:

A 首先寻找出待分析的模型参数,将其按照固定的间隔变动

B 评估自变量与因变量的变化情况

C 若变动幅度较小,则表示灵敏度差、稳定度高

4 灵敏度分析的注意事项

(1)灵敏度分析不需要对所有模型都做

(2)灵敏度分析针对的是常量但能产生变动的数据

(3)灵敏度分析最好进行绘图描述,更为直观

(4)灵敏度分析一般放在模型优缺点评价前面

(5)灵敏度分析无需占用页面过多,最多一页

(6)灵敏度分析要结合实际的演算,请勿语文建模

灵敏度分析是研究系统或模型状态或输出对系统参数或周围条件变化的敏感程度的方法。通过灵敏度分析,我们可以了解系统或模型中哪些参数对结果产生较大的影响。在最优化方法中,灵敏度分析经常用于研究原始数据不准确或发生变化时最优解的稳定性。同时,灵敏度分析也可以帮助我们决定哪些参数对系统或模型具有较大的影响力[2]。 稳定性分析则是指对系统或模型在输入条件变化时结果的稳定性进行评估。通过稳定性分析,我们可以了解系统或模型的输出结果在输入条件发生变化时是否保持稳定,或者是否容易受到小幅度的变化而产生剧烈的波动。稳定性分析是在评估系统或模型的可靠性和鲁棒性时非常重要的一项工具。 需要注意的是,灵敏度分析和稳定性分析是两个不同的概念。灵敏度分析主要关注系统或模型的输入参数对输出结果的影响程度,而稳定性分析则关注系统或模型在输入条件变化时的结果是否保持稳定。灵敏度分析可以帮助我们了解系统或模型的敏感度和脆弱性,而稳定性分析则可以帮助我们评估系统或模型的可靠性和鲁棒性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [数学建模评价类方法01——灵敏度分析](https://blog.csdn.net/weixin_51128278/article/details/117898155)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值