论文部分内容阅读
摘要:供应链中的生产规划及调度对企业的成功至关重要。针对该问题,本文提出了一个基于Web的开放式的优化框架。该框架在缩短了生产规划及调度所需时间的同时,提高了规划和调度的质量。在实际应用中,该框架被证明能有效地提高企业的工作效率和经济效益。
关键词:供应链;规划;调度;优化;JAVA本地接口
中图分类号:F406.2文献标识码:A文章编号:1002-3100(2007)08-0100-03
Abstract: The production planning and scheduling in supply chain are critical to the success of the enterprise. Aiming at the difficulties of these issues, a web-based open framework for optimization is presented in this paper. The framework can shorten the time for production planning and scheduling and improve the quality of them. The efficiency of such framework has been proven in the real application.
Key words: supply chain; planning; scheduling; optimization; JAVA native interface
在现在这个竞争激烈的、被日新月异的信息技术驱动的商业环境中,新的商业模式和有效的供应链管理正成为企业获得成功的关键因素。供应链管理(SCM)的目标是采购原材料,组织生产,然后通过适当的价格和服务将产品提供给顾客[1]。供应链管理是在供应链中的实体之间,例如供应商、制造商、经销商和顾客之间协调产品、资金、服务和信息的交换,其最终目的就是为了提升顾客满意度,降低企业的生产、库存和分销成本[2]。目前,许多企业利用企业资源规划(ERP)工具来改善其供应链。然而,ERP系统往往会产生一些超出市场实际需求的预期,导致生产和库存过剩,企业资源不能得到最佳配备和利用,最终引起客户服务水平下降[3]。因此,对于企业来说,即使已经采用了ERP系统,依然有必要针对供应链进行优化。
随着计算机硬件价格的不断降低和各种各样建模工具的不断涌现,供应链的建模和优化也逐渐被企业所接受。同时,随着互联网的普及,供应链管理的决策者们可以很方便地通过它来管理和使用各种SCM工具。互联网成为供应链各方开展协调和合作的平台。
在某化工企业供应链管理信息系统的开发过程中,笔者提出了一个基于Web的供应链优化框架以保证迅速及高质量地进行生产规划和调度。整个系统采用JAVA语言进行实现。
1企业需求
对于化工企业而言,其供应链具有这样的特征:生产线前期建设需要大量投资,产品一旦定型,则生产流程就会相应稳定下来;产品的整体市场需求比较稳定;产品具有较长生命周期但利润相对不高。企业生产规模对企业效益至关重要,而企业的生产规模又受市场需求的制约。一般情况下,企业在历史销售数据基础上,综合考虑先期发生的市场变化,通过使用市场需求预测工具来预报客户未来的需求,从而组织生产。然而,企业往往不能准确地发现市场需求变化的真正原因,是因为客户需求受很多动态因素,象经济状况、社会状况、客户行为,甚至一些突发事件的影响。企业只能被动的根据客户订单来调整生产,这样就会产生“bullwhip效应”[4],即市场需求的一点点变化就会使供应链未端需求产生巨大的波动。因此,良好的生产计划和生产调度对企业运营有着重要意义,对所有的供应链环节,例如配送中心的建设、生产计划、运输计划等皆有影响。
在竞争激烈的商业环境中,企业需要应对多变的客户需求。生产部门原来仅仅使用简单的电子表格来制订生产计划,当客户需求不断变化的时候,生产部门不得不花上大量的时间来跟产品经理沟通,修改生产计划以适应不断发生的变化。另一方面,对于化工企业来说,生产线需要连续不断的工作,因为中断不仅会产生产品转换时间,而且生产线重新启动之后生产出来的产品往往需要经过一段时间之后才能有良好稳定的品质。期间生产的产品要么回收或丢弃,要么只能低价销售,给企业带来较大损失。同时,企业的仓储能力是有限的,如果产能过剩,企业又需要花费一笔不菲的支出来租用临时仓库,这也是企业不希望看到的。因此企业对新的生产计划工具有这样的要求:按照市场的需求来组织生产,实现大规模定制;在制订更灵活的生产计划的同时,缩短变更计划所需要的时间;保证原料的供应,除了必要的维护之外,确保生产线可以每天24小时,全年365天连续工作;协调生产和库存,最大限度降低存货成本;处在不同地理位置的生产部门相关人员,如生产计划制订者、产品经理等,都可以随时查看生产计划及其执行情况。
2系统设计
结合该企业的实际情况,我们设计、开发了一套基于Web的开放框架的生产计划/调度优化系统。该系统包括了生产规划和调度优化模型。生产规划模型是针对企业的一个或多个生产部门,综合考虑客户需求,企业生产能力,库存容量以及原材料供应,计算每一条生产线上某一产品每周或每月的最佳产量。生产调度模型则是对每天或每小时的生产设备及其它资源进行组合和排序,将半成品(Work-In-Process,WIP)数量和库存水平保持在较小状态。在化工生产中,很多工序是连续进行的。在企业生产能力满负荷运行时,良好的生产规划和生产调度可以减少停工或产品切换时间,从而极大减小随之而来的损失。
本系统通过整合混合整数线性规划(MILP)模型,Dash Optimization公司的XPRESSS-MP优化软件包,JSP以及JAVA技术来实现生产优化和调度。
混合整数线性规划(MILP)是生产调度中常用的一种数学建模方法[5]。本系统在研究了顺序型多目的厂间歇调度的问题之后,通过分析顺序型多目的工厂生产的特点,将整个生产系统分解为若干个子系统,并为之建立对应的数学规划模型。在此基础上,再建立了一个全局性的顺序型多目的厂间歇调度MILP模型。这种“化整为零”的方法对解决大规模调度问题有较好的效果。
在供应链管理中,已经有很多系统优化软件包被广泛地使用,象ILOG的OPL(Optimization Programming Language)、Dash Optimization公司的XPRESSS-MP等。但是这些软件包基本上都是采用C或C++语言编写,很难被部署运行在Web上。从JAVA SDK 2开始,JAVA提供了一个称为JAVA本地接口(JAVA Native Interface,JNI)的新特性[6]。该特性使得JAVA可以很灵活地访问任何用C/C++编写的例程。这样,当使用JAVA来作为该优化系统的开发工具的时候,可以采用任何基于C/C++的优化软件包作为优化引擎,从而保证了本系统的开放性,极大地降低了系统开发和部署的难度,同时也保证了系统开发成功之后可以方便快捷的部署到Web环境中[7]。图1展示了该优化系统的3层框架。图2是该系统各层中模块的组成及相互关系。
系统的第一层是用户端,用来输入各种约束条件和数据,同时接收来自Web服务器的响应并在Web上输出显示。第二层是Web服务器,负责管理所有来自用户端的请求并与第三层的应用服务器和数据库服务器进行通讯。应用服务器上运行优化引擎,通过计算输入数据,得到优化结果;数据库服务器则永久保存所有的输入输出数据[8]。Web服务器,应用服务器和数据库服务器可以运行在一台计算机上,但出于性能及安全的考虑,最终上线的系统是将它们分布到不同的计算机中运行。
用户通过浏览器访问Web服务器,选择要进行的优化工作,例如需要进行产品需求预测。Web服务器上的JSP程序根据用户的选择生成并显示一个HTML页面。在这个页面中,用户进行约束条件的设定,输入优化所需基础数据。然后JAVA Servlet将输入数据转换成特定格式的数据文件,通过JNI调用优化引擎中的优化模型,计算得到优化结果。优化结果既可以被保存到数据库中,供以后调用,也可以实时的以简单易懂的形式通过HTML页面显示给用户。用户通过下拉列表选择感兴趣的报表形式,例如日生产计划,每小时的原料供应表和生产报告,等等。
3实际运行及结论
实际上线运行中,优化系统包括上千个生产变量和数百个约束条件。以前需要数天才能完成的计划表,现在只需几秒钟就可完成。这么短的响应时间保证企业可以针对市场变化,迅速做出调整,实现大规模定制;优化后的生产计划不仅最大限度地降低了库存,而且可以更好地利用生产和储运能力。本框架成功的将原来只能在单机或局域网上运行的系统优化软件升级到Web的分布式平台上,使得在不同地理位置的企业管理者可以通过浏览器随时查看到相关报表,快速做出运营决策。这对于那些跨地区的生产型企业尤为重要。该系统优化框架虽然是为化工企业开发的,但它也可以很方便被推广到其它行业。JAVA Servlet通过开放接口的JNI来调用基于C/C++的优化软件包的这种访问模式也可以被应用到企业其它的Web应用中。
参考文献:
[1] Christopher, M. 物流与供应链管理[M]. 北京:电子工业出版社,2006.
[2] 马士华,林勇. 供应链管理[M]. 北京:机械工业出版社,2005.
[3] Hsiang, T. The Illusion of Power[J]. OR/MS Today, 2001,28(2):34-36.
[4]Lee, H.L, V. Padmanabhan, S. Whang. The Bullwhip Effect in Supply Chains[J]. Sloan Management Review, 1997,38(3):93
-102.
[5] 吴建昱,何小荣,陈丙珍,等. 新的多产品间歇生产调度的MILP模型[J]. 化工学报,2003,54(9):1251-1256.
[6] Horstmann C., G. Cornell. Java 2核心技术卷II:高级特性[M]. 北京:机械工业出版社,2005.
[7] Lee Y.M., E.J. Chen. BASF Uses a Framework for Developing Web-Based Production-Planning-Optimization Tools[J]. Interfaces, 2002,32(6):15-24.
[8] 王琴,杨宗凯,吴砥. 基于工作流和JSP/Servlet技术的网上项目申报与管理系统设计[J]. 计算机应用研究,2006,23(12):181
-184.
关键词:供应链;规划;调度;优化;JAVA本地接口
中图分类号:F406.2文献标识码:A文章编号:1002-3100(2007)08-0100-03
Abstract: The production planning and scheduling in supply chain are critical to the success of the enterprise. Aiming at the difficulties of these issues, a web-based open framework for optimization is presented in this paper. The framework can shorten the time for production planning and scheduling and improve the quality of them. The efficiency of such framework has been proven in the real application.
Key words: supply chain; planning; scheduling; optimization; JAVA native interface
在现在这个竞争激烈的、被日新月异的信息技术驱动的商业环境中,新的商业模式和有效的供应链管理正成为企业获得成功的关键因素。供应链管理(SCM)的目标是采购原材料,组织生产,然后通过适当的价格和服务将产品提供给顾客[1]。供应链管理是在供应链中的实体之间,例如供应商、制造商、经销商和顾客之间协调产品、资金、服务和信息的交换,其最终目的就是为了提升顾客满意度,降低企业的生产、库存和分销成本[2]。目前,许多企业利用企业资源规划(ERP)工具来改善其供应链。然而,ERP系统往往会产生一些超出市场实际需求的预期,导致生产和库存过剩,企业资源不能得到最佳配备和利用,最终引起客户服务水平下降[3]。因此,对于企业来说,即使已经采用了ERP系统,依然有必要针对供应链进行优化。
随着计算机硬件价格的不断降低和各种各样建模工具的不断涌现,供应链的建模和优化也逐渐被企业所接受。同时,随着互联网的普及,供应链管理的决策者们可以很方便地通过它来管理和使用各种SCM工具。互联网成为供应链各方开展协调和合作的平台。
在某化工企业供应链管理信息系统的开发过程中,笔者提出了一个基于Web的供应链优化框架以保证迅速及高质量地进行生产规划和调度。整个系统采用JAVA语言进行实现。
1企业需求
对于化工企业而言,其供应链具有这样的特征:生产线前期建设需要大量投资,产品一旦定型,则生产流程就会相应稳定下来;产品的整体市场需求比较稳定;产品具有较长生命周期但利润相对不高。企业生产规模对企业效益至关重要,而企业的生产规模又受市场需求的制约。一般情况下,企业在历史销售数据基础上,综合考虑先期发生的市场变化,通过使用市场需求预测工具来预报客户未来的需求,从而组织生产。然而,企业往往不能准确地发现市场需求变化的真正原因,是因为客户需求受很多动态因素,象经济状况、社会状况、客户行为,甚至一些突发事件的影响。企业只能被动的根据客户订单来调整生产,这样就会产生“bullwhip效应”[4],即市场需求的一点点变化就会使供应链未端需求产生巨大的波动。因此,良好的生产计划和生产调度对企业运营有着重要意义,对所有的供应链环节,例如配送中心的建设、生产计划、运输计划等皆有影响。
在竞争激烈的商业环境中,企业需要应对多变的客户需求。生产部门原来仅仅使用简单的电子表格来制订生产计划,当客户需求不断变化的时候,生产部门不得不花上大量的时间来跟产品经理沟通,修改生产计划以适应不断发生的变化。另一方面,对于化工企业来说,生产线需要连续不断的工作,因为中断不仅会产生产品转换时间,而且生产线重新启动之后生产出来的产品往往需要经过一段时间之后才能有良好稳定的品质。期间生产的产品要么回收或丢弃,要么只能低价销售,给企业带来较大损失。同时,企业的仓储能力是有限的,如果产能过剩,企业又需要花费一笔不菲的支出来租用临时仓库,这也是企业不希望看到的。因此企业对新的生产计划工具有这样的要求:按照市场的需求来组织生产,实现大规模定制;在制订更灵活的生产计划的同时,缩短变更计划所需要的时间;保证原料的供应,除了必要的维护之外,确保生产线可以每天24小时,全年365天连续工作;协调生产和库存,最大限度降低存货成本;处在不同地理位置的生产部门相关人员,如生产计划制订者、产品经理等,都可以随时查看生产计划及其执行情况。
2系统设计
结合该企业的实际情况,我们设计、开发了一套基于Web的开放框架的生产计划/调度优化系统。该系统包括了生产规划和调度优化模型。生产规划模型是针对企业的一个或多个生产部门,综合考虑客户需求,企业生产能力,库存容量以及原材料供应,计算每一条生产线上某一产品每周或每月的最佳产量。生产调度模型则是对每天或每小时的生产设备及其它资源进行组合和排序,将半成品(Work-In-Process,WIP)数量和库存水平保持在较小状态。在化工生产中,很多工序是连续进行的。在企业生产能力满负荷运行时,良好的生产规划和生产调度可以减少停工或产品切换时间,从而极大减小随之而来的损失。
本系统通过整合混合整数线性规划(MILP)模型,Dash Optimization公司的XPRESSS-MP优化软件包,JSP以及JAVA技术来实现生产优化和调度。
混合整数线性规划(MILP)是生产调度中常用的一种数学建模方法[5]。本系统在研究了顺序型多目的厂间歇调度的问题之后,通过分析顺序型多目的工厂生产的特点,将整个生产系统分解为若干个子系统,并为之建立对应的数学规划模型。在此基础上,再建立了一个全局性的顺序型多目的厂间歇调度MILP模型。这种“化整为零”的方法对解决大规模调度问题有较好的效果。
在供应链管理中,已经有很多系统优化软件包被广泛地使用,象ILOG的OPL(Optimization Programming Language)、Dash Optimization公司的XPRESSS-MP等。但是这些软件包基本上都是采用C或C++语言编写,很难被部署运行在Web上。从JAVA SDK 2开始,JAVA提供了一个称为JAVA本地接口(JAVA Native Interface,JNI)的新特性[6]。该特性使得JAVA可以很灵活地访问任何用C/C++编写的例程。这样,当使用JAVA来作为该优化系统的开发工具的时候,可以采用任何基于C/C++的优化软件包作为优化引擎,从而保证了本系统的开放性,极大地降低了系统开发和部署的难度,同时也保证了系统开发成功之后可以方便快捷的部署到Web环境中[7]。图1展示了该优化系统的3层框架。图2是该系统各层中模块的组成及相互关系。
系统的第一层是用户端,用来输入各种约束条件和数据,同时接收来自Web服务器的响应并在Web上输出显示。第二层是Web服务器,负责管理所有来自用户端的请求并与第三层的应用服务器和数据库服务器进行通讯。应用服务器上运行优化引擎,通过计算输入数据,得到优化结果;数据库服务器则永久保存所有的输入输出数据[8]。Web服务器,应用服务器和数据库服务器可以运行在一台计算机上,但出于性能及安全的考虑,最终上线的系统是将它们分布到不同的计算机中运行。
用户通过浏览器访问Web服务器,选择要进行的优化工作,例如需要进行产品需求预测。Web服务器上的JSP程序根据用户的选择生成并显示一个HTML页面。在这个页面中,用户进行约束条件的设定,输入优化所需基础数据。然后JAVA Servlet将输入数据转换成特定格式的数据文件,通过JNI调用优化引擎中的优化模型,计算得到优化结果。优化结果既可以被保存到数据库中,供以后调用,也可以实时的以简单易懂的形式通过HTML页面显示给用户。用户通过下拉列表选择感兴趣的报表形式,例如日生产计划,每小时的原料供应表和生产报告,等等。
3实际运行及结论
实际上线运行中,优化系统包括上千个生产变量和数百个约束条件。以前需要数天才能完成的计划表,现在只需几秒钟就可完成。这么短的响应时间保证企业可以针对市场变化,迅速做出调整,实现大规模定制;优化后的生产计划不仅最大限度地降低了库存,而且可以更好地利用生产和储运能力。本框架成功的将原来只能在单机或局域网上运行的系统优化软件升级到Web的分布式平台上,使得在不同地理位置的企业管理者可以通过浏览器随时查看到相关报表,快速做出运营决策。这对于那些跨地区的生产型企业尤为重要。该系统优化框架虽然是为化工企业开发的,但它也可以很方便被推广到其它行业。JAVA Servlet通过开放接口的JNI来调用基于C/C++的优化软件包的这种访问模式也可以被应用到企业其它的Web应用中。
参考文献:
[1] Christopher, M. 物流与供应链管理[M]. 北京:电子工业出版社,2006.
[2] 马士华,林勇. 供应链管理[M]. 北京:机械工业出版社,2005.
[3] Hsiang, T. The Illusion of Power[J]. OR/MS Today, 2001,28(2):34-36.
[4]Lee, H.L, V. Padmanabhan, S. Whang. The Bullwhip Effect in Supply Chains[J]. Sloan Management Review, 1997,38(3):93
-102.
[5] 吴建昱,何小荣,陈丙珍,等. 新的多产品间歇生产调度的MILP模型[J]. 化工学报,2003,54(9):1251-1256.
[6] Horstmann C., G. Cornell. Java 2核心技术卷II:高级特性[M]. 北京:机械工业出版社,2005.
[7] Lee Y.M., E.J. Chen. BASF Uses a Framework for Developing Web-Based Production-Planning-Optimization Tools[J]. Interfaces, 2002,32(6):15-24.
[8] 王琴,杨宗凯,吴砥. 基于工作流和JSP/Servlet技术的网上项目申报与管理系统设计[J]. 计算机应用研究,2006,23(12):181
-184.