derletztekick.com

News → Archiv 2011

Das letzte in diesem Jahr...

erstellt am

Die Ausgleichungssoftware Logi - Local Observations to Global Integration - habe ich inzwischen weiterentwickelt. Der Fokus lag zum einen auf der Erweiterung der Schemadatei XSD, die zum Validieren von zu importierenden XML-Files in Logi genutzt werden kann. Hier ist es nun möglich festzulegen, welche Transformationsparameter pro Subsystem geschätzt und welche in der Ausgleichung festgehalten werden sollen. Zum anderen habe ich verstärkt an der Methode zur Budgetierung der a-priori Unsicherheiten gearbeitet. War es in der ersten Version nur möglich, die a-priori Varianz-Kovarianz-Matrizen der Subsysteme über das Varianzfortpflanzungsgesetz zu ermitteln, so kann dies nun wahlweise auch über eine Monte-Carlo-Simulation erfolgen. Insbesondere sieht der Leitfaden zur Angabe der Unsicherheit beim Messen (engl. Guide to the Expression of Uncertainty in Measurement) vor, dass neben den Einflussgrößen auch deren Wahrscheinlichkeitsverteilungen zu berücksichtigen sind. Um das Problem der Faltung hierbei aus dem Weg zu gehen, wird in einer Erweiterung des GUMs auf die Monte-Carlo-Simulation verwiesen. Erfolgt demnach die Ableitung der a-priori Unsicherheiten über eine Monte-Carlo-Simulation, so können drei Wahrscheinlichkeitsverteilungen (Normalverteilung, Dreieckverteilung und Rechteckverteilung) berücksichtigt werden.

Auch das Programm JAG3D - Java Graticule 3D -, welches u.a. beim Ausgleichungsseminar in Berlin erfolgreich eingesetzt wurde, hat einige neue Feature bekommen. Zum Teil resultierten diese aus Anregungen von Teilnehmern des IGG Praxisseminar. Insbesondere die Deformationsanalyse, bei der Veränderungen in den Stabilpunkten auftraten, erforderte einen verhältnismäßig hohen Editieraufwand der Eingangsdaten. Ursache hierfür ist, dass das Datenmaterial, in dem der Stabilpunkt bisher nur einmal vorkam, derart geändert werden muss, dass dieser nun mit unterschiedlichen Punktnummern in beiden Epochen vorliegen muss. Ein neuer Dialog, der kategorie- oder gruppenbezogen aufgerufen werden kann, erleichtert nun das Umbenennen der entsprechenden Punktnummern.

Abschließend möchte ich mich bei allen Anwendern für Anregungen, gefundene Unstimmigkeiten und natürlich für das positive Feedback bedanken. Ich wünsche Euch allen eine schöne Weihnachtszeit und einen guten Rutsch ins neue Jahre 2012!

IGG Praxisseminar Ausgleichungsrechnung 2011 setzt OpenSource Programm Java Graticule 3D ein

erstellt am

Praxisseminar Ausgleichungsrechnung 2011 - Neitzel, Weisbrich, Lösler und Auditorium
IGG Praxisseminar Ausgleichungsrechnung 2011

Am 14. und 15. Oktober 2011 fand erstmalig das Praxisseminar Ausgleichungsrechnung in Berlin statt. Bei diesem Seminar handelt es sich um eine Kooperation des Instituts für Geodäsie und Geoinformationstechnik der TU Berlin und dem DVW-Berlin-Brandenburg e.V. Ziel dieses Seminars war es, die theoretischen Grundlagen der Methode der kleinsten Quadrate durch praxisnahe Beispiele den Teilnehmenden anschaulich darzubieten. Insbesondere sollten Vorbehalte gegenüber der Anwendung der Ausgleichung bei der geodätischen Netzausgleichung abgebaut werden und die Zuhörer für die entstehenden Vorteile bei einer sachgerechten Auswertung sensibilisiert werden. Hierbei spielte auch der Einsatz von anwendungsorientierten Softwarepaketen eine große Rolle, die letztlich das Handwerkszeug für den Praktiker darstellen. Durch die graphische Aufbereitung der Daten durch diese Programme kann heute das aufwendige und zeitintensive studieren von Ergebnislisten fast vollständig entfallen.

