Skip to main content

Kollision auf dem Meer

Situation: Die Wege von zwei Schiffen kreuzen sich. Von beiden Schiffen zweidimensionale kartesische Koordinaten von Start- und Zielhafen bekannt. Die Schiffsrouten können näherungsweise durch eine geradlinige Verbindung von Start und Zielhafen dargestellt werden. Beide Schiffe fahren mit unterschiedlichen, jedoch konstanten Geschwindigkeiten von den Starthäfen zum selben Zeitpunkt los. Wind und Strömung werden vernachlässigt. Der Mindestabstand zwischen den zwei Schiffen darf eine bestimmte Entfernung nicht unterschreiten. Eine Kollision liegt vor, wenn der Mindestabstand unterschritten wird.

Aufgabe: Der Auszubildende entwickelt ein Programm zur Ermittlung und Darstellung der Bedingungen für die Kollision der beiden Schiffe.

Arbeitsschritte:

  1. Fertigen Sie eine Skizze an. Benennen Sie die benötigten mathematischen und physikalischen Größen.
  2. Entwickeln Sie ein Modell zur Simulation dieses Sachverhaltes. Geben Sie dazu die benötigten Klassen und Objekte an. Visualisieren sie die Bewegung der Schiffe vom Start- zum Zielhafen. Ermöglichen Sie die interaktive Eingabe der benötigten Parameter über ein GUI.
  3. Entwickeln Sie das mathematische Modell zur Abstandsberechnung und leiten Sie hieraus eine Methode für eine Kollisionserkennung.
  4. Erweitern Sie ihre Visualisierung um die Darstellung des Abstands zwischen den beiden Schiffen (Grafisch/Zahl). Entscheiden Sie hierbei, ob eine Kollision vorliegt. Reflektieren Sie kritisch ihr gewähltes Zeitintervall und optimieren Sie es.
  5. Erweitern Sie ihre Lösung auf eine beliebige Anzahl von weiteren Schiffen mit zusätzliche Start- und Zielhäfen. Weiterhin gilt für alle Schiffe die identische Abfahrtszeit.

Ergebnis: Der Auszubildende lernt seine Programmierkenntnisse mit seinem Wissen über die lineare Algebra zu verknüpfen sowie diese praktisch anzuwenden.

Musterlösung: Java-Code

Zeitpunkt: 1. Ausbildungsjahr

Dauer: 5 Tage

Betrieb: Berufsbildpositionen 1.3a, 1.4a, 3.1b

Berufsschule: Lernfelder 3, 4 und 5