基于决策树的进化规划算法解决制造业物料采购问题的制作方法

文档序号:11063817阅读:507来源:国知局
基于决策树的进化规划算法解决制造业物料采购问题的制造方法与工艺

本发明涉及企业管理领域,具体地涉及用算法解决制造业物料采购问题。



背景技术:

随着全球市场一体化以及信息时代的来临,专业生产能够发挥其巨大的作用,企业采购的比重也大大增加,采购的重要性日益被人们所认识。在全球范围内,在工业企业的产品构成中,采购的原料以及零部件成本随着行业不同而不同,大体在30%-90%,平均水平在60%以上。从世界范围来说,对于一个典型的企业,采购成本(包括原材料,零部件)要占60%。而在中国的工业企业,各种物资的采购成本要占到企业销售成本的70%。显然采购成本是企业管理中的主体和核心部分,采购是企业管理中“最有价值”的部分。另外,根据国家经贸委1999年发布的有关数据,如果国有大中型企业每年降低采购成本2%-3%,则可增加效益500多亿人民币,相当于1997年国有工业企业实现的利润总和。因此,采购受到了社会各界相当的重视,促使采购研究成为当今社会的热点问题之一。

因此,研究一种高效的智能优化方法来解决物料采购问题意义非凡。

进化规划是一种随机优化方法,其目的是通过进化达到行为智能化。进化规划算法从一组随机产生的个体开始进行搜索,通过变异、选择等操作使个体向着搜索空间中越来越靠近全局最优值的区域进化。进化规划算法是一种成熟的具有鲁棒性和广泛适用性的全局优化方法,具有自组织、自优化、自学习的特性,能够不受问题性质的限制,有效地处理传统优化算法难以解决的复杂问题。但是,由于过度选择、变异操作破坏有效个体和变异算子选取不当等原因,进化规划算法存在易于过早收敛、搜索效率低、对初始参数敏感等缺点。



技术实现要素:

针对现有技术的上述不足,本发明要解决的技术问题是提供基于决策树的进化规划算法解决制造业物料采购问题。

本发明的目的是克服现有技术中存在的问题:进化规划算法存在收敛过早、搜索效率低、计算精度不够高等缺点。

本发明为实现上述目的所采用的技术方案是:基于决策树的进化规划算法解决制造业物料采购问题。

该算法的步骤如下:

步骤1:确定采购标准:确定采购每个物料的采购量一般地,采购标准只是一个大概的量。

步骤2:选择备选供应商:从供应商S1,S2,...,Sn中选择满足采购量约束和资金约束条件的备选供应商。

步骤3:对备选供应商进行分类:利用决策树算法对备选供应商进行分类。决策树算法描述为:

(1)计算属性的信息熵。

(2)计算分割后的类别的条件熵。

(3)计算类别的信息熵。

(4)判断所有属性是否计算完,已计算完转到(5),否则转(1)。

(5)信息增益的计算:信息增益率使用分裂信息值将信息增益规范化。

(6)按分裂属性值创建决策树:决策树基于数据结构中树的概念。

(7)剪枝判定:当决策树划分得太细,数据量很大时,需要设定一个规则,使算法及时收敛,避免算法无限分支无限增长,即剪枝。

(8)得到一棵分类决策树。

步骤4:选择初始方案:通过决策树分类选择可靠性较高的供应商来组成采购方案集X,可靠性较低的供应商直接舍弃。供应商可靠性由信息增益和物料标准差两个标准来判定。

步骤5:计算平均适应度和标准差:按目标函数计算公式、时间窗约束条件、适应度函数计算各方案的适应度值f1,f2,...,fL,平均适应度和标准偏差σ。

步骤6:是否得到满意采购方案:若得到,终止计算,输出最低成本即相应的采购方案,否则转步骤7。

步骤7:计算新的采购方案:L个新的采购方案组成的方案集Y的产生由莱维飞行算法来确定。

步骤8:计算新的适应度值:通过适应度函数公式计算新方案集Y中各方案的适应度值,fL+1,fL+2,...,f2L

步骤9:判断集合Φ=X∪Y中是否有适应度相同的个体存在,若无,转步骤10,若有,则产生新的个体来替换重复适应度值个体。

步骤10:产生新的个体集:在集合Φ=X∪Y中,采取个体适应度竞争策略,选择适应度函数较大的L-N0个方案组成新一轮采购方案集Z。N0是在每一代进化过程中诸如的新个体数。

步骤11:将X中方案替换为新方案,X=Z+Z′,重复步骤5到步骤12。

