作者s1001326 (gg)
看板R_Language
标题Re: [问题] nloptr initial value 如何放矩阵?
时间Mon Jun 13 23:02:41 2016
※ 引述《s1001326 (gg)》之铭言:
: [问题类型]:
: 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
: [软体熟悉度]:
: 入门(写过其他程式,只是对语法不熟悉)
: [问题叙述]:
: 我想用R的nloptr中的package解决一个非线性规划的问题,欲解的变数为x1~x5,以上均
: 为矩阵,因为nloptr必须给一个x0当作起始解,但是范例中的x0所给的值为向量,不知道
: 如何塞矩阵进去且x1~x5的各别长度不相等,上网找相关的资源也没有收寻到类似的问题,谢谢各位大大的帮忙
: [程式范例]:
: eval_f <- function(x) {
: return( "objective"=x[1]%*%x[1])
: }
: eval_g_ineq <- function(x) {
: constr <- rbind(x2,x3,x4)
: }
: evql_g_eq <- function(x){
: constr <- x2%*%x3
: x3%*%x4
: }
: x0 <- ?
: 仅列出概念的程式码,不知道如何塞矩阵到x0初始值以内,且各个矩阵的长度皆不相等,
: 此问题已困扰多时,请各位大大指点迷津Q_Q
这是修改前的程式码
http://ideone.com/6xg9gI
这是修改後的code
http://ideone.com/WzXjyk
听完C大说的 把x0变成一个向量 且在function里面设定矩阵
不知道是不是这个意思 trd为一个excel档
但是跑出以下错误
Error in trd%*% x3 : non-confortable arguments
不知道是不是因为要在 限制式里面打多个限制式的程式码打错
上网查是用rbind去解决多个限制式 但还是有错误
因此不知道错误是在rbind的程式码 还是初始值x0连成一个向量 在里面设定成矩阵的
上面出现错误? 先谢谢C大的帮忙!非常感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.160.157.156
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1465830165.A.733.html
1F:→ celestialgod: 明天有空帮你看一下QQ... 06/13 23:03
2F:→ s1001326: 感激不尽c大的付出!辛苦c大了 06/14 00:35
3F:→ s1001326: 麻烦你了 很不好意思 06/14 00:37
4F:→ celestialgod: 请给我trd, Price, Market.Share的维度 06/14 19:25
5F:→ s1001326: trd 11893列 23行 Price 11893列 1 行 Market.Share 118 06/14 22:39
6F:→ s1001326: 93列 1行 若需要资料可以私信给你 麻烦了qq 06/14 22:39