Radiale Basisfunktion

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Eine radiale Basisfunktion (RBF) ist eine reelle Funktion , deren Wert nur vom Abstand zum Ursprung abhängt, so dass . Der Name kommt daher, dass die Funktion nach dieser Definition radialsymmetrisch ist und ferner diese Funktionen als Basisfunktionen einer Approximation verwendet werden. Allgemeiner kann man den Abstand zu einem Punkt c betrachten, der Zentrum genannt wird, so dass .

Eigenschaften[Bearbeiten | Quelltext bearbeiten]

Jede Funktion für die gilt ist eine RBF. Als Norm wird gewöhnlich die euklidische Norm gewählt, je nach Problem sind auch andere Normen möglich. Nimmt man beispielsweise die von der Lukaszyk-Karmowski-Metrik induzierte Norm, so ist es bei manchen RBFs möglich, Probleme mit schlecht konditionierten Matrizen zu umgehen, die zur Berechnung der Koeffizienten, die bei Approximation durch RBFs auftreten, erforderlich sind. Da es sich bei dem Radius um eine skalare Größe handelt, ist das Verhalten bezüglich des Aufwandes im höherdimensionalen Raum gutartig.

Typen radialer Basisfunktionen[Bearbeiten | Quelltext bearbeiten]

Stückweise polynomielle RBF () , für ungerade
Thin Plate Spline () , für gerade
Multiquadric RBF (MQ)
Inverse multiquadric RBF (IMQ)
Inverse quadric RBF (IQ)
Polyharmonic RBF
gaußsche RBF (GS)

Approximation mit Hilfe von RBFs[Bearbeiten | Quelltext bearbeiten]

Typischerweise werden Linearkombinationen von radialen Basisfunktionen zur Approximation von Funktionen genutzt. Hierbei wird die zu approximierende Funktion durch eine Summe von radialen Basisfunktionen angenähert, die verschiedene Zentren haben und durch die Koeffizienten gewichtet sind. Weiterhin ist zu beachten, dass die Funktionswerte an den Zentren exakt eingehalten werden.

Im Allgemeinen dienen radiale Basisfunktionen zur Annäherung stetiger Funktionen, die von zwei oder mehr Variablen abhängen (multivariaten Funktionen), durch Linearkombinationen von Ausdrücken, die auf einer einzelnen Funktion einer Variablen basieren. Ist eine radiale Basisfunktion, kann man eine multivariate Funktion wie folgt definieren:

für alle reellen Vektoren

Dabei ist der euklidische Abstand vom Koordinatenursprung. Im zweidimensionalen Fall bedeutet das, dass die Funktion für jeden Punkt auf einem Kreis, dessen Mittelpunkt der Koordinatenursprung ist, denselben Wert hat. Dasselbe gilt für dreidimensionale Kugeln und höherdimensionalen Äquivalente (Hyperkugeln).

Wenn eine Interpolation auf einer Funktion durchgeführt wird, die an endlich vielen Punkten bekannt ist, wird eine Menge von Basisfunktionen benötigt. Diese kann erzeugt werden, indem die radiale Basisfunktion von den gegebenen Punkten verschoben wird. Die Funktion hat dieselbe Gestalt wie die Funktion , aber bezogen auf den Punkt statt dem Koordinatenursprung. Für jeden Punkt erhält man eine neue Basisfunktion. Diese Basisfunktionen können verwendet werden, um eine Näherungsfunktion zu erzeugen:

Dabei ist jedes eine reelle Zahl. Wenn die Bedingung für alle Indexe erfüllt sein soll, sind die Koeffizienten die Lösungen eines linearen Gleichungssystems.[1]

Funktionsweise[Bearbeiten | Quelltext bearbeiten]