Gerade um den Anreiz für Ingenieurbüros zu erhöhen, die Ausgleichung in den beruflichen Alltag häufiger mit einzubeziehen, wurde eine freizugängliche Software beim IGG-Praxisseminar verwendet. Hierzu wurden im Vorfeld vom Lehrstuhl für Geodäsie und Ausgleichungsrechnung, den Herr Prof. Dr.-Ing. Frank Neitzel innehat, verschiedene Ausgleichungsprogramme getestet und sich letztlich für das Softwarepaket Java Graticule 3D entschieden.

Aufgrund der bereitzustellenden Rechnerplätze war die Anzahl der Teilnehmer stark begrenzt. Dies führte dazu, dass bereits kurz nach der Ankündigung das Seminar überbucht war. Eine zeitnahe Wiederholung dieser Fortbildung war somit die logische Konsequenz, sodass am 18. und 19. November 2011 das Seminar erneut durchgeführt wurde.

Bündelausgleichung mit Local Observations to Global Integration

erstellt am

Local Observations to Global Integration - Software zur dreidimensionalen Bündelausgleichung
Logi - Verkettete 3D-Koordinatentransformationen

Auch wenn es in der letzten Zeit nur wenig Ankündigungen und Erneuerungen gab, war ich nicht untätig.
In der Ingenieurvermessung insbesondere bei der Auswertung von Lasertracker-Daten hat sich die Ausgleichung mittels verketteter Koordinatentransformationen etabliert. Da diese Instrumente nicht über eine Möglichkeit zur Horizontierung verfügen, ist die Schiefstellung der Stehachse bei der Auswertung entsprechend zu modellieren. Durch das Verketten der Standpunkte mittels Transformationen innerhalb einer sogenannten Bündelausgleichung lässt sich diese Schiefstellung durch entsprechende Rotationsparameter im funktionalen Modell modellieren. Werden neben den eigentlichen Passpunkten, die zur Datumsbildung herangezogen werden, auch Bedingungen zwischen Punkten, die mehrfach von verschiedenen Standpunkten aus gemessen wurden, bei der Bündelausgleichung berücksichtigt, entsteht ein hypothesenfreies homogenes Netz.

Das für die Ausgleichung wichtige stochastische Modell lässt sich durch das Anwenden des Varianzfortpflanzungsgesetzes auf die Polarpunktbestimmung ableiten, sodass weiterhin die a-priori Informationen der originären Messwerte vorzugeben sind. Dieses Konzept habe ich in einem neuen Programm namens Logi umgesetzt. Logi steht hierbei für Local Observations to Global Integration. Einen ersten Schnappschuss samt Quellcode habe ich bei SourceForge.net bereitgestellt. Ähnlich wie JAG3D ist Logi sowohl in Deutsch als auch in Englisch verfügbar. Zur Datenspeicherung setze ich wiederum auf das Datenbanksystem HSQLDB, welches ein 100% Java-Projekt ist und somit der Plattformunabhängigkeit von Logi nicht entgegensteht. Beim Datenimport habe ich erstmalig mit XML experimentiert. Eine XSD-Schemadatei liegt dem Downloadpacket bei. Derzeit lassen sich noch keine Angaben zum stochastischen Modell in der XML-Datei hinterlegen. Insofern ist dieser erste Entwurf nur eine Zwischenstufe. Den Entwicklungsstand von Logi habe ich auf Alpha gesetzt, da ich noch keine umfangreichen Erfahrungen mit dem Programm gesammelt habe. Ich freue mich daher über jedes Feedback zum Tool, welches ihr im Forum an mich herantragen könnt.

Local Observations to Global Integration

Weiterentwicklung und Untersuchungen von JAG3D und Modulen

erstellt am

