Convert optimization problem from R to Matlab

4 vues (au cours des 30 derniers jours)
Carlos Bosley
Carlos Bosley le 25 Juil 2019
Commenté : Carlos Bosley le 25 Juil 2019
I have the following code from R:
fleishtarget<-function(x,a){
##
#The target function for solving equations 18, 19, and 20#
# from page 523 of Fleishman.#
#It does this by changing the system of three equations into a #
# minimization problem. Set the equations equal to zero, square,#
# and sum up. The b, c, and d that minimize the set of equations #
# at zero must also solve the three individually.#
##
b<-x[1]
cc<-x[2]
d<-x[3]
g1<-a[1]
g2<-a[2]
(2 - ( 2*b^2 + 12*b*d + g1^2/(b^2+24*b*d+105*d^2+2)^2 + 30*d^2 ) )^2 +
(g2 - ( 24*(b*d+cc^2*(1+b^2+28*b*d)+d^2*(12+48*b*d+141*cc^2+225*d^2)) ) )^2+
(cc - (g1/(2*(b^2+24*b*d+105*d^2+2)) ) )^2
}
findbcd<-function(skew,kurtosis){
##
#Uses the built in minimization function to solve for b, c, and d#
# if the skew and kurtosis are given. Try findbcd(1.75,3.75) and#
# compare to Table 1 on page 524 of Fleishman.
##
optim(c(1,0,0),fleishtarget,a=c(skew,kurtosis),method="BFGS",
control=list(ndeps=rep(1e-10,3),reltol=1e-10,maxit=1e8))
}
The cannot seem to translate this the call to optim into Matlab and get it working properly. Any help is greatly appreciated.

Réponses (1)

amin ya
amin ya le 25 Juil 2019
Have you tried this?
You need to study Matlab optimizatoin toolbox document to do this.
  1 commentaire
Carlos Bosley
Carlos Bosley le 25 Juil 2019
The only problem I am having is the call to optim in the function findbcd. I don't see how believe that link helps me with this.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Get Started with Optimization Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by