Description Arguments Value References Examples
'RMPSolveS' can be used to maximize any function where the set of parameters belong to an unit simplex.
x0 |
Vector of Initial Guess provided by User. |
func |
The Function to be Optimized, should be provided by the User. |
s_init |
Initial 'Global Step Size'. Default Value is 2. It must be set Less than or Equal to 2. |
rho_1 |
'Step Decay Rate' for the First Run Only (Default is 2). |
rho_2 |
'Step Decay Rate' for Second Run Onwards (Default is 2). |
phi |
Lower Bound for 'Global Step Size'. Default value is 10^{-6}. |
max_iter |
Max Number of Iterations in each 'Run'. Default Value is 10000. |
no_runs |
Max Number of 'Runs'. Default Value is 10^{-6}. |
lambda |
Sparsity Control Parameter. Default Value is 10^{-10}. |
tol_fun |
Termination Tolerance on when to decrease the 'Global Step Size'. Default Value is 10^{-6}. For more accuracy, user may set it to a Smaller Value e.g., 10^{-20}. However, for Expensive Objective Functions, for Faster Computation, User should set it to a Larger Value e.g, 10^{-3}. |
tol_fun_2 |
Termination Tolerance on the Difference of Norms of solution points in two Consecutive Runs. Default Value is 10^{-20}. However, for Expensive Objective Functions, for Faster Computation, user should set it to a Larger Value e.g, 10^{-6}. |
print_output |
Binary Command to Print Optimized Value of Objective Function after Each Iteration. Default is set as FALSE. |
The Optimal Solution Point.
Das, Priyam
"Recursive Modified Pattern Search on High-dimensional Simplex : A Blackbox Optimization Technique"
(available at 'arXiv http://arxiv.org/abs/1604.08636).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | g <- function(y)
return(-20 * exp(-0.2 * sqrt(0.5 * (y[1] ^ 2 + (y[2]-1) ^ 2)))
- exp(0.5 * (cos(2 * pi * y[1]) + cos(2 * pi * (y[2]-1))))
+ exp(1) + 20)
# global min value is 0, achieved at c(0,1)
starting_point <- c(0.4,0.6)
g(starting_point)
solution <- RMPSolveS(starting_point, g)
g(solution)
# Example of putting infeasible starting point
g <- function(y)
return(-y[1]) # min value is 1, achieved if first coordinate is 1
RMPSolveS(c(1,0.2,56,0.4),g) # starting point NOT on simplex
# Example of 1000 dimensional problem
g <- function(y)
return(- sum(y^10))
# min value is -1, achieved if only one
# coordinate is equal to 1, rest are 0
RMPSolveS(rep(1 / 1000, 1000), g, print = 1)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.