今天看到一篇文章介绍如何用excel建模对ROI 进行规划求解。

蓝鲸的网站分析笔记





  • 成本 Cost
  • 每次点击费用 CPC
  • 点击量 $$clickRate = \frac{cost}{CPC}$$
  • 转化率 conversionRatio
  • 购买量 $$Purchaseamount = \frac{Cost*conversionRatio}{CPC}$$
  • 客单价 perCustomerTransaction
  • 利润率 rateofProfit
  • 利润 $$profit = Purchaseamount * perCustomerTransaction * rateofProfit$$
  • 投资回报率 $$ ROI = \frac{profit}{Cost}$$

涉及 多元非线性规划分析求解 ,R 中提供了Rdonlp2()包。

library(Rdonlp2)
p<-c(7,0.01,1000) # 迭代初始值
par.l=c(7,0,0);par.u=c(Inf,0.04,Inf) #自变量定义域约束
fn=function(x){
0.18*x[2]*x[3]/x[1]
} #目标函数 nlcon=function(x){
0.18*x[2]*x[3]/x[1]
}
nlin.l=1.2;nlin.u=1.2 #构成非线性约束
ret<-donlp2(p,fn,par.u=par.u, par.l=par.l,
nlin=list(nlcon), nlin.u=nlin.u, nlin.l=nlin.l)
ret

运行后的结果如下

 ret
$par #DONLP2 的返回值 和Excel求解值相同
[1] 7.000 0.040 1166.667 $gradf #梯度
[1] -0.171428571 30.000000000 0.001028571 $u # vector of lagrange multipliers for constraints 约束拉格朗日乘子的矢量
[1] 5.551115e-17 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00
[7] 1.000000e+00 0.000000e+00 $w #vector of penalty term 惩罚因子向量
[1] 1.0 1.0 1.0 1.0 1.0 1.0 2.2 1.0 $step.nr # total number of iterations 迭代次数
[1] 2 $fx # the value of objective function fn 目标函数fn的结果
[1] 1.2 $scf # scaling of fn 尺度
[1] 1 $psi # psi the weighted penalty term
[1] 0.3771429 $upsi #
[1] 0.1714286 $del.k.1
[1] 0.001 $b2n0
[1] 0 $b2n
[1] 1.509644e-14 $nr
[1] 3 $sing
[1] -1 $umin
[1] 0 $not.used
[1] 0 $cond.r
[1] 17672.02 $cond.h
[1] 2.001279 $scf0
[1] 1 $xnorm
[1] 1000.025 $dnorm
[1] 166.6667 $phase
[1] 0 $c.k
[1] 1 $wmax
[1] 2.2 $sig.k
[1] 1 $cfincr
[1] 2 $dirder
[1] -0.2057143 $dscal
[1] 1 $cosphi
[1] 1e-05 $violis
[1] 0 $hesstype
[1] 0 $modbfgs
[1] 0 $modnr
[1] 0 $qpterm
[1] 0 $tauqp
[1] 0 $infeas
[1] 0 $nr.update
[,1] [,2] [,3]
[1,] 1.000008 -0.005714053 -1.142493e-07
[2,] 0.000000 1.414665735 1.964581e-05
[3,] 0.000000 0.000000000 1.000000e+00 $message
[1] "KT-conditions satisfied, no further correction computed" $runtime
[1] 0.002

