|
Hi Nicolas,
Sofiane identified the bug. If you're using openturns via conda on linux/osx we could deploy a fix for this if you're interested.
j De : [email protected] <[email protected]> de la part de HADDAD Sofiane <[email protected]>
Envoyé : mercredi 23 août 2017 17:57 À : LELIEVRE-Nicolas; [email protected] Objet : Re: [ot-users] Matern Covariance Model for Kriging Surrogate Model Hi,
There is indeed a bug within the MaternModel::setParameter, thanks for the report.
It is fixed in
Fix http://trac.openturns.org/ticket/905 by sofianehaddad · Pull Request #537 · openturns/openturns
Sofiane
Le Mardi 22 août 2017 13h51, HADDAD Sofiane <[email protected]> a écrit :
Hi Nicolas,
Sorry for the delay.
I will have a look at the problem
this afternoon
Regards,
Sofiane
Le Jeudi 17 août 2017 15h33, LELIEVRE-Nicolas <[email protected]> a écrit :
Hi,
I want to calibrate a Kriging surrogate model in OpenTurns and I face difficulties.
Indeed, I want to use the Matern covariance model.
But, when I run the KrigingAlgorithm optimization, the scale parameters (theta) are not optimized.
I have studied the problem and found that the LogLikelihood function is constant, no matter how points are in the DoE, what the performance function is and what the dimension is.
I think that the problem is on the definition of the covariance model since if I use SquaredExponential there is not any problems.
But, I don't find how to define it correctly.
May you provide me some helpful advice ?
Thank you in advance.
A little example:
import numpy as np import openturns as ot def G(X): out = 15 - (X[:,0]**2 + X[:,1]**2 - 5*np.cos(2*np.pi*X[:,0]) - 5*np.cos(2*np.pi*X[:,1])) return out dim = 2 Loi = np.ones(dim) Moy = np.ones(dim) Stdev = np.ones(dim) nini = 100 nva = np.size(Loi) DOE_u = np.random.normal(0,1,(nini,nva)) DOE_y = G(DOE_u) DOE_y = DOE_y.reshape((nini,1)) inputSample = ot.Sample(DOE_u) outputSample = ot.Sample(DOE_y) basis = ot.ConstantBasisFactory(nva).build() covarianceModel = ot.MaternModel(nva) covarianceModel.setNu(5/2) algo = ot.KrigingAlgorithm(inputSample, outputSample, covarianceModel, basis) algo.run() result = algo.getResult() print(result.getCovarianceModel()) LogLikelihood = algo.getReducedLogLikelihoodFunction() Nicolas Lelièvre
Doctorant Institut Pascal Clermont-Ferrand
OpenTURNS users mailing list [email protected] http://openturns.org/mailman/listinfo/users |
_______________________________________________ OpenTURNS users mailing list [email protected] http://openturns.org/mailman/listinfo/users
