Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität...

15
Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser Kinematik Abschlussvortrag zur Studienarbeit

Transcript of Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität...

Page 1: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 1

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität

Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser Kinematik

Abschlussvortrag zur Studienarbeit

Page 2: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 2

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEinleitung

Struktur des Vortrags

• Motivation• Algorithmen• Evaluationsergebnisse• Zusammenfassung• Ausblick

Page 3: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 3

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätMotivation

• Projektgruppe SoSe 2004 / WiSe 2004/05„Wege und Bewegung in virtuellen Produktionsumgebungen“

• derzeit keine Roboter• dazu notwendig:

Raumkoordinaten ↔ Gelenkwinkel• Gelenkwinkel → Raumkoordinaten

(„Direkte Kinematik“)– einfach: Vektoraddition

• Raumkoordinaten → Gelenkwinkel(„Inverse Kinematik“)– komplex: nicht eindeutig, Abhängigkeiten der Gelenke

• verschiedene Ansätze zur Lösung

Page 4: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 4

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätAlgorithmen

Übersicht

• Jacobi-Matrizen• Abwandlung von Cyclic Coordinate Descent (CCD)

• iterativ• liefern zur Laufzeit Ergebnisse• relativ allgemein anwendbar• gut vergleichbar

Page 5: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 5

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätAlgorithmen

Jacobi-Matrizen1. Matrix erstellen (3 x Gelenkanzahl)

2. Spalte i füllen mit Vektor:

3. Pseudoinverse der Matrix bilden

4. Fehlervektor berechnen:

5. Fehlervektor skalieren

6. Pseudoinverse mit Fehlervektor multiplizieren

7. Ergebnis ist Vektor mit Winkeländerungen

8. falls Zielpunkt nicht erreicht wurde, wiederholen

ip

t

e

s

)( ii psv

ste

Page 6: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 6

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätAlgorithmen

Cyclic Coordinate Descent (CCD)

Iteration:1. Rotationsebene berechnen

2. dem Ziel nächsten Punktin der Ebene bestimmen

3. Rotationspunkt in derEbene bestimmen

4. Vektor vom Rotationspunkt zum Endeffektor berechnen

5. Vektor vom Rotationspunkt zum Ziel in der Ebene berechnen

6. Winkel zwischen den beiden Vektoren bestimmen

7. Segmentgelenk um den berechneten Winkel verändern

8. falls Zielpunkt nicht erreicht wurde, nächstes Gelenk ändern

t

s

r

ip

t

e

s

Page 7: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 7

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Algorithmen-Parameter

• beide Algorithmen haben Parameter, die das Ergebnis beeinflussen können

• Untersuchung dieser Parameter hinsichtlich Geschwindigkeit und Berechnungserfolg

• alle Untersuchungen wurden auf mehreren simulierten Robotern durchgeführt

Page 8: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 8

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Länge des Fehlervektors

• Jacobi-Matrix liefert nur für infinitesimal kleine Fehlervektoren exakte Ergebnisse

• Abschätzung zwischen Aufwand und Fehler

• beste Trefferquote zwischen 0,7 und 0,9• Aufwand in diesem Bereich am geringsten• je komplexer die kinematische Kette, desto weniger

drastisch verändern sich die Ergebnisse

Page 9: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 9

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Iterationsrichtung bei CCD

• CCD kann Iteration bei beliebigem Gelenk beginnen• frühe Gelenke bewirken starke Positionsänderungen

• keine allgemeingültige Aussage möglich• Unterschiede im Aufwand relativ gering• deutliche Unterschiede bei Trefferquote

Page 10: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 10

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Erfolgsquote

• Jacobi-Matrizen:– allgemein recht schnell– nach einigen Iterationen nur noch geringe Verbesserung– abnehmende Erfolgsquote bei komplexeren Ketten

• CCD:– langsamer, aber bessere Erfolgsquote– allmählicher Anstieg der Quote– herausragende Ergebnisse beim PUMA 560

Page 11: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 11

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Veränderung der Distanz

• Jacobi-Matrizen:– anfangs deutliche Verringerung des Abstandes– vorläufiges Minimum innerhalb von 10 Iterationen– später leichter Anstieg

• CCD:– Verringerung der Distanz unter 20% nach 2 Iterationen– logarithmischer Verlauf

Page 12: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 12

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätEvaluation

Berechnete Gelenkwinkel• Jacobi-Matrizen:

– errechnet geringere Winkelunterschiede– resultiert in natürlicheren Winkelstellungen– neigt bei langen Ketten zur Änderung früher und später

Gelenke

• CCD:– größerer Aufwand– extremere Winkelstellungen– neigt bei langen Ketten zur Änderung früher Gelenke

Page 13: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 13

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätZusammenfassung

• basierend auf der Arbeit der PG WuBiviPu• Vorstellung zweier iterativer Algorithmen

– Jacobi-Matrix-Algorithmus– Cyclic Coordinate Descent

• Evaluation der Parameter• Vergleichende Evaluation der Algorithmen

– Geschwindigkeit– Erfolgsquote– Distanzveränderungen– berechnete Winkeländerungen

Page 14: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 14

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätAusblick

• Verbesserung der Abbruchbedingungen(insbesondere bei CCD)

• Gelenkgewichtung kann durch künstliche Gewichtung vermieden werden

• Verschlechterung der Ergebnisse beobachten

• Verwendung in PG-Software(derzeit u.a. keine XML-Schnittstelle, Modelle, etc.)

Page 15: Tobias Koch 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Vergleichende Evaluation zweier Methoden zur Berechnung von Inverser.

Tobias Koch 15

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität

E-Mail: [email protected]

Januar 2007

Ich danke für Ihre Aufmerksamkeit!Ich danke für Ihre Aufmerksamkeit!