R语言:规划求解优化ROI的更多相关文章

  1. R语言 批量规划求解

    昨天读到一个项目,是关于优化求解的. 约束条件如下: 公司里有很多客户,客户之所以不继续用我们的产品了,是因为他账户余额是负的,所以,为了重新赢回这些客户,公司决定发放优惠券cover掉客户账户的负余 ...

  2. R语言:用简单的文本处理方法优化我们的读书体验

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html 前言 延续之前的用R语言读琅琊榜小说,继续讲一下利用R语言做一些简单的文本处理.分词的事情.其实 ...

  3. 简单线性回归问题的优化(SGD)R语言

    本编博客继续分享简单的机器学习的R语言实现. 今天是关于简单的线性回归方程问题的优化问题 常用方法,我们会考虑随机梯度递降,好处是,我们不需要遍历数据集中的所有元素,这样可以大幅度的减少运算量. 具体 ...

  4. R语言教程规划

    本文发表在博客园, http://www.cnblogs.com/stackworm/ 尽管进展中出现了意想不到的事情,期间中断1个多月,但我仍然会坚持下去. 首先,这份教程适合所有对R语言有兴趣且希 ...

  5. 如何在R语言中使用Logistic回归模型

    在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价.身高.GDP.学生成绩等,发现这些被预测的变量都属于连续型变量.然而有些情况下,被预测变量可能是二元变量,即成功或失败.流失或 ...

  6. R语言解读一元线性回归模型

    转载自:http://blog.fens.me/r-linear-regression/ 前言 在我们的日常生活中,存在大量的具有相关性的事件,比如大气压和海拔高度,海拔越高大气压强越小:人的身高和体 ...

  7. 主成分分析(PCA)原理及R语言实现

    原理: 主成分分析 - stanford 主成分分析法 - 智库 主成分分析(Principal Component Analysis)原理 主成分分析及R语言案例 - 文库 主成分分析法的原理应用及 ...

  8. 统计计算与R语言的资料汇总(截止2016年12月)

    本文在Creative Commons许可证下发布. 在fedora Linux上断断续续使用R语言过了9年后,发现R语言在国内用的人逐渐多了起来.由于工作原因,直到今年暑假一个赴京工作的机会与一位统 ...

  9. 数据分析与R语言

    数据结构 创建向量和矩阵 函数c(), length(), mode(), rbind(), cbind() 求平均值,和,连乘,最值,方差,标准差 函数mean(), sum(), min(), m ...

随机推荐

  1. JavaScript函数的概念

    函数是这样的一段代码,它只定义一次,但可能被执行或调用任意多次. JavaScript函数是参数化的:函数的定义会包含形参,这些参数在函数的整体中像局部变量一样工作.函数调用时会为形参提供实参的值.除 ...

  2. Tomjson - 一个"短小精悍"的 json 解析库

    Tomjson,一个"短小精悍"的 json 解析库,tomjson使用Java语言编写,主要作用是把Java对象(JavaBean)序列化为json格式字符串,将json格式字符 ...

  3. 360:且用且珍惜!解决虚拟机linux启动缓慢以及ssh端卡顿的问题!

    优化软件以及杀毒软件想必大家都是用过的,小编自用的第一台电脑自带安装的是金山毒霸,随着时间的偏移渐渐用过小红伞,卡巴斯基,优化大师,鲁大师到后来的360优化杀毒套装,优化软件给大家带来了方便,尤其是上 ...

  4. [No000073]C#直接删除指定目录下的所有文件及文件夹(保留目录)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. http协议进阶(三)补充:报文首部

    之前写的关于报文首部的传送门: 报文首部:http://www.cnblogs.com/imyalost/p/5708445.html 通用首部字段:http://www.cnblogs.com/im ...

  6. CRC校验码原理、实例、手动计算

    目录一.CRC16实现代码二.CRC32编码字符表三.CRC校验码的手动计算示例四.CRC校验原理五.CRC的生成多项式参考 一.CRC16实现代码 思路:取一个字符(8bit),逐位检查该字符,如果 ...

  7. Qt——自定义属性

    一.Qt中的属性 属性是指窗口或控件的属性,比如opacity属性表示“透明度”,geometry指的是“位置和大小”,pos属性代表“位置”. qt中的控件有自带的属性,我们也可以自己定义属性. Q ...

  8. ios9适配系列教程——ios9新变化

    Demo1_iOS9网络适配_改用更安全的HTTPS iOS9把所有的http请求都改为https了:iOS9系统发送的网络请求将统一使用TLS 1.2 SSL.采用TLS 1.2 协议,目的是 强制 ...

  9. 梦想成真,喜获微软MVP奖项,微软MVP FAQ?

    之前一直很钦佩那些MVP获奖者,想着自己有一天也能拿到该多好,就在10月1日邮箱收到了微软的邮件,当选了2016年10月份的MVP.今天主要分享一下获奖的喜悦也分享一下如何获得MVP奖项. 什么是微软 ...

  10. 【技术贴】大型发布会现场的WiFi网络应该如何搭建?

    WiFi网络的部署要远远比一般人想象的复杂,不是说放上几十个AP带宽就自动增加几十倍,恰恰相反,简单放几十个AP带宽会由于AP之间的竞争而 迅速使带宽下降为几乎不可用.实际上这个问题完全可以写一本书了 ...