Autor Beitrag
Marco D.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Mo 23.03.09 18:45 
Hallo zusammen,

ich schreibe am Freitag eine Klausur zu den Grundlagen der Informatik.
Kann mir bitte jemand mal den Unterschied zwischen den Komplexitätsklassen EXPTime und NP klarmachen?
Hab schon an mehreren Stellen gesucht und nachgeschlagen, aber die genauen Unterschiede wurden nirgends aufgezeigt.

Gruß
Marco

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Mo 23.03.09 22:25 
NP <= PSPACE <= EXPTIME

NP braucht max. p(n) viel Zeit auf einer nicht-deterministischen Turingmaschine. PSPACE braucht max. p(n) viel Speicher auf einer (deterministischen oder nicht-deterministischen) Turingmaschine und ExpTime braucht max. 2^p(n) viel Zeit auf einer deterministischen Turingmaschine. Ob diese Klassen äquivalent ist, ist nicht bekannt. Man geht davon aus, dass die beide Inklusionen echt sind.


Zuletzt bearbeitet von delfiphan am Mo 23.03.09 22:34, insgesamt 1-mal bearbeitet
Marco D. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Mo 23.03.09 22:31 
Mir geht es konkret um die Unterschiede zwischen NP und ExpTime.

ExpTime braucht also exponentiellen Aufwand auf einer deterministischen Turing-Maschine. Und wieviel Aufwand braucht NP auf einer deterministischen Turing-Maschine? In der Wikipedia werden meines Erachtens die Unterschiede nicht deutlich gemacht.
Konkret: Was hat ein Problem aus ExpTime, was die Probleme aus NP nicht haben?

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Mo 23.03.09 22:37 
user profile iconMarco D. hat folgendes geschrieben Zum zitierten Posting springen:
Und wieviel Aufwand braucht NP auf einer deterministischen Turing-Maschine.

Wenn du das genau rausfindest, bist du Millionär.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mo 23.03.09 22:39 
NP sind die Probleme, die auf einer Nichtdeterministischen Maschine in Polynomzeit gelöst werden können. Wenn man die Berechnung der NP-Maschine deterministisch simulieren will, geht das in EXPTime

Umgekehrt ist aber nicht unbedingt jedes deterministisch in exponentieller Zeit lösbare Problem auch nichtdeterministisch in polynomieller Zeit lösbar. Zumindest fällt mir dafür kein einfaches Argument ein, und wenn delfiphan Recht hat (davon gehe ich mal aus) bin ich damit nicht alleine. ;-)

Grob gesagt: Das eine sind Äpfel, das andere Birnen. :mrgreen:

_________________
We are, we were and will not be.
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Mo 23.03.09 22:47 
user profile iconGausi hat folgendes geschrieben Zum zitierten Posting springen:
Umgekehrt ist aber nicht unbedingt jedes deterministisch in exponentieller Zeit lösbare Problem auch nichtdeterministisch in polynomieller Zeit lösbar

Naja, theoretisch könnte NP = EXPTIME sein. Ausgeschlossen ist es nicht. Vermutlich beinhaltet EXPTIME aber weit mehr als NP.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mo 23.03.09 22:53 
Da steckt ein "unbedingt" drin, was zum Audruck bringen sollte, dass ich das nicht weiß, womit ich wohl in guter Gesellschaft bin. Deswegen auch der Folgesatz. ;-)

(Das schöne an Prüfungen in Komplexitätstheorie ist, dass die Antwort "Weiß ich nicht" genau richtig sein kann. :D)

_________________
We are, we were and will not be.
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Mo 23.03.09 22:57 
user profile iconMarco D. hat folgendes geschrieben Zum zitierten Posting springen:
Konkret: Was hat ein Problem aus ExpTime, was die Probleme aus NP nicht haben?

Man weiss es nicht (mit Sicherheit). Vielleicht sind die zwei identisch. Man hat die Definitionen und Beispiele dazu. Die kannst du meinetwegen miteinander Vergleichen. Aber viel mehr kann man eigentlich fast nicht dazu sagen...

Du musst wohl einfach die Definitionen kennen, evtl. einige Beispiele zu den einzelnen Klassen und die Teilmengen.

P <= NP <= PSPACE <= EXPTIME <= NEXPTIME <= EXPSPACE
P < EXPTIME, NP < NEXPTIME, PSPACE < EXPSPACE (kurz, mind. eine der ersten und mind. eine der letzten 3 Teilmengen sind strikt)
Falls P = NP, dann EXPTIME = NEXPTIME

Vermutlich sind es aber alles echte Teilmengen.

Was man halt sieht ist, dass, man NP ganz sicher mit PSPACE oder in EXPTIME lösen kann, d.h. mit p(n) Speicher und 2^p(n) Zeit kannst du sicher ein NP Problem lösen. Es wäre aber möglich, dass P=NP ist, dann würde p(n) Zeit reichen.

Das ist so wie wenn man mal zwei Klassen definiert "Geräte mit einem Prozessor" und "Elektronikgerät". Zuerst hältst du diese für zwei verschiedene Dinge mit gewisser Ähnlichkeit, dann findest du heraus, dass ein Gerät mit einem Prozessor immer ein Elektronikgerät ist. Du fragst jetzt: "Was hat ein Elektronikgerät, was Geräte mit einem Prozessor nicht haben". Naja, ein Elektronikgerät ohne Prozessor müsste es auf jeden Fall sein. Ob's das gibt, weiss ich nicht, aber ich bin mir fast sicher, dass es das geben muss. Und wenn man das bewiesen hat, müsste man noch ein gemeinsames Merkmal finden, um die Frage zu beantworten :|...
Ein ExpSpace Problem, dass nicht in NP ist. Ob's das gibt, weiss man nicht, aber man ist sich fast sicher, dass es das geben muss. Hm...