Artificial intelligence 我的数独算法被认为是;专家系统;?

Artificial intelligence 我的数独算法被认为是;专家系统;?,artificial-intelligence,expert-system,Artificial Intelligence,Expert System,我写了一个代码,其中包含了数独的所有规则(每列、每行和每平方都出现一个数字)。代码接受输入(未填充的数独网格),并通过将逻辑子句转换为DIMACS格式并使用SAT解算器返回解决方案 假设算法尊重规则,接收数据,并使用该数据根据含义形成结论(例如,如果第一个单元格中有1,第二个单元格中就不能有1),那么该代码是否被视为“专家系统”?多谢各位 一个程序是否是专家系统是主观的,但我想说,除非你的程序编码的是从领域专家那里获得的非琐碎知识,否则它不是专家系统。如果你不能教别人实际做你的程序正在做的事情,

我写了一个代码,其中包含了数独的所有规则(每列、每行和每平方都出现一个数字)。代码接受输入(未填充的数独网格),并通过将逻辑子句转换为DIMACS格式并使用SAT解算器返回解决方案


假设算法尊重规则,接收数据,并使用该数据根据含义形成结论(例如,如果第一个单元格中有1,第二个单元格中就不能有1),那么该代码是否被视为“专家系统”?多谢各位

一个程序是否是专家系统是主观的,但我想说,除非你的程序编码的是从领域专家那里获得的非琐碎知识,否则它不是专家系统。如果你不能教别人实际做你的程序正在做的事情,那它就不是一个专家系统

根据这个定义,你所做的可能不是一个专家系统,因为对一个人来说,使用同样的技术太费时了。我已经编写了一个数独求解器,使用一个生产系统(),我认为是一个专家系统。编码的知识是从网站上获取的,这些网站拥有先进的技术,可供人类用于解决数独难题。所有编码技术实际上都可以被人类用来解决谜题(尽管一些更复杂的技术推动了这一界限)


虽然我的数独解算器可以解决比我复杂得多的难题,但称之为专家系统并不能说明它的复杂性。解决极其复杂的数独难题有比模仿人类可能采取的方法更好的方法。

一个程序是否是专家系统是主观的,但我要说的是,除非你的程序对从领域专家那里获得的非琐碎知识进行编码,否则它不是专家系统。如果你不能教别人实际做你的程序正在做的事情,那它就不是一个专家系统

根据这个定义,你所做的可能不是一个专家系统,因为对一个人来说,使用同样的技术太费时了。我已经编写了一个数独求解器,使用一个生产系统(),我认为是一个专家系统。编码的知识是从网站上获取的,这些网站拥有先进的技术,可供人类用于解决数独难题。所有编码技术实际上都可以被人类用来解决谜题(尽管一些更复杂的技术推动了这一界限)


虽然我的数独解算器可以解决比我复杂得多的难题,但称之为专家系统并不能说明它的复杂性。有比模仿人类可能采取的方法更好的方法来解决极其复杂的数独难题。

在80年代,我编写了Emycin专家系统引擎的克隆。一个重要的特征是用户能够询问专家系统得出某些结论的原因。系统可以(用一种近乎自然的语言)回答说,它应用了这样或那样的规则来得出结论

在这种系统中,知识作为一组明确的规则进行建模和实现(由认知工程师)。这些规则是引擎已知的对象。引擎可以触发规则(向前或向后,或者可能使用元规则…),并可以记录触发的规则,从而解释其结论


(这是我对专家系统的看法)。

在80年代,我编写了Emycin专家系统引擎的克隆。一个重要的特征是用户能够询问专家系统得出某些结论的原因。系统可以(用一种近乎自然的语言)回答说,它应用了这样或那样的规则来得出结论

在这种系统中,知识作为一组明确的规则进行建模和实现(由认知工程师)。这些规则是引擎已知的对象。引擎可以触发规则(向前或向后,或者可能使用元规则…),并可以记录触发的规则,从而解释其结论


(这是我对专家系统的理解)。

如果你在与媒体交谈和/或试图为你的初创公司筹集资金,那么是的,这肯定是一个专家系统。OTOH,如果你在和工程师/科学家交谈,那么这是另一个数独解算器,仅此而已。术语“专家系统”的问题在于,它更多的是炒作而不是实质。使用该术语的人通常过度销售该技术。专家系统背后的真相是,它是一个通过定制搜索引擎访问的大型数据库。一个例子是医学“专家系统”。该系统有一个大型疾病数据库。医生输入患者症状和测试结果的列表。然后,搜索引擎生成可能的疾病列表。它也可能建议进行额外的测试,或尝试药物。一句话:它只是另一个搜索引擎。我想你可以说它正在搜索解决方案,但我没有看到一个大型数据库。如果我把数独作为一个专家系统来实现的话,我会创建一个数据库,其中包含所有已经发布的数独解决方案。当出现一个新的数独游戏时,搜索引擎会寻找在给定位置包含给定数字的任何解决方案。搜索引擎将被定制为识别旋转、镜像和替换(例如,将3改为1、1改为5、5改为3不会改变谜题)。这当然是实现数独解算器的一种非常糟糕的方法。它使用大量空间存储数据库,比其他解算器花费更多时间,如果找不到匹配的解决方案,最终将失败。但它将有资格成为一个专家系统。@user3386109啊,我想我开始明白了。专家系统背后的想法并不是要有规则形式,你可以推断出一个可能的解决方案,而是要有大量的数据,上面写着“如果你的输入与这个数据匹配”