原贴、最终还是决定自己写一个。但是一下卡在了数据模型设计这里。
希望实现的效果是:把最终目标按逻辑向前倒推,给出前置条件群(可能需要多个条件)和分支(可能有多种达成路线),直至条件当前可执行或可满足。
那么按照基础的操作逻辑应该有:
这样的话,求助一下,要怎么设计基础的数据结构呢?
1
shendaowu 2023-06-06 11:42:32 +08:00
太长不看版:专家系统。
啰嗦版: 巧了,跟我想做的一个网站有类似的地方。不知道今后会不会跟你形成竞争关系,哈哈。我已经关注你了,你怕不怕? 由于专家系统太复杂了,所以我打算只抄专家系统的一小部分,这个主要是因为我技术菜。如果你技术很牛的话专家系统中的很多东西你应该都能用上。另外提醒一下,我看的那本《专家系统:原理与编程》里的很多图式用的好像都是图,但是我感觉其实用超图应该更好一些。一个 rule 就是一个超边。目前我计划用的数据库结构是这样的:规则左手侧表(规则 id ,事实 id ),规则右手侧表(规则 id ,事实 id )。我之前搜过怎么用关系型数据库存储超图,没搜到什么东西。我不过我搜索能力可能不太强,推荐 OP 自己再搜搜。 |
3
shendaowu 2023-06-06 20:31:56 +08:00
@isSamle #2
我也基本没打算商业化,但是还是有可能互相抢用户吧?你不会不把软件公开出来吧? 另外你了解专家系统了吗?我之前忘了说了,其实我不太确定专家系统能不能解决你的问题。不知道为啥之前语气那么自信。我只是感觉你说的东西专家系统里好像都有。还有感觉好像杀鸡焉用牛刀了,专家系统学起来应该是挺耗时的,除非你对这个感兴趣否则很可能会感觉得不偿失。还有也许你不用考虑数据结构,也许直接用 CLIPS 就能实现你的想法。CLIPS 是一种专家系统的开发语言。如果你想做图形界面的话我记得 CLIPS 应该是可以与其他编程语言交互。不过你说的那么复杂的过程我感觉做图形界面应该是找虐吧? |
4
isSamle OP @shendaowu 公开但是一般也不怎么推吧,我做了挺多小应用最后都是满足自己的使用需求😄有兴趣可以看下 a8a8a8.top
另外的话,确实不了解,大概查了下,有点复杂,我是打算用 Flutter 做纯移动端的,可以做计划,实时跟进 |