2017-01-31 5 views
3

Ich frage mich, was der Name eines Entscheidungsalgorithmus ist, dass nicht "ja" oder "nein" zurückgibt, aber kann nur "ja" für eine echte Teilmenge von Eingaben entscheiden und kann keine endgültige Entscheidung für den Rest bieten . Ein geeignetes Beispiel wäre ein Algorithmus, um die Invertierbarkeit einer Matrix zu bestimmen - mein Algorithmus antwortet richtigerweise mit "Ja" für eine Unterklasse von Matrizen, kann aber für den Rest weder bestätigen noch leugnen.Wie lautet der Name eines Entscheidungsalgorithmus, der mit "Ja" oder "Vielleicht" beantwortet wird?

Meiner Meinung nach ist dies eine Art Unterschätzung der wirklichen Antwort, aber Wikipedia definiert einen Approximationsalgorithmus nur im Bereich der Optimierung.

Vielen Dank für Ihre Eingabe!

+1

"Unvollständig"? Btw, Matrix Invertierbarkeit ist "entscheidbar", so dass Algorithmen, die darüber entscheiden können, vollständig existieren;) – Lagerbaer

+1

Diese Frage könnte besser für [cs.SE] als StackOverflow geeignet sein. –

+0

@Lagerbaer (ich denke), dass OP sich eher mit der Terminologie des Algorithmus beschäftigt als mit dem Problem. Entscheidbar, halbentscheidbar etc. usw. sind alle gut für die Problemklassifizierung. – miradulo

Antwort

1

Sie können sich auf randomisierte/probabilistische Algorithmen oder randomisierte Datenstrukturen beziehen.

Algorithmen, die probabilistisch bestimmen, ob eine Zahl prim ist oder nicht (a primality test), sind Beispiele für solche randomisierten Algorithmen. Der Miller-Rabin-Algorithmus ist ein konkretes Beispiel.

Datenstrukturen können erstellt werden, um die Wahrscheinlichkeit für einige Operationen zu verwenden. Eine bloom filter ist eine solche probabilistische Datenstruktur.

+0

Nein, es gibt keinen probabilistischen Aspekt zu diesem Algorithmus - für einige Eingabe ich das Ergebnis des Algorithmus ist immer gleich. –

1

Las-Vegas algorithms sind etwas sehr ähnliches: Wenn ein Las-Vegas-Algorithmus beendet wird, ist das Ergebnis korrekt. Wenn nicht - es ist dein "vielleicht".

Eigentlich werden diese Algorithmen im wirklichen Leben nach einiger Zeit ohne Ergebnis unterbrochen.

Verwandte Themen