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

v 7.1

parent fe86efc3
Package: optimParallel
Type: Package
Title: Parallel Versions of the Gradient-Based optim() Methods
Version: 0.7
Version: 0.7-1
Date: 2018-04-30
Author: Florian Gerber
Maintainer: Florian Gerber <florian.gerber@math.uzh.ch>
......@@ -10,5 +10,6 @@ License: GPL (>= 2)
URL: https://git.math.uzh.ch/florian.gerber/optimParallel
BugReports: https://git.math.uzh.ch/florian.gerber/optimParallel
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
- 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 @@
#' @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:
#' \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.
#' 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
#' \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
......@@ -45,6 +45,10 @@
#' 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")}.
#'
#' @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
#' \code{\link[stats]{optim}},
#' \code{\link[parallel]{makeCluster}},
......
The R package optimParallel
===========================
The package provides a parallel version of the gradient based
‘optim’ methods "L-BFGS-B", "BFGS", and "CG". If the evaluation of
the target function takes more that 0.5 seconds, ‘optimParallel’
can reduce the optimization time significantly. For "L-BFGS-B"
the speed increase is between factor 2 in the case where ‘gr’ is
specified and factor 2p+1 (p = number of parameters) in the case
where ‘gr’ is not specified.
The package provides parallel versions of the gradient-based optim methods
"L-BFGS-B", "BFGS", and "CG". If the evaluation of the function fn takes more than 0.05 seconds,
optimParallel can significantly reduce the optimization time. For a p-parameter optimization based
on "L-BFGS-B", the speed increase is about factor 1+2p when no analytic gradient is specified and
1+2p processor cores are available.
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
\item{parallel}{is a list of additional control parameters and can supply any of the following components:
\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.
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
\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
......@@ -124,6 +124,11 @@ optimParallel(par=c(1,1), fn=negll, x=x, sleep=.5,
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{
\code{\link[stats]{optim}},
\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