Interface function for calls to optimizer from various REBayes functions There is currently only one option for the optimization that based on Mosek. It relies on the Rmosek interface to R see installation instructions in the Readme file in the inst directory of this package. This version of the function works only with versions of Mosek 9.0. This is an experimental alternative to the main KWDual which is the usual interface from fitting functions to Mosek, caveat emptor..
KWPrimal(A, d, w, ...)
Returns a list with components:
primal solution vector, the mixing density
the mixture density evaluated at the data points
log likelihood
return status from Mosek
. Mosek termination messages are treated as warnings from an R perspective since solutions producing, for example, MSK_RES_TRM_STALL: The optimizer is terminated due to slow progress, may still provide a satisfactory solution, especially when the return status variable is "optimal".
Linear constraint matrix
constraint vector
weights for x
should sum to one.
other parameters passed to control optimization: These may
include rtol
the relative tolerance for dual gap convergence criterion,
verb
to control verbosity desired from mosek, verb = 0
is quiet,
verb = 5
produces a fairly detailed iteration log,
control
is a control list consisting of sublists iparam
,
dparam
, and sparam
, containing elements of various mosek
control parameters. See the Rmosek and Mosek manuals for further details.
A prime example is rtol
which should eventually be deprecated and
folded into control
, but will persist for a while for compatibility
reasons. The default for rtol
is 1e-6, but in some cases it is
desirable to tighten this, say to 1e-10. Another example that motivated the introduction of
control
would be control = list(iparam = list(num_threads =
1))
, which forces Mosek to use a single threaded process. The default
allows Mosek to uses multiple threads (cores) if available, which is
generally desirable, but may have unintended (undesirable) consequences when running
simulations on clusters.
R. Koenker
Koenker, R and I. Mizera, (2013) ``Convex Optimization, Shape Constraints, Compound Decisions, and Empirical Bayes Rules,'' JASA, 109, 674--685.
Mosek Aps (2015) Users Guide to the R-to-Mosek Optimization Interface, https://docs.mosek.com/8.1/rmosek/index.html.
Koenker, R. and J. Gu, (2017) REBayes: An R Package for Empirical Bayes Mixture Methods, Journal of Statistical Software, 82, 1--26.