In der Literaturecke haben sich inzwischen zwei neue Bücher eingefunden. Zum einen die Dissertation von Drixler, die sich mit der Parameterschätzung von geometrischen Formen befasst, und zum anderen das Buch zur Softwareentwicklung: Java von Kopf bis Fuß - Ein Buch zum Mitmachen und Verstehen von Sierra und Bates, welches ich äußerst gelungen fand.

Auch bei den Programmen gab es zwischenzeitlich immer mal wieder ein kleines Update. Die meisten sind aufgrund der Nachfragen im Forum zur Shell-basierten Nutzung notwendig gewesen aber auch an mich herangetragene Wünsche von Ingenieurbüros habe ich versucht umzusetzen. Besonders erfreulich sind die Ergebnisse von zwei Untersuchungen.
So wurde die Netzausgleichung und die Formanalyse erneut untersucht und mit kommerziellen Lösungen im Rahmen des International Workshop on the Quality of Geodetic Observation and Monitoring Systems 2011 (QuGOMS'11) untersucht und im Beitrag: Comparison of Results from SpatialAnalyzer and Different Adjustment Programs. publiziert. Sowohl die Netzausgleichung JAG3D als auch das Modul zur Formanalyse, bei der das strenge Gauß-Helmert-Modell implementiert ist, lieferten hierbei adäquate Ergebnisse ab.
An der Fachhochschule Frankfurt wurde darüber hinaus von Sebastian Jäcklin die in JAG3D integrierte Deformationsanalyse näher betrachtet und mit dem kommerziellen Programm CAPLAN von der Cremer Programmentwicklung GmbH verglichen. In seiner Bachelorarbeit: Vergleich der Auswertestrategien von CAPLAN und JAG3D für Deformationsmessungen. kommt Jäcklin zu dem Schluss, dass in der Lageausgleichung »beide Programme die gleichen Ergebnisse liefern« und »JAG3D (neben den veränderten Objektpunkten auch) den verschobenen Sicherungspunkt direkt (findet). [...] Ein Freies Programm kann mit einer kommerziellen Lösung also mithalten und gute Ergebnisse liefern.«
Für die Überlassung der Arbeit nochmals herzlichen Dank an dieser Stelle!

Nach zweiwöchigem Urlaub auf der Insel Öland in Schweden hat mich der Alltag langsam wieder eingenommen. Zurückbleiben Erinnerungen an den Flair Ölands mit seiner wunderschönen Landschaft und den historischen Plätzen und Orten aus der Eisenzeit. Unzählige Mühlen, Gräberfelder, Schiffsetzungen und Burgruinen haben wir besucht. Besonders beeindruckt war ich von den Runensteinen, die Öland bietet. Ein paar ausgewählte Schnappschüsse habe ich in einer kleinen Galerie zusammengefasst.

automatische Varianzkomponentenschätzung in JAG3D integriert

erstellt am

Linux - Kubuntu
Linux - Kubuntu

Einige grundsätzliche Erneuerungen innerhalb der Ausgleichungssuite JAG3D sind seit dem letzten Eintrag hinzugekommen bzw. haben sich verändert. Prof. Dr.-Ing. Wolf-Ulrich Böttinger von der HFT Stuttgart hatte in Gesprächen angeregt, die geschätzten Varianzkomponenten direkt in der Ausgleichung zu berücksichtigen um dadurch eine fast ideale Abstimmung des stochastischen Modells zu erzielen.
Ist das Projekt bereits von groben Fehlern befreit und liegt eine erste (gute) Abstimmung der Beobachtungstypen vor, so kann nun eine iterative Varianzkomponentenschätzung zugeschaltet werden. In jedem Berechnungsschritt werden hierbei die Varianzanteile der Beobachtungsgruppen einschließlich der beweglichen Anschlußpunkte geschätzt und in der nächsten Iteration berücksichtigt. Das Optimum ist erreicht, wenn das Verhältnis zwischen Varianzfaktor a-priori und a-posteriori bei Eins liegt. Eine sinnvolle Schätzung kann jedoch nur erzielt werden, wenn die Gruppenredundanzen ausreichend hoch sind. Da bei der Varianzkomponentenschätzung in jeder Iteration die Inverse der Normalgleichung benötigt wird, dauert die Berechnung bei der iterativen Anpassung länger.

"Die notwendige Fähigkeit, auf gängigen Betriebssystemen zu laufen, ist trivial", schreibt Vetter (2010) in Anlehnung an die ISO 25000. Da JAG3D in der plattformunabhängigen Sprache Java entwickelt wird, sollte das Ausgleichungsprogramm auf allen Systemen laufen, auf denen SUN eine Laufzeitumgebung verfügbar gemacht hat. Speziell für die Netzausgleichungssoftware JAG3D wird im Artikel über die Kongruenzanalyse diese notwendige Fähigkeit gegenwärtiger Programme demonstriert und Linux als Betriebssystem verwendet. Das Java allein kein Garant ist für lauffähigen Code auf allen Systemen, zeigte mir jüngst ein Eintrag im Forum. Sowohl die Formanalyse als auch die Koordinatentransformation, die beide vollständig überarbeitet wurden, konnten unter Linux nicht ordnungsgemäß benutzt werden, sodass ich hier entsprechende Anpassung in zwischen vorgenommen habe, die dieses Problem beheben. Ein Update der Software ist somit empfehlenswert, auch wenn unter Windows dieses Problem nicht auftritt.

JAG3D speichert seine Daten in der Java-basierten Datenbank HSQLDB. Diese wurde auf die aktuelle Version 2.2. gebracht. Alte Projekte, die mit der Version 1.8 noch erzeugt wurden, erfahren automatisch ein Upgrade beim Laden in JAG3D.

Opera Extension

erstellt am

Opera
Fastest Browser on Earth

Während viele Browser nur noch Browser sind, hält der flinke Skandinavier Opera weiter an einer Komplettlösung fest. Im Vergleich zu den übrigen Mitbewerbern schaffen es die Opera Entwickler, trotzdem ein schlankes Stück Software zu erstellen, welches wenig Plattenplatz benötigt. Vorsprung durch Innovation, ist das Markenzeichen von Opera und so stellen Entwicklungen wie Tabbed-Browsing oder Speed-Dial richtungsweisende Feature dar. Gehören RSS-Reader und Mail-Programm seit Jahren zum Standardpacket, stellt man mit Dragonfly dem Nutzer ein mächtiges Entwicklungswerkzeug für Websites zur Verfügung. Benötigt eine so Umfangreiche Software wie Opera dann eigentlich noch Erweiterungen? Durchaus.

Seit kurzem gibt es daher die Möglichkeit, auch für Opera eigene Extension zu erzeugen und in den Browser zu integrieren. Das Prinzip beim Erstellen ist ähnlich dem bei der Widget-Programmierung und baut auf JavaScript auf. Damit ist das Erzeugen von Extension recht intuitiv, wie ich finde, sodass ich ein paar meiner JavaScripte auch als Opera-Extension auf der offiziellen Seite anbiete. Bisher portiert sind Sudoku, SNAKE und der JavaScript-Kalender. Ferner ist auch das Tetris-Script als Extension verfügbar jedoch stammt diese Portierung nicht von mir. Viel Spaß mit diesen Erweiterungen.

Reduktionen von Messwerten bei der Netzausgleichung mit JAG3D

erstellt am

JAG3D - Modell zur geometrischen Reduktion im räumlichen Netz
Definition des Messkoordinatensystems (Schwarz 1995)

Das Ausgleichungsprogramm JAG3D konnte bisher nur in einem kartesischen System rechnen, bei dem die Lotlinien als parallel angenommen wurden. Je nach Aufgabenstellung und Genauigkeitsanforderungen ist dieser Ansatz für kleinräumige Netze vollkommen legitim. Mit zunehmender Netzausdehnung führt dieses Modell demnach zu Spannungen in den Beobachtungen. Korrekte Messungen werden im Zuge der Ausgleichung fälschlicherweise als fehlerbehaftet ausgewiesen. Viele Ausgleichungsprogramme umgehen dieses Problem, indem die Lage von der Höhe getrennt ausgewertet wird und entsprechende Reduktionen in der Vorverarbeitung die Beobachtungen in einer Projektionsfläche abbilden.

JAG3D unterstützt in der aktuellen Version für 2D-Netze (bzw. für 2D+H-Netze) gängige Reduktionen für Richtungen und Strecken. Hierzu zählen für Horizontalstrecken die Höhenreduktion und die Gauß-Krüger bzw. UTM-Reduktion, sowie die Richtungsreduktion. Der Nutzer kann wählen, welche Reduktionen an den Beobachtungen angebracht werden sollen und welche nicht.

Für echte 3D-Netze kann der Nutzer eine geometrische Reduktion wählen. Hierbei werden die Beobachtungen von einer Kugel, die als Erdmodell angenommen wird, in ein räumliches Koordinatensystem überführt. JAG3D berücksichtigt hierbei Höhenunterschiede, Richtungen, Schrägstrecken und Vertikalwinkel. Um die geometrische Reduktion durchzuführen, benötigt das Ausgleichungsprogramm einen Bezugspunkt. Dieser Bezugspunkt kann frei gewählt werden und muss nicht zwingend ein real-existierender Netzpunkt sein. Der Vektor, den der Erdmittelpunkt mit diesem Bezugspunkt definiert, ist der Normalenvektor der Rechenebene, in die die Beobachtungen überführt werden. Die Lotabweichungen sind im Bezugspunkt demnach Null. Um die Rechenebene eindeutig zu definieren, ist neben dem Richtungsvektor ein Abstand vorzugeben. Dieser Abstand ist die Höhe des Bezugspunktes über der Kugelbezugsfläche - siehe Graphik.

Um abzuschätzen, wann diese geometrische Reduktion Sinn macht, kann die Lotabweichung, die sich aus dem Kugelmodell ergeben, herangezogen werden. Diese beträgt 0.1mgon/10m. Bei einem Netz von wenigen hundert Metern und erhöhten Genauigkeitsanforderungen kann sich diese Abweichung demnach bereits bemerkbar machen und sollte nicht vernachlässigt werden.
Bedanken möchte ich mich bei Prof. Dr.-Ing. Wolf-Ulrich Böttinger, der wertvolle Hinweise im Zuge der Umsetzung gab. Ganz besonders möchte ich mich auch bei Prof. Dr.-Ing Wilfried Schwarz bedanken, der die Modellbildung hergeleitet hat und Empfehlungen zu vertiefenden Literaturstellen lieferte.

JSudoku - ein Java-Klon des Logikrätsels

erstellt am

Sudoku JavaScript (Vorschau)
Sudoku JavaScript

Das Sudoku-JavaScript, welches ich erstellt habe, wurde, sofern man der sourceforge.net Statistik glauben darf, bereits über 2800-mal heruntergeladen. Ich habe daher dieses Script in eine Desktop-Anwendung portiert und einen Klon in Java erzeugt. JSudoku heißt diese Anwendung, die ebenfalls auf den Servern von sourceforge.net zu finden ist und heruntergeladen werden kann. Statt einem Schieberegler hat der Anwender die Möglichkeit, die Anzahl der verstecken Felder direkt einzugeben. Für Notizen ist weiterhin ein zusätzliches Textfeld vorhanden. Wahlweise kann auch ein X-Sudoku Puzzle erstellt werden, bei dem auch die beiden Hauptdiagonalen nur aus den Ziffern 1-9 bestehen dürfen. Viel Spaß beim Rätseln...

Vernetzt und ausgeglichen

erstellt am

Ende letzten Jahres ist die Festschrift Vernetzt und ausgeglichen anlässlich der Verabschiedung von Prof. Schmitt vom Geodätischen Institut des Karlsruher Instituts für Technologie erschienen. Die über 350 Seiten starke Veröffentlichung enthält auch den Artikel, der verschiedene kostenpflichtige, kostenlose und freie Netzausgleichungsprogramme miteinander vergleicht. Um den Bogen zur vorrausgegangenen DVW-Publikation in Qualitätsmanagement geodätischer Mess- und Auswerteverfahren zu schlagen, wurde in diesem Beitrag dasselbe Datenmaterial verwendet. Es zeigte sich, dass bei klassischem tachymetrischen Beobachtungsmaterial die getesteten OpenSource-Programme qualitativ äquivalente Ergebnisse zu namenhafte kommerzielle Lösung lieferten und sie somit eine Alternative für den geodätischen Alltag bieten. Die Festschrift kann zum einen käuflich für fast 70 Euro erworben oder kostenfrei als PDF bezogen werden. Ferner ist der o.g. Beitrag auch online verfügbar.

FormFittingToolbox 2.0

erstellt am

Nachdem ich im letzten Jahr die Ausgleichungssoftware Java Graticule 3D vollständig überarbeitet habe und mir gerade in den Punkten Ressourcenverbrauch und Berechnungszeit grundlegende Gedanken gemacht hatte, profitiert nun auch das Formanalyseprogramm FormFittingToolbox davon und ist in der Version 2.0 zusammen mit JAG3D verfügbar - kostenlos, versteht sich.
Ich habe das Tool komplett neu geschrieben, sodass wiederum gewisse Gemeinsamkeiten zu JAG3D vorliegen. Die FormFittingToolbox nutzt nun auch Sprachdateien. Derzeit sind Deutsch und Englisch verfügbar. Wer Lust und Laune hat, die Oberfläche zu übersetzen, soll dies bitte tun. Der HTML-Report wird über ein Template-System erzeugt, sodass individuelle Reports erstellt werden können. Anstatt nur Standardabweichungen für die Punktgewichtung zu nutzen, sind nun auch vollbesetzte Varianz-Kovarianz-Matrizen beim Import möglich. Das Programm versucht - wie gehabt - Startwerte selbstständig aus der gegebenen Punktwolke zu ermitteln. Da diese nicht immer in ausreichender Güte bestimmt werden können, kann optional der Levenberg-Marquardt-Algorithmus aktiviert werden um Konvergenzproblemen entgegenwirken.

Die Ausgleichung findet im strengen Gauß-Helmert-Modell statt, so wie auch schon bei der alten Version. Untersuchungen an der FH Mainz am Beispiel der ausgleichenden Ebene belegen dies. Aus nummerischen Gründen wird nun generell eine Schwerpunktreduktion intern vorgenommen und muss nicht mehr explizit gewählt werden. Selbstverständlich wird diese Reduktion bei der Ergebnispräsentation am Ende wieder rückgängig gemacht, sodass sich die Parameter auf das unreduzierte System beziehen. Die Qualität der geschätzten Parameter kann anhand ihrer Standardabweichung abgelesen werden. Da die interne Reduktion auf den Schwerpunkt z.T. auch Auswirkungen auf die abgeleiteten Varianzen und Kovarianzen haben, wird die Varianz-Kovarianz-Matrix mittels Fehlerfortpflanzungsgesetz ins Ausgangssystem transformiert.

Die teilweise bemängelte Rechengeschwindigkeit bei großen Punktmengen konnte bereits optimiert werden. Ferner hat der Anwender nun die Möglichkeit, nur die Formparameter zu bestimmen und auf stochastische Größen zur Bewertung der Formpunkte zu verzichten. Liegen z.B. 500 Punkte für eine Form vor, so sind die Redundanzanteile, die Standardabweichungen oder der geschätzt grobe Fehler eines einzelnen Punktes eher uninteressant. Anders sieht es jedoch aus, wenn die Punktwolke klein ist und jeder Punkt somit einen spürbaren Anteil an der finalen Lösung hat. Hier ist schon interessant, ob Ausreißer das Ergebnis verzerren.

Eine Untersuchung mit 240 Beispieldatensätzen vom National Institute of Standards and Technology (NIST) haben ergeben, dass lediglich bei 4 Formen keine Konvergenz erzielt werden konnte mit der FormFittingToolbox. Ursache für diese Konvergenzprobleme sind schlecht bestimmte Näherungswerte. Nichtsdestotrotz ist das für mich ein zufriedenstellendes Ergebnis.