• Keine Ergebnisse gefunden

Abgabetermin: 29. April 2005

N/A
N/A
Protected

Academic year: 2021

Aktie "Abgabetermin: 29. April 2005"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Dr. Johannes Mayer Abteilung Angewandte Informationsverarbeitung 29. April 2005

Hans Braxmeier Blatt 1

Ralph Guderlei

UNI VE RS I T Ä T UL

M

· SCIE

DN O DO · CE O ND C · RU

DNA

O

·

Design und Architektur von Softwaresystemen (SS 2005)

Abgabetermin: 29. April 2005

1 Punktprozesse (20 Punkte)

Stochastische r¨aumliche Prozesse sind beispielsweise Punktprozesse, die Punkte nach einer ma- thematischen Gesetzm¨aßigkeit im Raum verteilen. Der einfachste und bekannteste Vertreter aller Punktprozesse ist der Poissonprozess. Er erzeugt eine v¨ollig zuf¨allige Gleichverteilung der Punkte im Raum, wobei die Anzahl der Punkte poissonverteilt ist.

Weitere bekannte Punktprozesse sind Clusterprozesse, bei denen sich Punkte um Cluster- zentren h¨aufen oder Hardcoreprozesse, bei denen die einzelnen Punkte einen gewissen Min- destabstand zueinander besitzen.

Realisierungen von Poisson-, Cluster- und Hardcoreprozess

Beim Clusterprozess werden zun¨achst die Clusterzentren durch einen Poissonprozess simu- liert. Anschließend wird f¨ur die Clusterzentren eine Umgebung definiert, innerhalb dieser weitere Punkte durch einen zweiten Poissonprozess erzeugt werden. Die Umgebung ist definiert durch eine Kreisscheibe deren Radius der sogenannte Clusterradius ist. D.h. in einem Rechteck um jedes Clusterzentrum wird ein Poissonprozess simuliert und alle Punkte außerhalb des Kreises verworfen. Zur Realisierung des Clusterprozesses geh¨oren alle Punkte außer den Clusterzentren.

Ein Hardcoreprozess ist ebenfalls ein Prozess, bei dem die Punkte zun¨achst anhand eines Poissonprozesses erzeugt werden. Diese Punkte werden je zuf¨allig mit einer unabh¨angigen reellen Zufallszahl zwischen 0 und 1 markiert. Diejenigen Punkte, in deren Umgebung (ein Kreis mit dem Hardcoreradius) ein Punkt mit einer kleineren Markierung existiert, werden verworfen.

Alle anderen bilden die Realisierung des Hardcoreprozesses.

Die oben gezeigten Realisierungen von Poisson-, Cluster- und Hardcoreprozess wurden mit folgenden Parameterwerten erzeugt:

• Poissonprozess: Intensit¨at = 0.1

• Clusterprozess: Intensit¨at f¨ur Clusterzentren = 0.0005, Intensit¨at f¨ur die Cluster = 0.5, Clusterradius = 20

• Hardcorprozess: Intensit¨at = 0.5, Hardcoreradius = 15

Folgender Pseudocode beschreibt einen Poissonprozess, wobei minx, maxx, miny, maxy und intensity Eingabeparameter sind.

// size of the sampling window (volume) double minx, maxx, miny, maxy;

double sizex = maxx-minx;

double sizey = maxy-miny;

// intensity double intensity;

// modify the volume with the intensity

// (for the simulation of the Poisson distribution) double expectpts = sizex * sizey * intensity;

// a Poisson distributed random variable can be simulated by // adding exponentially distributed random variables

// nextDouble() yields a value within [0,1]

Random generator = new Random();

double e = -Math.log(generator.nextDouble());

while (e <= expectpts) {

// realise a randomly within the sampling // window distributed point

double x = minx + generator.nextDouble() * sizex;

double y = miny + generator.nextDouble() * sizey;

// ... and e.g. print out the coordinates System.out.println("X: " + x + " Y: " + y);

e -= Math.log(generator.nextDouble());

}

(2)

Teilaufgabe a) (10 Punkte)

Schreiben Sie ein Programm, bestehend aus mehrer Klassen, welches in der Lage ist die be- schriebenen 3 Punktprozesse zu simulieren.

Die simulierten Daten sollen anschließend im PBM-Format, welches f¨ur das Speichern von monochromen Bildaten entworfen wurde, in eine Datei geschrieben werden. Eine PBM-Datei ist so einfach wie m¨oglich aufgebaut: Sie beginnt jeweils mit einem Header (erste Zeile), dem die Bildinformation unmittelbar (zeilenweise) folgt. Der Header ist immer in ASCII geschrieben, wobei die einzelnen Eintr¨age durch White Spaces getrennt werden. Die Bildinformation kann entweder im ASCII- oder Bin¨arformat gespeichert werden.

Es gibt jeweils zwei Header-Versionen, von denen eine f¨ur ASCII- und eine f¨ur bin¨are Bild- informationen benutzt wird. Wir beschr¨anken uns auf den ASCII-Fall. Ein ASCII-PBM-Header besteht aus folgenden Eintr¨agen, jeweils durch White Spaces getrennt:

• Magic Value: P1 f¨ur ASCII-Bildinformation

• Image Width: Breite des Bildes in Pixeln (ASCII-Dezimalwert)

• Image Height: H¨ohe des Bildes in Pixeln (ASCII-Dezimalwert) Beispiel:

P1 7 7 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 1 0 1 0

F¨ur weitere Inforamtionen zum PBM-Bilddateiformat siehe man pbm.

Teilaufgabe b) (10 Punkte)

Erweitern Sie Ihr Programm so, dass auch ein Clusterprozess Basis f¨ur einen Hardcoreprozess sein kann und umgekehrt.

Viel Erfolg!

Referenzen

ÄHNLICHE DOKUMENTE

[r]

[r]

Bei Anwendung von chromsaurem Bleioxyd statt Kupferoxyd verfährt man genau in der zuerst beschrie- benen Weise. Das chromsaure Bleioxyd wird vor jeder Analyse in einer

Damit aber der Ärzteschaft nicht das Heft aus der Hand genommen wird, bleibt es ein zentrales Anliegen der Bundesärztekam- mer, der medizinischen Fachgesellschaften und

Man kann darüber auch eine neue Funktion definieren: die (erste) Ableitung [derivative] f 0 der Funktion f :8. Alternative

ö a s Florengebiet, dessen Bearbeitung uns hier vorliegt, umfasst einen wesentlichen Theil des nordwestlichen Estlands, nämlich die Umgebung Revals mit den Inseln

[r]

Ubungsaufgaben zur Analysis II ¨ Blatt VI vom 20. Mai, 10 Uhr im Postfach Ihrer Tutorin/Ihres Tutors) Bemerkung: Vereinbarungsgem¨ aß bezeichnet kxk die Euklidische Norm kxk 2 f¨ ur x