`
Mr-zhang
  • 浏览: 17334 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

规则引擎实现生产调度系统

vrs 
阅读更多
生产调度系统是制造企业MES系统的重要组成部分,对应于生产管理系统的短期计划安排,主要目标是通过良好的作业加工排序,最大限度减少生产过程中的准备时间,优化某一项或几项生产目标,为生产计划的执行和控制提供指导。在不同的问题环境中,生产调度的优化目标也不同。在生产制造企业中影响生产调度的因素很多(比如设备、工人的生产技能等),这些因素样式复杂,种类繁多,灵活多变。另外在不同的环境下,影响生产调度的规则数量、优先级都会发生变化。过去生产调度系统将业务逻辑与主体代码紧耦合,业务规则以:

IF       ELSE     THEN

的形式被硬编码到代码中去,结果是线性、确定的执行路由,所有的约束和判断都按照建模时的约定执行。当业务规则发生变更时,唯一的途径是修改代码。这种形式无法适应制
造企业生产规则的频繁变更,导致生产调度系统的开发、升级和维护成本急剧增加,甚至生产调度系统完全无法适应企业的实际需求。因此生产调度系统在保证对目标优化的前提下,将业务逻辑与主体程序的分离,已成为生产调度系统首要解决的问题。本文着重阐述通过规则引擎技术将生产规则逻辑从生产调度系统分离,克服生产规则灵活变更导致生产调度系统无法适应企业生产策略变更的问题。
目前开源和商业的规则引擎产品有很多,其中开源的以Drools为代表,商业的有ILog,ViaualRules等,本文以商业规则引擎VisualRules来说明。说句题外话,开源的产品有开源产品的优点,但是规则引擎作为一个高端的应用来说,还是希望在售后服务,技术支持等方面能有商业化的保障。
在制造企业中,生产策略的变更非常频繁并且影响生产调度系统的业务策略很多,而传统的生产调度系统将业务逻辑与生产调度逻辑紧密耦合,导致高系统的开发,维护都变得异常艰难。因此如何将业务逻辑与主体程序分离,屏蔽业务策略变更对主体程序的影响,则成为生产调度系统的关键问题。
基于规则引擎的生产调度系统架构设计的核心是实现业务逻辑与应用程序解耦。它的实现方案可分为以下几个步骤:
1. 生成业务规则  业务人员对影响生产调度的业务策略进行收集,抽象,归纳,按照规则文件格式配置成业务规则。
2. 业务规则管理  业务人员通过规则管理平台实现对规则的存储,版本,废弃,冻结等一系列的管理
3. 执行业务规则  应用程序中启动规则引擎(服务和接口)解析执行已经编辑配置好的规则文件,然后将结果返回给应用程序。
通过以上步骤,能够让整个生产调度系统快速适应企业业务策略的频繁变更,隔离策
略变更对应用程序的影响,同时又能与主体程序进行动态通信。主体程序动态感知业务策略的变更,将变更结果推动执行和呈现。
在制造业企业中,制约生产调度的业务规则很多,在不同的场景中业务规则的组合形式多种多样并且规则的执行先后顺序对调度结果也起着制约作用,业务规则的表现形式也是多种多样的,如何灵活易用的配置统一格式的规则是我们关注的重点。
VisualRules的规则主要由:条件,动作,属性等组成,一个规则中可以包含多个组合判断条件,也可以完成多个不同的动作。
VisualRules的规则表现形式如下:




在生产调度系统中,所有的业务规则都可以抽象为这种格式,下面以工人的技能熟练程度为例来说明生产调度系统中的业务规则配置方式




从上图可以看出,与传统的生产调度系统相比,基于规则引擎的生产调度系统具有以下几点优势:
1. 业务逻辑与主体逻辑的分离,模块之间更加松散耦合,已于开发,维护和升级
2. 屏蔽业务策略的变化,具有更强的灵活能力和使用能力,能有效的适应策略的变化。
3. 有效的延长应用程序的生命周期。
4. 开发过程更加离散,各个过程可由不同的开发者进行开发,测试和部署。

基于规则引擎的生产调度系统实现了主体应用程序与业务逻辑的分离,屏蔽了生产策略变更对系统的影响。能有效降低生产调度系统的开发,维护和升级成本,延长软件生命周期,降低企业信息化成本。
  • 大小: 19.7 KB
  • 大小: 9.7 KB
分享到:
评论

相关推荐

    数据中台技术架构方案.pptx

    * 大数据云总体技术架构:托管弹性大数据基础服务超大规模智能计算和存储管理服务智能数据管理统一调度系统统一数据查询搜索分析引擎数据采集数据集成离线计算实时计算图计算统一存储统一调度大数据云基础平台交互...

    中国石油大学(华东)人工智能课上练习的代码,遗传算法(混合流水车间调度),神经网络.zip

    人工智能的发展不断改变着我们的生活方式,从工作场景到日常生活,智能化正以前所未有的方式提升生产力、便捷性和生活质量,同时也在挑战伦理边界与社会规则,促使我们重新审视人与技术的关系及其长远影响。

    背景:为打造智能化病房环境,将现有机器人技术融入到病房中,完成医院护工人员的相关工作,节约人力成本.zip

    人工智能的发展不断改变着我们的生活方式,从工作场景到日常生活,智能化正以前所未有的方式提升生产力、便捷性和生活质量,同时也在挑战伦理边界与社会规则,促使我们重新审视人与技术的关系及其长远影响。

    47_水务大脑大数据和数字孪生平台项目方案.pdf

    * 数据管理:平台应支持统一元数据管理、数据存储位置管理、数据源连接管理,数据高效查找,支持智能元数据获取,并支持自定义数据主题、自定义数据质量规则引擎生成数据质量报告、库、表、行细粒度数据权限管控。...

    智慧机场数据中台建设方案共42页.pptx

    VANTIQ 提供完整的平台需要,实现各类应用的敏捷开发o 应用开发(Application Development)o 实时运行环境(Runtime environment) o 规则引擎(Rule engine)o 图形化开发(IDE) etc. VANTIQ 在物联网技术中的...

    JAVA上百实例源码以及开源项目

    两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将...

    JAVA上百实例源码以及开源项目源代码

    两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将...

    Java虚拟机

    第三部分分析了虚拟机的执行子系统,包括类文件结构、虚拟机类加载机制、虚拟机字节码执行引擎。第四部分讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、条件编译等语法糖的原理;讲解了虚拟机的热点探测...

    大数据产品及服务能力.pptx

    产品介绍(调度页面) 单一业务的任务详情 图形化展示任务执行日志 任务运行情况变化曲线 全方位洞察一项任务执行 定义指定任务的报警规则 定制指定任务的报警渠道 指定报警信息的接收者 根据需要控制告警规则的...

    单点登录源码

    基于bootstrap实现的响应式Material Design风格的通用后台管理系统,`zheng`项目所有后台系统都是使用该模块界面作为前端展示。 > zheng-ui 各个子系统前台thymeleaf模板,前端资源模块,使用nginx代理,实现动静...

    javaSE代码实例

    16.4.5 “生产者-消费者”案例的实际运行 365 16.4.6 notify方法的使用 366 16.4.7 同步的语句块 367 16.4.8 线程的死锁 369 16.4.9 防止错误的使用wait、notify、notifyAll方法 371 16.5 获取当前正在...

Global site tag (gtag.js) - Google Analytics