[JWFD开源工作流]JWFD开源工作流-矩阵引擎设计初步

栏目: 软件资讯 · 发布时间: 5年前

一个小型的拓扑结构,其连接数和节点数量非常少,在流程运行过程中,可以采用 SQL 数据库等传统的存储结构来记录,使用有限状态机的模型来产生状态运行控制机制,从而达到流程自动化的模式,但是随着连接数和节点数量的大幅增加,传统的SQL数据库方式在运行速度和效率方面已经无法满足需求了,因此我们需要一种新的数据结构和存储模式来记录大规模流程拓扑结构,并在这种数据结构的基础上,开发一种全新的运行控制系统。

一个矩阵表,就是一个文本格式的文件,读写这个文件,仅仅使用一般的文件流IO语句和函数,并不涉及到SQL数据库的数据流读写问题,在矩阵表比较大的时候,这可以显著提示流程运行控制的速度和效率

矩阵数据结构是面向连接的存储模型,状态值和参数值与拓扑结构是分离的(也可以存储在一张表中),那应该采用什么样的计算模型和算法来处理这些数据结构呢?

一个矩阵表的遍历,状态机的应用显然和SQL表不一样的,其中是否涉及到对矩阵的计算和向量的处理呢? 这里面存在一种什么样的关系呢? 这就需要我们认真做设计和思考了

在整个业界并未向这个领域发展的时候,我们需要开始准备前瞻性的研究工作.

基于状态机的遍历过程,在矩阵中应该如何表示呢? 算法设计的思路是基于什么来考虑的呢?

由状态参数的变化来驱动流程的运转是一个经典的设计,并且在传统的SQL数据库中运行的非常良好,且已经在整个业界取得看法一致的成功,那如果不用状态机来驱动,又该用什么作为流程引擎的驱动核心呢?

以连接线为核心的存储结构,应该以相邻两个节点的状态值差来作为流程运转的驱动力

如果一个连接线的两个节点的状态值不同,就说明该连接线已经开始运动起来了,这个流程就在运行中,一个差分状态机出现之后,跷跷板模型就有应用的地方了

详细设计

扫描到一个差分状态之后,必须将该涉及到该连接线的节点的状态值全部更新,那麽下一个

连接线自然而然也就出现一个差分状态,那状态机接下来就自动遍历到下一个节点去了

利用节点状态差,形成的数据流来驱动跷跷板,然后跷跷板反馈驱动拓扑网络,形成一个内建的永动机,在这个永动机的基础上加上一个混沌-次序的耗散结构,足以形成一个强智能的模型-混沌平衡机

总体设计思想:内建(不依赖特殊的硬件和外部计算资源)引擎,将解线性和非线性方程组的逻辑和思路用强人工智能的方法来实现,实现一个独立自主运行的微型智能解题机(配合文字理解和识别模块,实现对应用数学题的自动构造和解题),并在此机制的基础上,实现大规模智能流程引擎

仅仅是驱动流程运行的状态机,实现起来比较容易,但是关键是在这个新的引擎中,必须体现一种数字化驱动的概念,要解出这个方程组来,类似电路分析里面的算法要体现出来

难度在这里,否则一个差动式平衡状态机就可以完成引擎的设计,在新的引擎设计中,基于精确的数值的控制方式必须体现出来

模拟化的引擎模块就用差动式平衡状态机,数字化的引擎模块就必须是基于智能解题机的模块,两者的结合产生新一代的拓扑矩阵引擎(未完..待续)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Software Engineering for Internet Applications

Software Engineering for Internet Applications

Eve Andersson、Philip Greenspun、Andrew Grumet / The MIT Press / 2006-03-06 / USD 35.00

After completing this self-contained course on server-based Internet applications software, students who start with only the knowledge of how to write and debug a computer program will have learned ho......一起来看看 《Software Engineering for Internet Applications》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换