Zur Verdeutlichung der Funktionsweise soll die Funktion mit Hilfe der Gaußschen RBF approximiert werden. Dazu werden im ausgewählten Bereich von sechs gleichmäßig verteilte Stützstellen zu Rate gezogen. Den freien Parameter muss man dabei kalibrieren. Die Abbildung für den approximierten Funktionsverlauf zeigt zwei unterschiedliche Vorgaben für . Dabei ist mit der schwarzen Approximation der optimale Wert () dargestellt und mit dem roten Verlauf die intuitive Wahl von , welche die Superposition einzelner Gauß-Funktionen aufzeigt.

Bestimmung der Koeffizienten[Bearbeiten | Quelltext bearbeiten]

Für die Bestimmung der Koeffizienten der radialen Basisfunktionen muss ein lineares Gleichungssystem gelöst werden. Dies wird mit Hilfe von ausgewählten Stützstellen aufgestellt. Dabei besteht die Matrix aus den Werten der Basisfunktion, die sich aus den Abständen der Stützstellen ergeben, der zu bestimmende Vektor enthält die Koeffizienten der radialen Basisfunktionen und die rechte Seite des linearen Gleichungssystems beinhaltet die Funktionswerte an den Stützstellen.

Für einen Funktionswert einer -ten Stützstelle gilt:

mit der Abkürzung .

Somit lässt sich das folgende Gleichungssystem aufstellen.

Umsetzung im Quelltext[Bearbeiten | Quelltext bearbeiten]

Die Bestimmung der Koeffizienten kann mit Hilfe des angegebenen Matlab-Quelltextes erfolgen.

function [lam,coreFunction] = RBFcalcCoeff(a,xk,fk)

coreFunction = @(x) exp(-(a.*x).^2);   %%% definieren der RBF (phi(x))

N = length(xk);                        %%% N ausgewählte Stützstellen

A = zeros(N,N);                        %%% Initialisierung der Matrix A

for i1 = 1:N                           %%% Schleife über alle Zeilen
  for i2 = i1:N                        %%% Schleife über alle Spalten
      r = sqrt((xk(i1)-xk(i2)).^2);    %%% Bestimmung des Radius
      A(i1,i2) = coreFunction(r);      %%% Funktionswert der Matrix
      A(i2,i1) = A(i1,i2);
  end
end

lam=A\fk;                              %%% Lösung des Gleichungssystems

Positive Definitheit[Bearbeiten | Quelltext bearbeiten]

Eine radiale Basisfunktion ist positiv definit, wenn für alle endlichen Mengen aus endlich vielen Punkten die symmetrischen Matrizen positiv definit sind.[2]

Anwendungen[Bearbeiten | Quelltext bearbeiten]

Approximationsmethoden dieser Art werden zur Modellierung nichtlinearer Systeme (mit ausreichend einfachem chaotischem Verhalten), zur 3D-Rekonstruktion in der Computergrafik (beispielsweise hierarchische RBFs) oder zur Erstellung von Antwortflächen in der Optimierung eingesetzt. Weitere Anwendungsbereiche von RBFs sind das Lösen von partiellen Differentialgleichungen (z. B. mittels gitterfreier Kollokation) oder Transformationen bei der Bildregistrierung.

Künstliche neuronale Netze[Bearbeiten | Quelltext bearbeiten]

Insofern ein künstliches neuronales Netz eine zur Approximation geeignete Verfahrensart ist, besonders bei hochdimensionalen Problemen, stellen RBF ein spezielles Modell hierfür dar.

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Martin D. Buhmann: Radial Basis Functions: Theory and Implementations. Cambridge University Press, 2003
  • E. Larsson, B. Fornberg: A Numerical Study of some Radial Basis Function based Solution Methods for Elliptic PDEs. In: Computers & Mathematics with Applications, Volume 46, 2003
  • H. Wendland: Scattered Data Approximation. Cambridge University Press, 2005

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Martin Buhmann, Janin Jäger: On radial basis functions
  2. R. Schaback, Georg-August-Universität Göttingen: A Practical Guide to Radial Basis Functions