Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

ERROR

Alter Hase

  • »ERROR« ist der Autor dieses Themas

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

1

08.11.2015, 14:42

Turingmaschine Palindrome

Hier sind ja auch einige hauptberufliche/studierte Informatiker vertreten und daher dachte ich mir, vielleicht weiss ja einer von euch Rat.

Wir haben eine Hausaufgabe (siehe Anhang), bei der ich nicht wirklich weiter komme. Eine 1-Band DTM (deterministische Turingmaschine) zur Bestimmung von Palindromen ist mit einer Laufzeit von O(n²) ja trivial. Auch wenn es in der Aufgabenstellung nicht steht, wird n hier die Eingabenlänge sein.
Jedoch finde ich keinen Weg, eine DTM zu bauen, die das ganze in der vorgegeben Laufzeit bestimmt. Ausserdem verwirrt mich das, mit dem beliebig kleinen Epsilon etwas. Ja, mir ist das Prinzip aus zB der Analysis bekannt, aber dadurch wird das n² ja extrem klein und irgendwie fast schon unnötig. Da ein Teil der Laufzeit O(n) ist, habe ich mir schon einige Verfahren überlegt, bei dem die DTM einmal(oder halt linear wachsend) über die Eingabe gehen muss und danach in sehr kleiner Zeit (epsilon*n²) bestimmen kann, ob es ein Palindrom ist oder nicht, aber alle Überlegungen liefen ins Leere. Wobei ich denke, dass es so im Prinzip laufen muss.
Die Sache mit den Zuständen und der Zustandsmenge ist sicherlich ein Tipp, welcher sich mir aber nicht wirklich erschliesst. Da wir idR ein binäres Alphabet für die Eingabe haben(sehr doof, dass es hier nicht genau spezifiziert ist), könnte man natürlich jede mögliche Kombination an Eingaben als Zustände codieren, aber dann wäre die Zustandsmenge ja auch irgendwie unendlich und das ist ja nicht möglich.

Kann mir hier vielleicht jemand mit Tipps weiterhelfen? Also das ist die Aufgabenstellung, mehr steht da nicht. Solltet ihr noch andere Definitonen oder so brauchen, einfach sagen ;)

Schonmal danke für jeden, der versucht mir zu helfen :)

ERROR
»ERROR« hat folgendes Bild angehängt:
  • ebkfsH3A3.PNG

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

08.11.2015, 15:15

Ist Epsilon * n² + O(n) denn nicht O(n²)?

ERROR

Alter Hase

  • »ERROR« ist der Autor dieses Themas

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

3

08.11.2015, 15:45

Ich glaube nicht oder???

Das wäre auch irgendwie komisch, weil in der aller ersten Hausaufgabe dieses Semster hatten wir in dem Kurs eine Turingmaschine, die in quadratischer Laufzeit Palindrome entscheidet, die war sogar auf der Folie gegeben. Würde ich komisch finden, wenn wir jetzt genau das gleiche einfach aufstellen sollen?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

08.11.2015, 15:51

Ich glaube nicht oder???

Streng genommen schon. Epsilon*n²+O(n) wächst doch quadratisch mit n und ist darum in O(n²), egal wie klein Epsilon ist. Das ist ja eine der entscheidenden Eigenschaften der O-Notation, dass konstante Faktoren (wie hier das Epsilon) keine Rolle spielen. O(0.0001*n²) = O(100000*n²).

ERROR

Alter Hase

  • »ERROR« ist der Autor dieses Themas

Beiträge: 417

Wohnort: Paderborn

Beruf: Informatik Student

  • Private Nachricht senden

5

08.11.2015, 16:07

Natürlich, jetzt wo ich es so sehe, stimme ich dir zu :D :search:

Also wäre theoretisch der triviale Ansatz "i tes und n-i tes Zeichen gegeneinander prüfen"(in jedem neuen Schritt dann i+1) korrekt laut Aufgabenstellung. Aber wie gesagt, genau die DTM hatten wir bereits auf den Folien, das kann dann doch nicht die Lösung sein, oder? :D

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

08.11.2015, 16:11

Das fände ich auch komisch. Ich denke auch, dass man hier auf eine andere Lösung hinaus will.
Komisch ist aber, dass in der Aufgabe nicht steht, wie groß das Epsilon sein darf, damit die Aufgabe als gelöst gilt.

Werbeanzeige