本发明的有益效果是:

1.设置一个标准材料采购量,使算法多了一个约束条件,从而使算法计算结果更加可靠。

2.通过前剪枝法和树深度限定法对决策树的分割进行限制,防止算法无限发散。

3.利用信息增益标准差作为前剪枝法的限定条件,提高了算法的准确率。

4.利用改进的决策树算法对供应商进行分类,可以挑选出可信度较优的一类供应商作为初始方案。

5.利用供应商可靠性来作为对初始方案供应商的取舍的参考标准,简单有效。

6.供应商的物料供应可靠性由决策树算法信息增益和物料标准差来判定,使算法最初方案的可靠性更高。

7.通过舍弃一些可靠性较低的供应商,较少了算法的计算量,提高了算法的搜索效率。

8.通过利用莱维飞行算法计算个体变异量,使算法计算结果更加精确。

9.在计算每一个个体变异量的时候,都要满足个体变异量适应度才能确定个体变异量,使算法计算结果更加精确,同时避免了算法过早收敛。

附图说明

图1为基于决策树的进化规划算法解决制造业物料采购问题流程图

图2为决策树算法流程图

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合算法流程图进行详细、具体说明。

一、物料采购问题的描述

设有n类物资{M1,M2,...,Mn}分别从供应商S={S1,...,Sn}处采购,每种物资都有m个采购指标,如价格和运输费用等。在进行采购时,每种物资都选择一个指标作为主要指标,其他指标作为参考指标。如何选择不同物资的供应商,制定一个采购方案X={X1,X2,...,Xn},Xi={x1,x2,...xn},Xi∈Si,Si={Si1,Si2,...,Sik},i=1,2,...,n,k为第i组供应商数量,在满足采购量、订货期和资金等约束条件的前提下,使总的采购成本最低。建立规划模型如下:

目标函数:

其中qi=f(x1,x2,...,xm)为第i类物资的采购量,qixij表示第i类物资关于指标j的成本,xij表示第j个采购指标值,C(Xi)表示第i类物资的采购成本,C(x*)为最优采购方案x*的成本,即最优成本。

约束条件:

1)采购量约束:采购者和供应商对每一项指标都允许有一个浮动的区间,即:xij∈[T1(j),T2(j)],i=1,2,...,n;j=1,2,...,mT1(j),T2(j)分别为指标的下限和上限。

2)资金约束:每类物资的采购资金需满足:

qi=f(x1,x2,...,xm)是k次齐次方程,成本函数c(qi)反映了采购成本与采购量之间的约束关系,l为采购成本。

3)时间窗约束:

其中,ti为第i类物资的额订货期,t(σ)为各类物资订货期的标准差。满足算法的适应度函数:

fii=C(x*)t(σ),i=1,2,...,N

二、具体实施步骤

步骤1:确定采购标准:确定采购每个物料的采购量一般地,采购标准只是一个大概的量。

步骤2:选择备选供应商:从供应商S1,S2,...,Sn中选择满足采购量约束和资金约束条件的备选供应商。

步骤3:对备选供应商进行分类:用决策树算法对备选供应商进行分类。具体过程为:

(1)计算属性的信息熵:设S为已知类标号的数据样本集,即供应商集,类标号属性(分类属性)为C={Ci|i=1,2,...,z}定义了z个不同类的Ci(i=1,2,...,z)(即有z种物料)。设Ci,s是S中Ci类数据样本的集合,|S|和|Ci,s|分别表示S和Ci,s的样本个数。则对Ci,s的信息熵Info(S)定义如下:

其中,pi是Ci,s中任意数据样本属于类Ci的概率,Info(S)的实际意义是类别S中数据样本分类的平均信息量。

(2)计算分割后的类别的条件熵:若分类属性Ai={aij|j=1,2,...,ni}将S划分成ni个不同的子集Sij={(Xi,Yi)∈S|xij=aij}表示数据样本集S中在Ai上的取值为aij的所有样本组成的集合。选择S的一个属性A,则类别分割后的类别条件熵计算公式为:

(3)计算类别的信息熵:若选择属性Ai作为分裂属性,则类别信息熵为:

(4)判断所有属性是否计算完,已计算完转到(5),否则转(1)。

(5)信息增益的计算:信息增益率使用分裂信息值将信息增益规范化。属性Ai的信息增益为

从信息增益的计算公式可以看出,Gain(Ai)的实际意义是基于属性Ai分裂后,数据集所含信息量的有效减少量。信息增益越大,表明按属性Ai对数据集分裂所需的期望信息越少,即属性Ai解决的不确定信息量越大,分裂后的输出分区越纯。

