Ich mache eine selbst-pädagogische Forschung über endliche Automaten. Und derzeit stolperte über interessante, aber nicht triviale Aufgabe zu erfüllen. Es ist wirklich schwierig, eine Zustandsmaschine für die Schachregeln zu definieren.Codierungsregeln für das Schachspiel mit endlicher Zustandsmaschine
Obwohl die Regeln einfach erscheinen, ist das Spiel mit FSM schwer zu erreichen. Ich habe darüber nachgedacht, den Spielstatus als einen Zustand des Spielplans zu kodieren, in dem jedes Quadrat entweder leer ist oder ein Stück enthält. Es wird jedoch schwierig, Übergänge zu definieren, da der Übergang Fakten berücksichtigen sollte, die die Umgebung der betreffenden Zelle betreffen. Es ist auch schwierig, Übergänge für Fälle wie Enpassant oder Rochade zu definieren, besonders wenn die Rochade durch ein anderes Stück blockiert wird. Genauso ist es schwer, Bewegungseinschränkungen für Stücke zu definieren, die von anderen Steinen blockiert werden und nicht in der Lage sind, sie zu überspringen, d. H. Bauern, Läufer, Türme, Königinnen.
Wie würden Sie dieses Problem angehen? Oder vielleicht gibt es einige Erweiterungen zu FSM, die mir nicht bekannt sind. Ich bin mir ziemlich sicher, dass es viele ähnliche Anwendungen gibt, bei denen FSM unpraktisch sein wird. Wie würden Sie im Allgemeinen mit diesem Problem umgehen?
Vielen Dank im Voraus,
Ich habe nicht gewählt, um zu schließen, aber Sie sollten wirklich definieren, was Sie mit "gut arbeiten" meinen. Es ist schwer, sich Ihren Zweck vorzustellen, da sogar das Aufzählen der gültigen Spielzustände unpraktisch ist. –