找回密码
 注册
查看: 461|回复: 0

R语言 Rsolnp包 startpars()函数中文帮助文档(中英文对照)

[复制链接]
发表于 2012-9-28 22:15:04 | 显示全部楼层 |阅读模式
startpars(Rsolnp)
startpars()所属R语言包:Rsolnp

                                         Generates and returns a set of starting parameters by sampling the parameter space based on the evaluation of the function and constraints.
                                         生成并返回通过采样函数和约束条件的评价的基础上的参数空间的一组初始参数。

                                         译者:生物统计家园网 机器人LoveR

描述----------Description----------

A simple penalty barrier function is formed which is then evaluated at randomly sampled points based on the upper and lower parameter bounds (when eval.type = 2), else the objective function directly for values not violating any inequality constraints (when eval.type = 1).  The sampled points can be generated from the uniform, normal or truncated normal distribution.
一个简单的罚款形成屏障功能,然后评价的上部和下部的参数界限的基础上随机采样点(当eval.type= 2),否则目标函数的值没有违反任何不等式约束(eval.type= 1)。的取样点可产生均匀的,正常的或截断的正态分布。


用法----------Usage----------


startpars(pars = NULL, fixed = NULL, fun, eqfun = NULL, eqB = NULL, ineqfun = NULL, ineqLB = NULL,
                ineqUB = NULL, LB = NULL, UB = NULL, distr = rep(1, length(LB)), distr.opt = list(),
                n.sim = 20000, parallel = FALSE, parallel.control = list(pkg = c("multicore", "snowfall"), cores = 2),
                rseed = NULL, bestN = 15, eval.type = 1, trace = FALSE, ...)



参数----------Arguments----------

参数:pars
The starting parameter vector. This is not required unless the fixed option is also used.  
的起始参数矢量。这不是必须的,除非固定选项也可用于。


参数:fixed
The numeric index which indicates those parameters which should stay fixed instead of being randomly generated.  
表示应保持固定的参数,而不是随机产生的数字索引。


参数:fun
The main function which takes as first argument the parameter vector and returns a single value.  
作为第一个参数的函数,该函数的参数向量,返回单个值。


参数:eqfun
(Optional) The equality constraint function returning the vector of evaluated equality constraints.  
(可选)等式约束函数返回的向量评估等式约束。


参数:eqB
(Optional) The equality constraints.  
(可选)等式约束。


参数:ineqfun
(Optional) The inequality constraint function returning the vector of evaluated inequality constraints.  
(可选)不等式约束函数返回的向量评估的不等式约束。


参数:ineqLB
(Optional) The lower bound of the inequality constraints.  
(可选)的下界不等式约束。


参数:ineqUB
(Optional) The upper bound of the inequality constraints.  
(可选)的上界的不等式约束。


参数:LB
The lower bound on the parameters. This is not optional in this function.  
对参数的下界。在这个函数中,这是不可选的。


参数:UB
The upper bound on the parameters. This is not optional in this function.  
上界的参数。在这个函数中,这是不可选的。


参数:distr
A numeric vector of length equal to the number of parameters, indicating the choice of distribution  to use for the random parameter  generation. Choices are uniform (1), truncated normal (2), and normal (3).  
甲数值向量的长度等于参数的数目,表示分布的选择要使用的随机参数生成。选择是均匀的(1),截断正常(2),以及正常的(3)。


参数:distr.opt
If any choice in distr was anything other than uniform (1), this is a list equal to the length of the parameters with sub-components for the mean and sd, which are required in the truncated normal and normal distributions.  
在distr,如果没有选择任何其他比均匀的(1),这是一个列表的长度等于与子组件的均值和标准差,这是需要的截断的正常和正态分布的参数。


参数:bestN
The best N (less than or equal to n.sim) set of parameters to return.  
最佳的N(小于或等于n.sim的)设置的参数返回。


参数:n.sim
The number of random parameter sets to generate.  
随机参数的数量将产生。


参数:parallel
Whether to make use of parallel processing on multicore systems.  
是否利用多核系统上的并行处理。


参数:parallel.control
The parallel control options including the type of package for performing the parallel calculations  ("multicore" for non-windows O/S and "snowfall" for all O/S), and the number of cores to make use of.  
并行控制选项,包括包的类型进行并行计算(多核非Windows O / S和“降雪”,所有的O / S),核心数量的利用。


参数:rseed
(Optional) A seed to initiate the random number generator, else system time will be used.  
(可选)种子,启动随机数生成器,否则系统时间将被使用。


参数:eval.type
Either 1 (default) for the direction evaluation of the function (excluding inequality constraint violations)  or 2 for the penalty barrier method.  
无论是1(默认值)为方向的功能(不包括违反不等式约束)或2的刑罚障碍法的评价。


