※ 引述《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大的帮忙!非常感谢