artificial-intelligence - 遗传算法与专家系统

标签 artificial-intelligence genetic-programming expert-system

我对新软件应该使用哪个系统有一些疑问。
还没有编写任何代码,我只是分解所有需求,然后才开始编码。
这将在一家为其他公司提供现场和远程服务的计算机公司中实现。
这些是我的变量:

  • 技术人员人数
  • 客户位置
  • 问题类型
  • 已为技术人员安排服务
  • 技术人员对当前情况的专业知识
  • 客户优先

也许有些遗漏了,但这些是最重要的。
这项工作是手动完成的,并且有人类,我们有时看不到最佳路线。
假设客户调用询问打印机问题。
首先,检查哪些技术人员了解打印机。
那么,技术可用吗?离客户远吗?可以远程完成(软件问题)吗?
可以由距离客户位置较近的另一位技术人员来完成吗?
对于相同的技术,该客户是否比其他客户拥有更高的优先级?
技术人员的日程安排满了吗?如果是,请传递给其他打印机/硬件技术。

我知道我的英语并不完美(不是我的自然语言),但我会尝试提供更多详细信息或根据需要更正文本。

所以,我的问题是,你会采取什么样的方法?遗传算法似乎很适合这种工作,而且我对 GAF 和 WatchMaker(Java GA 框架)也有一些经验。然而,当阅读上面的文字时,专家系统似乎也是合适的。
有人做过这样的事情吗?!
我搜索过此类软件,但找不到类似的东西。
另一种方法会比这两种方法更好吗?!
另外,我正在建立一个包含所有技术能力和专业知识的表格,并使用简单的规则,例如每个专业知识 1 到 5。这也是一个决定因素。
谢谢。

最佳答案

为什么不两者都做呢?使用专家系统(规则引擎)来定义约束并使用元启发式(例如本地搜索或遗传算法)来解决它。规划引擎OptaPlanner (java,开源)正是这样做的(通过使用规则引擎 Drools)。架构如下所示:

enter image description here

Here's a video demonstrating the constraint flexibility on the vehicle routing problem (VRP).您的问题似乎是 VRP 的高级变体(它是 TSP 的变体)。

关于artificial-intelligence - 遗传算法与专家系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21818543/

相关文章:

search-engine - 如何计算 MRR @n?

python - 属性错误 : module 'tensorflow.compat.v2.__internal__' has no attribute 'dispatch'

java - JGAP 遗传编程 - 分类

java - 序列化 ECJ GP individual 以供以后执行

open-source - 开源专家系统

c++ - 在剪辑中复制环境的构造函数?

c - 找到网格上两点之间最自然的路线

java - SpeechRecognizer onResults 未触发

python - 如何使用 PyAIML 设置聊天机器人的主人名称?