参数:trace
(logical) Whether to display the progress of the function evaluation.  
(逻辑)是否显示的功能评价的进展。


参数:...
(Optional) Additional parameters passed to the main, equality or inequality functions  
(可选)附加参数传递给主,平等或不平等的功能


Details

详细信息----------Details----------

Given a set of lower and upper bounds, the function generates, for those parameters not set as fixed, random values from one of the 3 chosen distributions. For simple functions with only inequality constraints, the direct method (eval.type = 1) might work better. For more complex setups with both equality and  inequality constraints the penalty barrier method (eval.type = 2)might be a better choice.
给定一组的上界和下界,该函数产生,对于那些未设置为固定的,从一个的3个选择的分布的随机值的参数。对于简单的功能,只有不等式约束,直接法(eval.type= 1)可能更好地工作。对于更复杂的设置都等式和不等式约束的惩罚屏障法(eval.type= 2)可能是一个更好的选择。


值----------Value----------

A matrix of dimension bestN x (no.parameters + 1). The last column is the evaluated function value.
矩阵的维bestN×(no.parameters + 1)。最后一列的评价函数值。


注意----------Note----------

The choice of which distribution to use for randomly sampling the parameter space should be driven by the user's knowledge of the problem and confidence or lack thereof of the parameter distribution. The uniform distribution indicates a lack of confidence in the location or dispersion of the parameter, while the truncated normal indicates a more confident choice in both the location and dispersion. On the other hand, the normal indicates perhaps a lack of knowledge in the upper or lower bounds, but some confidence in the location and dispersion of the parameter. In using choices (2) and (3) for distr, the distr.opt list must be supplied with mean and  sd as subcomponents for those parameters not using the uniform.
其中分配给用于随机采样的参数空间的选择应驱动的问题和信心或缺乏它们的参数分布由用户的知识。均匀分布表明缺乏信心的地点或分散的参数,而截断正常显示的位置和分散在一个更加自信的选择。另一方面,正常表示也许知识缺乏的上限或下限,但有些信心的参数的位置和分散。在使用选择(2)和(3)distr,distr.opt列表必须提供与mean和sd这些参数不使用统一的子组件。


(作者)----------Author(s)----------



Alexios Ghalanos and Stefan Theussl<br>




实例----------Examples----------


## Not run: [#不运行:]
# Parallel example (change to cores to your own requirements in the example below)[并行的例子(更改为核心,以自己的要求在下面的例子中)]
# Always load snowfall manually as it might fail if loaded by the program on request[始终降雪手动加载,因为它可能会失败,如果加载的程序要求]

library(Rsolnp)
library(snowfall)
gofn = function(dat, n)
{
       
        x = dat[1:n]
        y = dat[(n+1)2*n)]
        z = dat[(2*n+1)3*n)]
        ii = matrix(1:n, ncol = n, nrow = n, byrow = TRUE)
        jj = matrix(1:n, ncol = n, nrow = n)
        ij = which(ii<jj, arr.ind = TRUE)
        i = ij[,1]
        j = ij[,2]
        #  Coulomb potential[库仑势]
        potential = sum(1.0/sqrt((x[i]-x[j])^2 + (y[i]-y[j])^2 + (z[i]-z[j])^2))
        potential
}

goeqfn = function(dat, n)
{
        x = dat[1:n]
        y = dat[(n+1)2*n)]
        z = dat[(2*n+1)3*n)]
        apply(cbind(x^2, y^2, z^2), 1, "sum")
}
n = 25
LB = rep(-1, 3*n)
UB = rep(1,  3*n)
eqB = rep(1, n)

sp = startpars(pars = NULL, fixed = NULL, fun = gofn , eqfun = goeqfn , eqB = eqB, ineqfun = NULL, ineqLB = NULL,
                ineqUB = NULL, LB = LB, UB = UB, distr = rep(1, length(LB)), distr.opt = list(),
                n.sim = 2000, parallel = TRUE, parallel.control = list(pkg = c("snowfall"), cores = 2),
                rseed = 100, bestN = 15, eval.type = 2, n = 25)
# the last column is the value of the evaluated function (here it is the barrier function since eval.type = 2)[最后一列的评价函数的值(在这里它是自= 2 eval.type)的屏障功能]
print(round(apply(sp, 2, "mean"), 3))
# remember to remove the last column[记得删除的最后一列]
ans = solnp(pars=sp[1,-76],fun = gofn , eqfun = goeqfn , eqB = eqB, ineqfun = NULL, ineqLB = NULL,
                ineqUB = NULL, LB = LB, UB = UB, n = 25)
# should get a value of around 243.8162[应该得到一个价值约243.8162]


转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。


注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-27 19:54 , Processed in 0.020173 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表