其实上面这个是Holt-Winters无季节趋势模型,
上面的S(t)对应下面的a(t)——截距(平滑值)
           b(t)仍然对应b(t)——趋势,T对应k。
           阿尔法对应阿尔法
           伽马对应贝塔
因为(t)-hat是阿尔法和伽马的函数,所以TSS是阿尔法和伽马的函数。
为使方便理解和操作,该我们使用excel求解的。
原始数据如下:
设计表格结果如下:
也就是我们设定了初始值,S1=143,b1=- 0.65
把H2和H3看做值会变化的单元格,而H4是我们要通过变化H2和H3的取值使其取得最小值的单元格。
在C3中输入:=$H$2*B3+(1- $H$2)*(C2+D2)
                          对应着公式(1)
在D3中输入:=$H$3*(C3-C2)+(1-$H$3)*D2
                          对应着公式(2)
然后自动填充C和D列其余的值。
在E4中输入:=C3+D3
                          对应着公式(3),那么相当于T全部取1,用上一期预测下预期。
在F4中输入:=(B4-E4)^2
                          对应TSS的公式
                          为什么要另t+T的初始值是3呢,因为T恒为1,则t=2,3,4...
                          那么t-1的初始值是1,否则(1)(2)(3)公式中角标会出现0
此时由于H2和H3中的值还没确定,所以上述计算结果有问题,不必惊慌。
 
 
下面我们使用excel的规划求解功能:
如果在数据一栏下面找不到规划求解,那么,文件——选项——加载项——excel加载项——转到——勾选规划求解——点击确定。
但是!如果你使用的是office64位的话,问题就来了:
无法运行“SOLVER.XLAM!GetSolverLabel”宏。可能是因为该宏在此工作簿中不... 
我花了一个早上翻遍了各个论坛和百度知道,都没找到答案,最后,去测试了下同学的office2013,发现他的可以,拷贝相应的文件无效,最后发现其使用的是32位的office,于是换了个32位的office2016,遂解决这个问题,恩,把宏的权限也打开吧。
点击规划求解,按照下图输入。
我们需要输入目标位置,即使得TSS的值最小的那个单元格。
输入可变单元格为H2和H3,使其值变化,最终取得TSS的最小值
点击添加,一个个添加约束条件。
最后点击求解。
如果你是第一次使用,那么很可能弹出
                   文件未找到Solver32.dll的错误。
dll应当是引导文件。
令人奇怪的是,我使用的安装版本,双击运行后,都是立刻安装,不给我选择的机会(所以悲催的在C盘),装完之后,还要运行BAT文件,将零售版转换VL,最终运行对应的KMS.cmd文件。
我的该引导文件在
C:\Program Files (x86)\Microsoft Office\root\Office16\Library\SOLVER
复制到C:\windows下即可解决上述问题。
最终得到结果:
最优平滑参数平滑参数α =0.38, γ =0.20, 此 时 误 差 平 和 为 5870.28
参考文献:
Excel在霍尔特指数平滑法参数优选中的应用_吴小明
配套的
 
 
 
 
 
 
 

附件列表