(6)按分裂属性值创建决策树:决策树基于数据结构中树的概念。决策树C4.5的创建是通过将所有属性的信息增益率按大小排序,然后将各个属性作为分支的根节点的顺序。在某一属性集合中将最大增益率的属性作为分列属性,即θ=max{GainRatio(A)},即将最大增益率的属性作为树双亲结点,其余的作为该结点的孩子。

(7)剪枝判定:当决策树划分得太细,数据量很大时,需要设定一个规则,使算法及时收敛,避免算法无限分支无限增长,即剪枝。本发明采用前剪枝法结合树深度限定法对决策树进行剪枝。具体的实施如下:

前剪枝法:前剪枝法是指在构造树的过程中就知道哪些节点可以剪掉,于是干脆不对这些及诶点进行分裂。本发明通过计算增益率方差来确定是否对某一节点剪枝。增益率标准差大于某一设定值,则对该节点剪枝,否则可以分割建立其子树。数学公式描述为:

σi=GainRatio(Ai)-μ

如果σi>ε(标准差限定值),则剪枝,否则继续分割生成决策子树。

树深度限定法:设定一个确限定的树深度L,当决策树的深度到达L以后,停止分割。

(8)得到一棵分类决策树。

步骤4:选择初始方案:通过决策树分类选择可靠性较高的供应商来组成采购方案集X,可靠性较低的供应商直接舍弃。供应商的可靠性用指标标准差来刻画,可靠性越大,则该供应商为最有采购方案的可能性越大。供应商可靠性由以下两个准则标准来判定:

(1)在物料采购分析中,信息增益Gain(Ai)越大,表明物料类别Ai对数据集分裂所需的期望信息越少,即物料Ai的纯度越大。如果某一个属性的信息增益过大,则其他属性的信息增益就会小,如果这个数值跟采购标准量的信息增益相差过大,则说明该属性对应的供应商的可靠性较低,越有可能被丢弃。

(2)另一方面,通过物料标准差来判定,具体如下:

若满足σi<ε,ε为规定的偏差值,则将该供应商i组成一个采购方案{x1,x2,...,xn},若如σi>ε则将该供应商舍弃。如此下去,将满足偏差范围的供应商组成初始方案集X,设L=|X|。

步骤5:计算平均适应度和标准差:按目标函数计算公式、时间窗约束条件、适应度函数计算各方案的适应度值f1,f2,...,fL,平均适应度和标准偏差σ。

步骤6:是否得到满意采购方案:若得到,终止计算,输出最低成本即相应的采购方案,否则转步骤7。满意采购方案描述为:当某一次的计算结果满足客户要求,或计算达到给定的足够多的进化代数,或接的误差达到给定的精度时,此时的方案称为满意的采购方案。只要采购者对方案的评价结果满意,此时的方案即为算法的解。

步骤7:计算新的采购方案:L个新的采购方案组成的方案集Y的产生由莱维飞行算法来确定。具体如下:

(1)计算个体变异量:

x′i(j)=xi(j)+α·S

参数S是随机游动的步长,计算公式如下:

其中,β是一个[1,2]之间的参数,一般取β=1.5,u和v服从正态分布,如下所示:

其中,

(2):计算个体当前变异量的适应度:利用适应度函数来描述

fi(x′i(j))=C(x′i(j))t(σ),i=1,2,...,N

其中,

为时间窗约束,ti为第i类物资的额订货期,t(σ)为各类物资订货期的标准差。

C(x′i(j))=qix′i(j)

判断变异量适应度是否满足fi(x′i(j))≤ε(表示在可靠范围之内),ε为可靠范围上确界,如果满足,则转步骤8,否则返回到(1)。

步骤8:计算新的适应度值:通过适应度函数公式计算新方案集Y中各方案的适应度值,fL+1,fL+2,...,f2L

步骤9:判断集合Φ=X∪Y中是否有适应度相同的个体存在,若无,转步骤10,若有,则产生新的个体来替换重复适应度值个体,产生新个体计算公式:

步骤10:产生新的个体集:在集合Φ=X∪Y中,采取个体适应度竞争策略,选择适应度函数较大的L-N0个方案组成新一轮采购方案集Z。N0是在每一代进化过程中诸如的新个体数,产生新个体集为Z′。新个体集产生方式为:

步骤11:将X中方案替换为新方案,X=Z+Z′,重复步骤5到步骤11。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1