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

Reply via email to