使用excel结合线性规划求解Holt-Winters参数的更多相关文章

  1. [转]利用excel进行线性规划求解

                           利用线性回归方法求解生产计划 方法一: 1.建立数学模型: 设变量:设生产拉盖式书桌x台,普通式书桌y台,可得最大利润 ‚确定目标函数及约束条件 目标函 ...

  2. Excel与Google Sheets中实现线性规划求解

    很久没更新过APS系列文章了,这段时间项目工作确实非常紧,所以只能抽点时间学习一下运筹学的入门知识,算是为以后的APS项目积累点基础.看了一些运筹学的书(都是科普级别的)发现原来我目前面对的很多排产. ...

  3. Excel中线性规划求解

    Excel中线性规划求解(如下图) 1. 设置目标输出单元格(蓝线线) 2. 设置线性规划模型目标函数中自变量(红线线) 3. 设置约束条件(黑色线) 4  如果目标函数中自变量要求是非负数,则勾选绿 ...

  4. LP线性规划求解 之 单纯形 算法

    LP线性规划求解 之 单纯形 算法 认识-单纯形 核心: 顶点旋转 随机找到一个初始的基本可行解 不断沿着可行域旋转(pivot) 重复2,直到结果不能改进为止 案例-过程 以上篇的case2的松弛型 ...

  5. 在实现从excel中读取数据作为接口参数遇到的问题

    这个算我自己第一次使用python语言实现 一个功能 一.首先我们先要代码实现如何从excel上读取数据python实现还是比较简单的 1.我使用的是xlrd模块,我们先要安装这个包,这样我们才可以使 ...

  6. 使用python scipy.optimize linprog和lingo线性规划求解最大值,最小值(运筹学学习笔记)

    1.线性规划模型: 2.使用python scipy.optimize linprog求解模型最优解: 在这里我们用到scipy中的linprog进行求解,linprog的用法见https://doc ...

  7. Excel导出中HttpServletResponse消息头参数设置

    response.setCharacterEncoding("UTF-8"); //编码格式为UTF-8 response.setContentType("applica ...

  8. excel VBA构造正则函数(双参数)

    Function zhengze(ze As String, Rng As Range)    Set regx = CreateObject("vbscript.regexp") ...

  9. excel VBA构造正则函数(单参数)

    Function zhengze(Rng As Range)    Set regx = CreateObject("vbscript.regexp")With regx  .Gl ...

随机推荐

  1. 复制粘贴出来的悲剧----spring实现文件下载和HttpStatus.CREATED

    今天真是被自己的懒惰和复制粘贴给坑惨了... 网上有这么一个spring下载文件的最佳实践: @RequestMapping("download") public Response ...

  2. Azure机器学习入门(一)

    我们开始深入学习Azure机器学习的基本原理并为您开启伟大的数据科学之门.Azure 机器学习的一个重要特征就是在构建预测分析方案时,它能够方便地将开发模式集成为可重复的工作流模式.这就使得Azure ...

  3. NOIP2013花匠

    描述 花匠栋栋种了一排花,每株花都有自己的高度.花儿越长越大,也越来越挤.栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比较别致. 具体而言, ...

  4. Time.deltaTime 的平均值在0.1-0.2左右

    Time.deltaTime 平均值在0.1-0.2左右 低的在0.03 高的在0.3

  5. JavaScript从数组中删除指定值元素的方法

    本文实例讲述了JavaScript从数组中删除指定值元素的方法.分享给大家供大家参考.具体分析如下: 下面的代码使用了两种方式删除数组的元素,第一种定义一个单独的函数,第二种为Array对象定义了一个 ...

  6. SpringMVC @RequestBody接收Json对象字符串

    其实 @RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,后来发现用 JSON.stringify(data)的方式就能将对象 ...

  7. ARM学习 之 如何在向内核写入系统调用

    本文主要介绍两个例子:1-系统调用打印“hello kernel”  2-驱动开发板的蜂鸣器 使用的是友善之臂(Friendly ARM)的开发板,三星2440 =================== ...

  8. 【BZOJ-1340】Escape逃跑问题 最小割

    1340: [Baltic2007]Escape逃跑问题 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 264  Solved: 121[Submit] ...

  9. js,java,浮点数运算错误及应对方法

    js,java浮点数运算错误及应对方法 一,浮点数为什么会有运算错误 IEEE 754 标准规定了计算机程序设计环境中的二进制和十进制的浮点数自述的交换.算术格式以及方法. 现有存储介质都是2进制.2 ...

  10. 有用的git建议

    这篇文章的目的是给经常使用git管理项目提供一个有益的提醒.如果你是git新手,可以先阅读文后的引用部分,然后在回头阅读此篇文章.在介绍git命令之前,你可以先看看来自 on-my-zsh 提供的别名 ...