我正在尝试在C中实施一些AI计划算法,但被基本概念陷入困境:)
在跳到主要问题之前,我尝试实施一些支持命题逻辑的小框架:

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

现在,问题在于,我想在定义公式时不评估诸如“ a + 3> 0”之类的表达式,而是在以后的某个阶段:

bool res = EVALUATE(f);

我想在这种情况下,关闭本来会很方便,但不幸的是,我也想坚持使用C99。

任何想法 ?
如何将其扩展到谓词逻辑?

最终目标(理想情况下)是建立一个AI计划库,该库可以直接插入应用程序,而不是作为Strips程序字符串接收问题。

谢谢

有帮助吗?

解决方案

好的,

如上所述,我通过使用方法指针和数据的结构来解决该问题。这是模拟C的最常见方法。

我的实施可在此处提供:https://github.com/pmilosev/clumsy

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top