Frage

Ich versuche, einige KI -Planungsalgorithmen in C zu implementieren, bin aber mit dem Basic -Konzept festgehalten :)
Bevor ich zum Hauptproblem sprang, habe ich versucht, ein kleines Rahmen zu implementieren, die die Propositionslogik unterstützen würden:

FORMULA f = PROPOSITION(a + 3 > 0);
FORMULA g = PROPOSITION(is_smaller_than(b, c));
f = AND(NOT(f), g);

Das Problem ist nun, dass ich die Ausdrücke wie 'A + 3> 0' zum Zeitpunkt der Definition der Formel nicht bewerten möchte, sondern in einer späteren Phase:

bool res = EVALUATE(f);

Ich denke, die Schließungen wären in diesem Fall praktisch gewesen, aber leider halte ich mich auch gerne an C99.

Irgendeine Idee ?
Wie wäre es, dies auf die Logik zu erweitern?

Das endgültige Ziel (idealerweise) wäre es, eine KI-Planungsbibliothek zu erstellen, die direkt in die Anwendung eingesteckt werden kann und das Problem nicht als Strips-Programm-Saiten erhalten kann.

Vielen Dank

War es hilfreich?

Lösung

OK,

Wie oben kommentiert, habe ich das Problem gelöst, indem ich eine Struktur mit Methodenzeiger und Daten verwendet habe. Dies ist die häufigste Art, Schließungen in C zu simulieren.

Meine Implementierung ist hier verfügbar:https://github.com/pmilosev/clumsy

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top