Commit 02465b94 authored by Florian Gerber's avatar Florian Gerber

v 7.1

parent fe86efc3
Package: optimParallel Package: optimParallel
Type: Package Type: Package
Title: Parallel Versions of the Gradient-Based optim() Methods Title: Parallel Versions of the Gradient-Based optim() Methods
Version: 0.7 Version: 0.7-1
Date: 2018-04-30 Date: 2018-04-30
Author: Florian Gerber Author: Florian Gerber
Maintainer: Florian Gerber <florian.gerber@math.uzh.ch> Maintainer: Florian Gerber <florian.gerber@math.uzh.ch>
...@@ -10,5 +10,6 @@ License: GPL (>= 2) ...@@ -10,5 +10,6 @@ License: GPL (>= 2)
URL: https://git.math.uzh.ch/florian.gerber/optimParallel URL: https://git.math.uzh.ch/florian.gerber/optimParallel
BugReports: https://git.math.uzh.ch/florian.gerber/optimParallel BugReports: https://git.math.uzh.ch/florian.gerber/optimParallel
Depends: R (>= 3.1), stats, parallel Depends: R (>= 3.1), stats, parallel
Suggests: roxygen2, spam, microbenchmark, testthat, ggplot2, numDeriv Suggests: R.rsp, roxygen2, spam, microbenchmark, testthat, ggplot2, numDeriv
VignetteBuilder: R.rsp
RoxygenNote: 6.0.1 RoxygenNote: 6.0.1
- version 0.7-1: CRAN release
commit dbc3d37114f3d1acfeea52f58e1693cb31d01eff
Author: Florian Gerber <florian.gerber@math.uzh.ch>
Date: Mon Apr 30 14:15:58 2018 +0200
...@@ -24,10 +24,10 @@ ...@@ -24,10 +24,10 @@
#' @param hessian see the documentation of \code{\link[stats]{optim}}. #' @param hessian see the documentation of \code{\link[stats]{optim}}.
#' @param parallel is a list of additional control parameters and can supply any of the following components: #' @param parallel is a list of additional control parameters and can supply any of the following components:
#' \describe{ #' \describe{
#' \item{\code{cl}}{ an object of class \code{"cluster"}} specifying the cluster to be used for parallel execution. #' \item{\code{cl}}{ an object of class \code{"cluster"} specifying the cluster to be used for parallel execution.
#' See \code{\link[parallel]{makeCluster}} for more information. #' See \code{\link[parallel]{makeCluster}} for more information.
#' If the argument is not specified or \code{NULL}, the default cluster is used. #' If the argument is not specified or \code{NULL}, the default cluster is used.
#' See \code{\link[parallel]{setDefaultCluster}} for information on how to set up a default cluster. #' See \code{\link[parallel]{setDefaultCluster}} for information on how to set up a default cluster.}
#' \item{\code{forward}}{ logical vector of length 1. If \code{FALSE} (default when loading the package), a numeric central difference approximation of the gradient defined as #' \item{\code{forward}}{ logical vector of length 1. If \code{FALSE} (default when loading the package), a numeric central difference approximation of the gradient defined as
#' \eqn{(fn(x+\epsilon)-fn(x-\epsilon))/(2\epsilon)} is used, which corresponds to the approximation used in \code{\link[stats]{optim}}. #' \eqn{(fn(x+\epsilon)-fn(x-\epsilon))/(2\epsilon)} is used, which corresponds to the approximation used in \code{\link[stats]{optim}}.
#' If \code{TRUE}, a nummeric forward difference approximation of the gradient essentially defined as #' If \code{TRUE}, a nummeric forward difference approximation of the gradient essentially defined as
...@@ -45,6 +45,10 @@ ...@@ -45,6 +45,10 @@
#' and its (approximate) gradient in parallel.\cr\cr #' and its (approximate) gradient in parallel.\cr\cr
#' The default values of the argument \code{parallel} can be set via\cr\code{options("optimParallel.forward", "optimParallel.loginfo")}. #' The default values of the argument \code{parallel} can be set via\cr\code{options("optimParallel.forward", "optimParallel.loginfo")}.
#' #'
#' @references F. Gerber, R. Furrer (2018)
#' optimParallel: an R Package Providing Parallel Versions of the Gradient-Based Optimization Methods of optim().
#' Available as vignette and soon on arXiv.org with a citable URL.
#'
#' @seealso #' @seealso
#' \code{\link[stats]{optim}}, #' \code{\link[stats]{optim}},
#' \code{\link[parallel]{makeCluster}}, #' \code{\link[parallel]{makeCluster}},
......
The R package optimParallel The R package optimParallel
=========================== ===========================
The package provides a parallel version of the gradient based The package provides parallel versions of the gradient-based optim methods
‘optim’ methods "L-BFGS-B", "BFGS", and "CG". If the evaluation of "L-BFGS-B", "BFGS", and "CG". If the evaluation of the function fn takes more than 0.05 seconds,
the target function takes more that 0.5 seconds, ‘optimParallel’ optimParallel can significantly reduce the optimization time. For a p-parameter optimization based
can reduce the optimization time significantly. For "L-BFGS-B" on "L-BFGS-B", the speed increase is about factor 1+2p when no analytic gradient is specified and
the speed increase is between factor 2 in the case where ‘gr’ is 1+2p processor cores are available.
specified and factor 2p+1 (p = number of parameters) in the case
where ‘gr’ is not specified.
citHeader("To cite optimParallel in publications use:")
citEntry(entry = "Unpublished",
title = "optimParallel: an R Package Providing Parallel Versions of the Gradient-Based Optimization Methods of optim()",
author = personList(as.person("Florian Gerber"),
as.person("Reinhard Furrer")
),
journal = "",
year = "2018",
volume = "",
number = "",
pages = "1--4",
url = "",
doi = "",
note = "Pre-print available as package vignette and (soon) on arXiv.org with a citable URL.",
textVersion =
paste("F. Gerber and R. Furrer (2018)",
"optimParallel: an R Package Providing Parallel Versions of the Gradient-Based Optimization Methods of optim(), package vignette.")
)
...@@ -42,10 +42,10 @@ If another method is specified, the arguments are directly passed to \code{\link ...@@ -42,10 +42,10 @@ If another method is specified, the arguments are directly passed to \code{\link
\item{parallel}{is a list of additional control parameters and can supply any of the following components: \item{parallel}{is a list of additional control parameters and can supply any of the following components:
\describe{ \describe{
\item{\code{cl}}{ an object of class \code{"cluster"}} specifying the cluster to be used for parallel execution. \item{\code{cl}}{ an object of class \code{"cluster"} specifying the cluster to be used for parallel execution.
See \code{\link[parallel]{makeCluster}} for more information. See \code{\link[parallel]{makeCluster}} for more information.
If the argument is not specified or \code{NULL}, the default cluster is used. If the argument is not specified or \code{NULL}, the default cluster is used.
See \code{\link[parallel]{setDefaultCluster}} for information on how to set up a default cluster. See \code{\link[parallel]{setDefaultCluster}} for information on how to set up a default cluster.}
\item{\code{forward}}{ logical vector of length 1. If \code{FALSE} (default when loading the package), a numeric central difference approximation of the gradient defined as \item{\code{forward}}{ logical vector of length 1. If \code{FALSE} (default when loading the package), a numeric central difference approximation of the gradient defined as
\eqn{(fn(x+\epsilon)-fn(x-\epsilon))/(2\epsilon)} is used, which corresponds to the approximation used in \code{\link[stats]{optim}}. \eqn{(fn(x+\epsilon)-fn(x-\epsilon))/(2\epsilon)} is used, which corresponds to the approximation used in \code{\link[stats]{optim}}.
If \code{TRUE}, a nummeric forward difference approximation of the gradient essentially defined as If \code{TRUE}, a nummeric forward difference approximation of the gradient essentially defined as
...@@ -124,6 +124,11 @@ optimParallel(par=c(1,1), fn=negll, x=x, sleep=.5, ...@@ -124,6 +124,11 @@ optimParallel(par=c(1,1), fn=negll, x=x, sleep=.5,
setDefaultCluster(cl=NULL); stopCluster(cl) } setDefaultCluster(cl=NULL); stopCluster(cl) }
} }
\references{
F. Gerber, R. Furrer (2018)
optimParallel: an R Package Providing Parallel Versions of the Gradient-Based Optimization Methods of optim().
Available as vignette and soon on arXiv.org with a citable URL.
}
\seealso{ \seealso{
\code{\link[stats]{optim}}, \code{\link[stats]{optim}},
\code{\link[parallel]{makeCluster}}, \code{\link[parallel]{makeCluster}},
......
%\VignetteIndexEntry{Parallel versions of gradient-based optim() methods}
%\VignetteEngine{R.rsp::asis}
%\VignetteKeyword{parallel}
%\VignetteKeyword{optim}
%\VignetteKeyword{optimParallel}
%\VignetteKeyword{optimization}
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment