Basismodul Computerlinguistik

Übung

Abschlussprojekt

Abgabe bis einschließlich 26.01.2022 in der unter Abschnitt 2 angegebenden Form an e.nie@campus.lmu.de

1. Aufgabenstellung

In diesem Projekt wird der Daciuk-Algorithmus zur Konstruktion eines Minimalen Lexikonautomaten mit verschiedenen Erweiterungen implementiert.

1.1 Organisatorische und technische Hinweise

Die Aufgabe kann höchstens zu zweit bearbeitet werden.

Akzeptiert werden Programme, die unter Python 3.8 lauffähig sind. Das bedeutet für die Python3-Version, mit der entwickelt wird: Version <= 3.8

Es darf die komplette Built-In Library verwendet werden, jedoch mit Ausnahme von graphviz keine externen (third-party) Libraries.

Bei Unklarheiten oder sonstigen Fragen zur Aufgabenstellung - fragen!

1.2 Bestehen

Die Aufgabe gilt als bestanden, wenn:

1.3 Basisanforderung

1.4 Erweiterungen

Folgende Erweiterungen für das Basisprogramm sind möglich. Es sollen mindestens 3 von 5 Erweiterungen umgesetzt werden.

Die Perfect Hashing-Labels und die Tarjan-Tabelle können sowohl paralle zum Daciuk-Algorithmus als auch mit einem bereits erstellten Automaten berechnet / konstruiert werden.

Hinweis: Es bietet sich an, die verschiedenen Nutzereingaben über eine Art 'Hauptmenü' abzufragen, in dem der Nutzer die verschiedenen Programmfunktion aufrufen kann. Nutzereingaben können einfach über die input()-Funktion abgefragt werden. Beispiel:

Was möchtest du tun?
    (1) Wort abfragen
    (2) Automaten zeichnen
    (3) Sprache ausgeben
Bitte eine Nummer eingeben >>> _

2. Abgabeform