NormalizedKernel Class Reference

Normalized version of a kernel function. More...

#include <KernelFunction.h>

Inheritance diagram for NormalizedKernel:
KernelFunction Model

List of all members.

Public Member Functions

 NormalizedKernel (KernelFunction *base)
 ~NormalizedKernel ()
void setParameter (unsigned int index, double value)
 Modifies a specific model parameter.
double eval (const Array< double > &x1, const Array< double > &x2) const
 Evaluates the kernel function on a const object.
double evalDerivative (const Array< double > &x1, const Array< double > &x2, Array< double > &derivative) const
 Evaluates the kernel function and computes its derivatives w.r.t.
bool isFeasible ()
 check whether the parameters define a feasible model

Protected Attributes

KernelFunctionbaseKernel
 kernel to normalize

Detailed Description

Normalized version of a kernel function.

For a positive definite kernel k, the normalized kernel

\[ \tilde k(x_1, x_2) := \frac{k(x_1, x_2)}{\sqrt{k(x_1, x_1) \cdot k(x_2, x_2)}} \]

is again a positive definite kernel function.

Definition at line 206 of file KernelFunction.h.


Constructor & Destructor Documentation

NormalizedKernel::NormalizedKernel ( KernelFunction base  ) 
NormalizedKernel::~NormalizedKernel (  ) 

Definition at line 298 of file KernelFunction.cpp.


Member Function Documentation

double NormalizedKernel::eval ( const Array< double > &  x1,
const Array< double > &  x2 
) const [virtual]

Evaluates the kernel function on a const object.

Implements KernelFunction.

Definition at line 308 of file KernelFunction.cpp.

References baseKernel, and KernelFunction::eval().

double NormalizedKernel::evalDerivative ( const Array< double > &  x1,
const Array< double > &  x2,
Array< double > &  derivative 
) const [virtual]

Evaluates the kernel function and computes its derivatives w.r.t.

the kernel parameters.

Reimplemented from KernelFunction.

Definition at line 313 of file KernelFunction.cpp.

References baseKernel, KernelFunction::evalDerivative(), Model::getParameterDimension(), and i.

bool NormalizedKernel::isFeasible (  )  [virtual]

check whether the parameters define a feasible model

The default implementation returns true, that is, every parameter configuration is considered feasible and unconstrained optimization is applicable. It is the Optimizer's responsibility to check the isFeasible() flag.

Returns:
true if the model is feasible, false otherwise
Author:
T. Glasmachers
Date:
2006

Reimplemented from Model.

Definition at line 337 of file KernelFunction.cpp.

References baseKernel, and Model::isFeasible().

void NormalizedKernel::setParameter ( unsigned int  index,
double  value 
) [virtual]

Modifies a specific model parameter.

Reimplemented from Model.

Definition at line 302 of file KernelFunction.cpp.

References baseKernel, Model::parameter, and Model::setParameter().

Referenced by NormalizedKernel().


Member Data Documentation

kernel to normalize

Definition at line 221 of file KernelFunction.h.

Referenced by eval(), evalDerivative(), isFeasible(), NormalizedKernel(), and setParameter().


The documentation for this class was generated from the following files: