Ein Markov-Modell enthält die Wahrscheinlichkeit des Übergangs in jeden Zustand unter Berücksichtigung des aktuellen Zustands. "Jeder Zustand" kann nur ein Punkt sein - ob es zum Beispiel an einem bestimmten Tag geregnet hat - oder es kann wie mehrere Dinge aussehen - wie ein Wortpaar. Sie haben wahrscheinlich automatisch generierten seltsamen Text gesehen, der fast Sinn macht, wie Garkov (die Ausgabe eines Markov-Modells, das auf den Garfield-Comics basiert). In diesem Artikel über Coding Horror werden auch die Anwendungen von Markov-Techniken auf den PageRank von Google erwähnt.
Markov-Modelle sind wirklich nur dann leistungsstark, wenn sie viel Input haben, mit dem sie arbeiten können. Wenn eine Maschine viel englischen Text durchschaut, erhält sie eine ziemlich gute Vorstellung davon, welche Wörter im Allgemeinen nach anderen Wörtern kommen. Oder nachdem Sie die Standorthistorie einer Person durchgesehen haben, können Sie herausfinden, wohin diese Person von einem bestimmten Ort aus als nächstes gehen wird. Eine ständige Aktualisierung des "Eingabekorpus", wenn mehr Daten empfangen werden, würde es der Maschine ermöglichen, die Wahrscheinlichkeiten aller Zustandsübergänge abzustimmen.
Genetische Algorithmen sind ziemlich unterschiedliche Dinge. Sie erstellen Funktionen, indem sie Teile von Funktionen mischen und sehen, wie gut jede Funktion bei einer bestimmten Aufgabe ist. Ein untergeordneter Algorithmus hängt von seinen Eltern ab, aber Markov-Modelle sind hauptsächlich daran interessiert, vorherzusagen, was als nächstes in einer Sequenz kommen wird, und keinen neuen Codeabschnitt zu erstellen. Je nachdem, wie einfach das "Alphabet" ist, können Sie möglicherweise ein Markov-Modell verwenden, um eine Kandidatenfunktion auszuspucken. Sie könnten den Übergängen in erfolgreichen Algorithmen sogar dann mehr Gewicht beimessen.