一种生产计划的确定方法以及装置与流程

文档序号:17938718发布日期:2019-06-18 22:51阅读:146来源:国知局
一种生产计划的确定方法以及装置与流程

本申请涉及计算机领域,尤其涉及一种生产计划的确定方法以及装置。



背景技术:

排产即制定生产计划,是企业对生产任务作出统筹安排,具体拟定生产产品的品种、数量、和进度计划的工作。排产是企业经营计划的重要组成部分,是企业进行生产管理的重要依据,既是实现企业经营目标的重要手段,也是组织和指导企业生产活动有计划进行的依据。同时,生产计划的合理安排,也有利于改进生产组织。

对大型制造企业,作为生产加工对象的元器件数以万计,每日有数十万条加工需求需要由分散在数十个加工地点的数百条生产线协同完成,其每日的排产结果不仅涉及数十亿元人民币的库存金额流动,而且直接影响加工周期长短和订单交付水平,对企业运作效益影响大。同时,实际的排产问题不仅规模巨大,还是一个多目标优化的过程,目前通常将多目标的大问题解耦为多个子问题,然后将子问题各自优化,最后合并生成最终的排产计划。

这样的排产虽然在各个子问题上都达到了最优需求,但是在实际排产当中,各个生产环节之间具有相互依赖性,因此按照上述排产计划可能会存在生产冲突,从而导致排产计划难以达到优化效果。



技术实现要素:

本申请实施例提供了一种生产计划的确定方法以及装置,用于将大规模、多目标的排产问题解耦成小规模的问题进行处理,有效提高大规模多目标的排产问题的优化效果。

第一方面,本申请实施例提供一种生产计划的确定方法,包括:该生产计划确定装置获取包括多个生产元素的目标的初始生产目标,即该初始生产目标为一个多目标的问题。其中,该生产元素至少包括生产对象、生产时间、生产地址和生产量;然后该生产计划确定装置将该初始生产目标划分成第一生产目标和第二生产目标,即该生产计划确定装置将一个多目标的大问题解耦成至少两下小的问题。其中,该第一生产目标包括多个生产元素中的至少一个生产元素,该第二生产目标包括该多个生产元素中的至少一个生产元素,且该第一生产目标中的生产元素与该第二生产目标中的生产元素不同;在划分好该第一生产目标和该第二生产目标之后,该生产计划确定装置可以先初始化该第一生产目标的第一生产计划集合,其中,该第一生产计划集合包括该第一生产目标的多个生产计划。可以理解的是,该第一生产计划集合可以是随机初始化生成,即为随机生成的生产计划;该生产计划确定装置根据该第一生产目标的第一生产计划集合确定该第二生产目标的第二生产计划集合,该第二生产计划集合包括该第二生产目标的多个生产计划;在生产计划确定装置将第一生产计划集合中的各个生产计划与该第二生产计划集合中的各个生产计划一一对应,用于生成该初始生产目标的第三生产计划集合;该生产计划确定装置从该第三生产计划集合中确定该初始生产目标的目标生产计划。

本申请实施例提供的技术方案中,该生产计划确定装置可以根据预设的选择条件从该第三生产计划集合中确定该初始生产目标的目标生产计划。其中,该选择条件可以是综合考虑各个生产元素的优化目标之后最合理的优化结果;或者,该选择条件可以是以某一个生产元素的优化目标。具体情况此处不做限定,只要符合用户需求即可。同时,在将该初始生产目标划分成小问题时,可以划分成多个,并不限定为2个生产目标,具体由实际生产情况确定。

本申请实施例中,将包括多个生产元素的目标的初始生产目标划分为相互依赖的至少两个小问题进行处理,可以有效的优化初始生产目标的生产计划,且可以有效的降低求解空间,从而加快求解速度。

可选的,可选的,该生产计划确定装置获取该第一生产目标的第一生产计划集合,具体可以采用如下可能实现方式:

根据该第一生产目标的生产元素确定个体大小,该个体大小等于i1*i2*…*in,其中该i1、i2、in表示该第一生产目标中各生产元素的目标,该n用于表示该第一生产目标中生产元素的个数;根据该个体大小、预设种群大小以及第一预设概率生成二进制随机数组,该二进制随机数据包括x个数字,该x等于该个体大小乘以该预设种群大小;根据该二进制随机数据获取该第一生产目标的第一生产计划集合。

可选的,该生产计划确定装置采用如下方式生成该第一生产目标的第一生产计划集合:

其中,该a、b、c和d的取值为1或0;该a…b或c…d为一行,包括l个数字,该l等于该个体大小;该a…c或b…d为一列,包括m个数字,该m等于该预设种群大小;每行数据用于表示同一个个体,每个个体对应该第一生产目标的第一生产计划集合中的一个生产计划。

本申请实施例中,在该生产计划确定装置在生成该二进制随机数时,具体实现方式如下:该生产计划确定装置以均匀概率生成位于[0,1]之间的随机实数,然后将其中大于该第一预设概率值的数字变为1,小于或者等于该第一预设概率值的数字变为0。

可选的,在该生产计划确定装置在获取到该第一生产目标的第一生产计划集合之后,还可以对该第一生产计划集合进行重复检测,若该第一生产计划集合中存在重复生产计划,则将该重复生产计划进行变形以使得该第一生产计划集合中各个生产计划不相同。可以理解的是,该重复生产计划是指对于该第一生产目标拥有相同的生产计划的至少两个个体。具体来说,假如上述该第一生产计划集合c1中的第四行的数字为[0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0];该第一生产计划集合c1中的第六行的数字也为[0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0],则说明该第四行对应的生产计划与该六行对应的生产计划为重复生产计划,然后该生产计划确定装置可以将该第四行和/或该第六行的数字进行变形,以使得该第一生产计划集合c1中不存在重复生产计划。其中,该生产计划确定装置对重复生产计划进行变形时可以采用如下方式:一种可能实现方式中,该生产计划确定装置在该重复生产计划中随机选择k个位点,然后将该k个位点中的数字进行取反(即若位点对应的数字为1,则将该位点对应的数字修改为0;若位点对应的数字为0,则将该位点对应的数字修改为1)。另一种可能实现方式中,该生产计划确定装置可以直接生成新的生产计划替换该重复生产计划。具体方式,此处不做限定,只要可以使得该第一生产计划集合中无重复生产计划即可。

可选的,该生产计划确定装置可以获取该第一生产目标的第一生产计划集合中的具有相同取值的目标位点集合,然后以该目标位点为约束通过混合整数规划计算该第二生产目标的第二生产计划集合。可以理解的是,该第二生产计划集合中包括了该第二生产目标的多个生产计划,且该生产计划的数量与该第一生产计划集合中的生产计划数量相同。

可选的,该生产计划确定装置还可以进行迭代处理,具体如下:根据该第三生产计划集合确定该第一生产目标的第四生产计划集合,该第四生产计划集合中至少存在一个与该第一生产计划集合不重复的生产计划;根据该第四生产计划集合确定该第二生产目标的第五生产计划集合,该第五生产计划集合包括该第二生产目标的多个生产计划;根据该第四生产计划集合和该第五生产计划集合确定该初始生产目标的第六生产计划集合;根据该第六生产计划集合和该第三生产计划集合确定该初始生产目标的目标生产计划。

本申请实施例中,该生产计划确定装置对计算过程进行迭代处理可以有效的计算优化生产计划集合,从而提高生产计划的有效性。

可选的,该生产计划确定装置根据该第三生产计划集合生成该第四生产计划集合的方式可以有如下几种可能实现方式:

一种可能实现方式中,该生产计划确定装置从该第三生产计划集合选择符合优选条件的生产计划生成优选生产计划集合,该优选条件包括该初始生产目标中各生产元素的优化目标;按照第二预设概率更新该优选生产计划集合中第一目标生产元素的生产计划,得到第一更新生产计划,该目标生产元素为该第一生产目标中的生产元素;将该第一更新生产计划生成该第一生产目标的第四生产计划集合。

可选的,该生产计划确定装置在根据优选条件获取该优选生产计划集合时,具体操作可以如下:该生产计划确定装置在确定该第三生产计划集合之后,遍历该第三生产计划集合,将符合优选条件的生产计划加入该优选生产计划集合,其中,该优选生产计划集合中的生产计划也可以说是当前计算过程中的优解。该预设条件可以包括如下几种可能:一种可能实现方式中,若该生产计划a的第二生产目标在该优选生产计划集合中不存在,则将该生产计划a加入该优选生产计划集合;一种可能实现方式中,若该生产计划b与该优选生产计划集合的生产计划c拥有相同的第二生产目标的生产计划,但是该生产计划b的第一生产目标的生产计划优于该优选生产计划集合中的生产计划c,则用该生产计划b替换该优选生产计划集合的生产计划c。

一种可能实现方式中,该生产计划确定装置从该第三生产计划集合选择符合优选条件的生产计划生成优选生产计划集合,该优选条件包括该初始生产目标中各生产元素的优化目标;获取该优选生产计划集合中各生产元素的选择概率;从该优选生产计划集合中根据该选择概率确定第二目标生产元素,该第二目标生产元素为该第一生产目标中的生产元素;为该第二目标生产元素设置相同的生产计划,得到第二更新生产计划;将该第二更新生产计划生成该第一生产目标的第四生产计划集合。可选的,该生产计划确定装置获取该优选生产计划集合的方法与前面描述的相同,此处不再赘述。

一种可能实现方式中,该生产计划确定装置从该第三生产计划集合中采样生成采样生产计划集合,该采样生产计划集合包括该第三生产计划集合中的部分生产计划;以第三预设概率将该采样生产计划集合中的生产计划的数字由0变为1得到第一更新生产计划集合;以第四预设概率将该采样生产计划集合中的生产计划的数字由1变为0得到第二更新生产计划集合;取该第一更新生产计划集合和该第二更新生产计划集合的并集生成该第一生产目标的第四生产计划集合。

一种可能实现方式中,该生产计划确定装置按照预设参数确定采样范围;根据该采样范围从该第三生产计划集合中采样生成该第一生产目标的第四生产计划集合。

可以理解的是,该生产计划确定装置在根据该第三生产计划集合确定该第四生产计划集合时,可以采用上述几种方案中的至少一项,相应的该第四生产计划集合为上述几种方案中得到的生产计划的并集。比如该生产计划确定装置在采用方案1和方案2生成该第四生产计划集合时,该第四生产计划集合包括方案1得到的更新生产计划和该方案2得到的更新生产计划。

可选的,在该生产计划确定装置生成该第四生产计划集合还可以对该第四生产计划集合的种群大小进行调整,若该第一生产目标的第四生产计划集合中的生产计划数目小于该预设种群大小,则根据第五预设概率生成新生产计划加入该第一生产目标的第四生产计划集合,以使得该第四生产计划集合中的生产计划数目等于该预设种群大小;若该第一生产目标的第四生产计划集合中的生产计划数目大于该预设种群大小,则对该第一生产目标的第四生产计划集合按照第六预设概率进行采样,以使得该第一生产目标的第四生产计划集合中的生产计划数目等于该种群大小。

本实施例中采用多种方式生成迭代初始生产计划集合,可以有效的降低求解空间,加快求解速度。

可选的,该第一生产目标包括生产对象的目标、生产地址的目标和生产时间的目标;该第二生产目标包括生产量的目标。

第二方面,本申请实施例提供了一种生产计划确定装置,该装置具有实现上述第一方面该方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

在一个可能的实现方式中,该装置包括用于执行以上第一方面各个步骤的单元或模块。例如,该装置包括:获取模块,用于获取初始生产目标,该初始生产目标包括多个生产元素的目标,该生产元素至少包括生产对象、生产时间、生产地址和生产量;处理模块,用于将该初始生产目标划分为第一生产目标和第二生产目标,该第一生产目标包括该多个生产元素中的至少一个生产元素的目标,该第二生产目标包括该多个生产元素中的至少一个生产元素的目标,该第一生产目标中的生产元素与该第二生产目标中的生产元素不同;获取该第一生产目标的第一生产计划集合,该第一生产计划集合包括该第一生产目标的多个生产计划;用于根据该第一生产目标的第一生产计划集合确定该第二生产目标的第二生产计划集合,该第二生产计划集合包括该第二生产目标的多个生产计划;根据该第一生产计划集合和该第二生产计划集合确定该初始生产目标的第三生产计划集合,该第三生产计划集合包括该初始生产目标的多个生产计划;输出模块,从该第三生产计划集合中确定该初始生产目标的目标生产计划。

可选的,还包括存储模块,用于保存生产计划确定装置必要的程序指令和数据。

在一种可能的实现方式中,该装置包括:处理器和输入输出装置,该处理器被配置为支持生产计划确定装置执行上述第一方面提供的方法中相应的功能,该输入输出装置用于输入或输出各种信令或数据。可选的,此装置还可以包括存储器,该存储器用于与处理器耦合,其保存生产计划确定装置必要的程序指令和数据。

在一种可能的实现方式中,当该装置为生产计划确定装置的芯片时,该芯片包括:处理模块和收发模块,该处理模块例如可以是处理器,该收发模块例如可以是该芯片上的输入/输出接口、管脚或电路等,该收发模块获取初始生产目标,并传送给与此芯片耦合的其他芯片或模块;此处理器用于将该初始生产目标划分为第一生产目标和第二生产目标;然后该收发模块获取该第一生产目标的第一生产计划集合。该处理模块可执行存储单元存储的计算机执行指令,以支持生产计划确定装置执行上述第一方面提供的方法。可选地,该存储单元可以为该芯片内的存储单元,如寄存器、缓存等,该存储单元还可以是位于该芯片外部的存储单元,如只读存储器(read-onlymemory,简称rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,简称ram)等。

其中,上述任一处提到的处理器,可以是一个通用中央处理器(centralprocessingunit,简称cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,简称asic),或一个或多个用于控制上述各方面生产计划的确定方法的程序执行的集成电路。

第三方面,本申请实施例提供一种计算机可读存储介质,该计算机存储介质存储有计算机指令,该计算机指令用于执行上述第一方面中任意可能的实施方式该的方法。

第四方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面中该的方法。

第五方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持生产计划确定装置实现上述方面中所涉及的功能,例如生成或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,该芯片系统还包括存储器,该存储器,用于保存生产计划确定装置必要的程序指令和数据,以实现上述各方面中第一方面的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。

附图说明

图1为本申请实施例中小规模的排产问题解决技术框架;

图2为本申请实施例中生产计划的确定方法的思路流程图;

图3为本申请实施例中生产计划的确定方法的一个实施例示意图;

图4为本申请实施例中重复生产计划的去重流程示意图;

图5为本申请实施例中生产计划的确定方法的另一个实施例示意图;

图6为本申请实施例中获取第四生产计划集合的一个流程示意图;

图7为本申请实施例中获取第四生产计划集合的另一个流程示意图;

图8为本申请实施例中获取第四生产计划集合的另一个流程示意图;

图9为本申请实施例中获取第四生产计划集合的另一个流程示意图;

图10为本申请实施例中调整第四生产计划集合中生产计划数量的流程示意图;

图11为本申请实施例中生产计划确定装置的一个实施例示意图;

图12为本申请实施例中生产计划确定装置的另一个实施例示意图。

具体实施方式

本申请实施例提供了一种生产计划的确定方法以及装置,将大规模、多目标的排产问题解耦成小规模的问题进行处理,有效提高大规模多目标的排产问题的优化效果。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

排产即制定生产计划,是企业对生产任务作出统筹安排,具体拟定生产产品的品种、数量、和进度计划的工作。排产是企业经营计划的重要组成部分,是企业进行生产管理的重要依据,既是实现企业经营目标的重要手段,也是组织和指导企业生产活动有计划进行的依据。同时,生产计划的合理安排,也有利于改进生产组织。目前的排产计划多采用如图1所示的方案,其实现步骤是:(1)初始化。读取作业和机器属性等信息,定义优化目标,设定约束条件;(2)在初始时刻,基于静态多目标进化算法,同时优化完工时间、拖期和最大机器负载;(3)在车间生产过程中,采用由紧急动态事件驱动的重调度方式,基于动态多目标进化算法在新环境中快速产生一个新的调度方案,以同时优化待调度工件的完工时间、拖期、最大机器负载和稳定性。这种调度方案能够及时响应紧急动态事件的发生,根据动态环境自适应地调整搜索策略,生成的调度方案具有效率高、稳定性优的特点。但此调度方案仅适用于单个车间的调度排产,无法满足一个大型制造企业对于大规模多目标排产方案的需求。因此对一个每天都要进行排产的大型企业单位,如何高效计算出优质的生产计划是一个巨大的挑战。

本申请实施例提供如下技术方案:该生产计划确定装置获取包括多个生产元素的目标的初始生产目标,即该初始生产目标为一个多目标的问题。其中,该生产元素至少包括生产对象、生产时间、生产地址和生产量;然后该生产计划确定装置将该初始生产目标划分成第一生产目标和第二生产目标,即该生产计划确定装置将一个多目标的大问题解耦成至少两下小的问题。其中,该第一生产目标包括多个生产元素中的至少一个生产元素,该第二生产目标包括该多个生产元素中的至少一个生产元素,且该第一生产目标中的生产元素与该第二生产目标中的生产元素不同;在划分好该第一生产目标和该第二生产目标之后,该生产计划确定装置可以先初始化该第一生产目标的第一生产计划集合,其中,该第一生产计划集合包括该第一生产目标的多个生产计划。可以理解的是,该第一生产计划集合可以是随机初始化生成,即为随机生成的生产计划;该生产计划确定装置根据该第一生产目标的第一生产计划集合确定该第二生产目标的第二生产计划集合,该第二生产计划集合包括该第二生产目标的多个生产计划;在生产计划确定装置将第一生产计划集合中的各个生产计划与该第二生产计划集合中的各个生产计划一一对应,用于生成该初始生产目标的第三生产计划集合;该生产计划确定装置从该第三生产计划集合中确定该初始生产目标的目标生产计划。

本申请实施例中的主要解决思路如图2所示,对于一个复杂多目标优化问题,本申请实施例中首先将原问题拆解成n个更小规模的子问题,然后利用初始解集求解子问题1生成解集1,然后利用该解集1求解子问题2,依次求解最后得到子问题n的解集n,然后根据该解集1至解集n生成原问题的解集,然后更新最优解集以及新的初始解集,然后再次进行迭代求解,然后在迭代到预设次数之后,从最优解集中输出目标生产计划。

具体情况请参阅图3所示,本申请实施例中生产计划的确定方法的一个实施例如下:

301、该生产计划确定装置获取初始生产目标,该初始生产目标包括多个生产元素的目标,该生产元素至少包括生产对象、生产时间、生产地址和生产量。

本实施例中,该生产计划确定装置获取包括多个生产元素的目标的初始生产目标,即该初始生产目标为一个多目标的问题。其中,该生产元素至少包括生产对象、生产时间、生产地址和生产量。例如,该初始生产目标可以为在深圳的三个工厂十天内生产三种手机的元器件各10万件。当然该生产元素还可以包括生产成本、供货对象等。具体此处不做限定,只要满足构成多目标排产问题即可。

302、该生产计划确定装置将该初始生产目标划分为第一生产目标和第二生产目标,该第一生产目标包括该多个生产元素中的至少一个生产元素的目标,该第二生产目标包括该多个生产元素中的至少一个生产元素的目标,该第一生产目标中的生产元素与该第二生产目标中的生产元素不同。

该生产计划确定装置将该初始生产目标划分成第一生产目标和第二生产目标,即该生产计划确定装置将一个多目标的大问题解耦成至少两下小的问题。其中,该第一生产目标包括多个生产元素中的至少一个生产元素,该第二生产目标包括该多个生产元素中的至少一个生产元素,且该第一生产目标中的生产元素与该第二生产目标中的生产元素不同。例如,在该初始生产目标包括生产对象的目标(3个手机元器件)、生产地址的目标(3个工厂)、生产时间的目标(10天)和生产量(3个手机元器件各10万件)时,该第一生产目标可以包括生产对象的目标(3个手机元器件)、生产地址的目标(3个工厂)、生产时间的目标(10天);而该第二生产目标可以包括生产量(3个手机元器件各10万件)。

303、该生产计划确定装置获取该第一生产目标的第一生产计划集合,该第一生产计划集合包括该第一生产目标的多个生产计划。

在划分好该第一生产目标和该第二生产目标之后,该生产计划确定装置可以先初始化该第一生产目标的第一生产计划集合,其中,该第一生产计划集合包括该第一生产目标的多个生产计划。可以理解的是,该第一生产计划集合可以是随机初始化生成,即为随机生成的生产计划。

可选的,该生产计划确定装置获取该第一生产目标的第一生产计划集合,具体可以采用如下可能实现方式:

根据该第一生产目标的生产元素确定个体大小,该个体大小等于i1*i2*…*in,其中该i1、i2、in表示该第一生产目标中各生产元素的目标,该n用于表示该第一生产目标中生产元素的个数;根据该个体大小、预设种群大小以及第一预设概率生成二进制随机数组,该二进制随机数据包括x个数字,该x等于该个体大小乘以该预设种群大小;根据该二进制随机数据获取该第一生产目标的第一生产计划集合。

可选的,在该第一生产目标包括生产对象的目标、生产地址的目标、生产时间的目标;而该第二生产目标包括生产量的目标。该生产计划确定装置可以按照该生产对象、生产地址、生产时间的顺序进行编码,编码的含义可以表示一个生产对象在一个工厂的一天是否生产,即该第一生产目标的生产计划是为了说明一个生产对象在一个工厂的一天是否生产的情况;同时,该第二生产目标为生产量,即用于表示在第一生产目标下,一个生产对象在一个工厂一天内的生产数量。

下面本实施例中第一生产目标包括生产对象的目标、生产地址的目标、生产时间的目标;而该第二生产目标可以包括生产量的目标进行说明。具体来说,假设该生产对象包括i个,该生产地址包括j个,该生产时间包括t天,则该生产计划确定装置可以确定该个体大小为i*j*t;假设该预设种群大小为m个,则该生产计划确定装置需要生成m*i*j*t个二进制随机数(即生成m*i*j*t个数字,数字取值为1或0),其中,在生成该m*i*j*t个二进制随机数时,每个二进制数字可以有第一预设概率是数字0或者是数字1;最后该生产计划确定装置将该m*i*j*t个二进制随机数排列生成矩阵作为该第一生产计划集合,其中,该矩阵拥有i*j*t列,m行。可以理解的是该生产对象是否生产还可以根据实际情况进行判断,比如选择市场需求大于库存量的生产对象进行编码等。比如,公司a需要生产的元器件包括3个(元器件a、元器件b以及元器件c),该公司的生产地址包括3个(工厂a、工厂b以及工厂c),而这一批元器件的生产时间只有3天,而公司a在进行市场调查之后发现元器件a的市场需求量小于库存量,而其他元器件的的市场需求量均大于库存量,则该生产计划确定装置可以确定该个体大小为2*3*3=18,若预设种群大小为300,则该生产计划确定装置需要生成18*300=5400个二进制随机数组,然后,将该二进制随机数组重新排列输出该第一生产计划集合c1:

其中,该矩阵为18列300行,对于该矩阵中的每一行数据均对应同一个个体,每个个体对应该第一生产目标的第一生产计划集合中的一个生产计划,其中的每一个位点(即数字所处位置)即为对应的元器件在对应工厂对应的生产时间内是否生产(可以设置1表示生产,0表示不生产)。

在该生产计划确定装置在生成该二进制随机数时,具体实现方式如下:该生产计划确定装置以均匀概率生成位于[0,1]之间的随机实数,然后将其中大于该第一预设概率值的数字变为1,小于或者等于该第一预设概率值的数字变为0。

可选的,在该生产计划确定装置在获取到该第一生产目标的第一生产计划集合之后,还可以对该第一生产计划集合进行重复检测,若该第一生产计划集合中存在重复生产计划,则将该重复生产计划进行变形以使得该第一生产计划集合中各个生产计划不相同。可以理解的是,该重复生产计划是指对于该第一生产目标拥有相同的生产计划的至少两个个体。具体来说,假如上述该第一生产计划集合c1中的第四行的数字为[0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0];该第一生产计划集合c1中的第六行的数字也为[0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0],则说明该第四行对应的生产计划与该六行对应的生产计划为重复生产计划,然后该生产计划确定装置可以将该第四行和/或该第六行的数字进行变形,以使得该第一生产计划集合c1中不存在重复生产计划。其中,该生产计划确定装置对重复生产计划进行变形时可以采用如下方式:在该重复生产计划中随机选择k个位点,然后将该k个位点中的数字进行取反(即若位点对应的数字为1,则将该位点对应的数字修改为0;若位点对应的数字为0,则将该位点对应的数字修改为1)。另一种可能实现方式中,该生产计划确定装置可以直接生成新的生产计划替换该重复生产计划。具体方式,此处不做限定,只要可以使得该第一生产计划集合中无重复生产计划即可。

一种示例方式中,具体去重的方法流程可以如图4所示:

首先输入该第一生产计划集合;然后对该第一生产计划集合进行重复性检测,若不存在重复生产计划,则结束该去重操作;若存在重复生产计划,则等概率生成[1,3]内的随机整数k(即确定选择k个位点);然后等概率生成k个[1,个体大小]内的整数ik(即确定位点的位置);最后将该重复生产计划ik位的数字取反;然后重复以上操作,直至该第一生产计划集合中不存在重复生产计划。以上述第一生产计划集合c1中的第四行为例,若选择3个位点,且3个位点的位置分别为第五位,第七位以及第十位,则该第四行的数字将会由[0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0]变成[0,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,0]。

304、该生产计划确定装置根据该第一生产目标的第一生产计划集合确定该第二生产目标的第二生产计划集合,该第二生产计划集合包括该第二生产目标的多个生产计划。

该生产计划确定装置可以获取该第一生产目标的第一生产计划集合中的具有相同取值的目标位点集合,然后以该目标位点为约束通过混合整数规划计算该第二生产目标的第二生产计划集合。可以理解的是,该第二生产计划集合中包括了该第二生产目标的多个生产计划,且该生产计划的数量与该第一生产计划集合中的生产计划数量相同。

具体来说,本实施例中,对于输入的第一生产计划集合中的每个生产计划,将每个生产计划中用于表示对应元器件在对应工厂在对应生产时间可以进行生产的约束加入该生产计划的混合整数规划约束,即对于生产数量xi,j,t(用于表示元器件i在工厂j在日期t进行生产的数量大小)有约束:yi,j,t×bc≥xi,j,t,其中,该bc是一个正的大常数,yi,j,t用于表示元器i在工厂j在日期t是否进行生产(此处yi,j,t取值为1表示生产,yi,j,t取值为0表示不生产)。然后求解该混合整数规划问题得到该xi,j,t的解集(即该第二生产计划集合),然后将该xi,j,t替换对应的生产计划yi,j,t。

305、该生产计划确定装置根据该第一生产计划集合和该第二生产计划集合确定该初始生产目标的第三生产计划集合,该第三生产计划集合包括该初始生产目标的多个生产计划。

在生产计划确定装置将第一生产计划集合中的各个生产计划与该第二生产计划集合中的各个生产计划一一对应,用于生成该初始生产目标的第三生产计划集合。

306、该生产计划确定装置从该第三生产计划集合中确定该初始生产目标的目标生产计划。

该生产计划确定装置从该第三生产计划集合中确定该初始生产目标的目标生产计划。

可选的,该生产计划确定装置可以根据预设的选择条件从该第三生产计划集合中确定该初始生产目标的目标生产计划。其中,该选择条件可以是综合考虑各个生产元素的优化目标之后最合理的优化结果;或者,该选择条件可以是以某一个生产元素的优化目标。具体情况此处不做限定,只要符合用户需求即可。

可以理解的是,在上述方法的基础上,该生产计划确定装置在求解该初始生产目标的生产计划集合时还可以进行迭代处理,具体请参阅图4所示:

步骤501至步骤505与图3中步骤301至305相似,此处不再继续赘述。

506、该生产计划确定装置根据该第三生产计划集合确定该第一生产目标的第四生产计划集合,该第四生产计划集合中至少存在一个与该第一生产计划集合不重复的生产计划。

该生产计划确定装置在再次迭代计算时,需要获取新的初始生产计划集合,即该第四生产计划集合。其中该第四生产计划集合是根据该第三生产计划集合生成。

可选的,该生产计划确定装置根据该第三生产计划集合生成该第四生产计划集合的方式可以有如下几种可能实现方式:

1、该生产计划确定装置从该第三生产计划集合选择符合优选条件的生产计划生成优选生产计划集合,该优选条件包括该初始生产目标中各生产元素的优化目标;按照第二预设概率更新该优选生产计划集合中第一目标生产元素的生产计划,得到第一更新生产计划,该目标生产元素为该第一生产目标中的生产元素;将该第一更新生产计划生成该第一生产目标的第四生产计划集合。

可选的,该生产计划确定装置在根据优选条件获取该优选生产计划集合时,具体操作可以如下:该生产计划确定装置在确定该第三生产计划集合之后,遍历该第三生产计划集合,将符合优选条件的生产计划加入该优选生产计划集合,其中,该优选生产计划集合中的生产计划也可以说是当前计算过程中的优解。该预设条件可以包括如下几种可能:一种可能实现方式中,若该生产计划a的第二生产目标在该优选生产计划集合中不存在,则将该生产计划a加入该优选生产计划集合;一种可能实现方式中,若该生产计划b与该优选生产计划集合的生产计划c拥有相同的第二生产目标的生产计划,但是该生产计划b的第一生产目标的生产计划优于该优选生产计划集合中的生产计划c,则用该生产计划b替换该优选生产计划集合的生产计划c。

方案1的一种示例方式如图6所示:

该生产计划确定装置在获取到优选生产计划集合之后,令第四生产计划集合为空,然后遍历该优选生产计划集合,并将遍历到的生产计划记作popk,然后将生产计划popk复制生成为生产计划popnew;然后对该popnew中随机选择其中一个元器件i,以第二预设概率重新生成该元器件i的生产计划,然后保持该生产计划中其他元器件的生产计划不变从而生成第一更新生产计划,得到第一更新生产计划加入该第四生产计划集合。其中,该第二预设概率为[0,1]内随机生成的实数p1,且在该时,将元器件i对应的位点置为1,否则为0,其中(jcap(i)>0)表示元器件i产能大于0的工厂集合,t表示生产计划的时间长度,表示在个体popk中元器件i在工厂j在生产时间t是否生产。

2、该生产计划确定装置从该第三生产计划集合选择符合优选条件的生产计划生成优选生产计划集合,该优选条件包括该初始生产目标中各生产元素的优化目标;获取该优选生产计划集合中各生产元素的选择概率;从该优选生产计划集合中根据该选择概率确定第二目标生产元素,该第二目标生产元素为该第一生产目标中的生产元素;为该第二目标生产元素设置相同的生产计划,得到第二更新生产计划;将该第二更新生产计划生成该第一生产目标的第四生产计划集合。可选的,该生产计划确定装置获取该优选生产计划集合的方法与前面描述的相同,此处不再赘述。

方案2的一种示例方式如图7所示:

该生产计划确定装置在提取优选生产计划集合之后,令第四生产计划集合为空,然后遍历该优选生产计划集合,并将遍历到的生产计划记作popk,然后将生产计划popk复制生成为生产计划popnew;同时生成各生产对象的适应度(即该选择概率)(本实施例中,该适应度可以根据各元器件的需求量和缺货成本计算得到,具体公式为fi=di×ci,其中该fi为适应度,该di为需求量,该ci为缺货成本);然后该生产计划确定装置遍历该优选生产计划集合中的各个生产计划,对于每个生产计划popnew以适应度fi轮盘赌选择其中一个元器件i的生产计划全部置为1,即令其他元器件的生产计划不变,得到新生产计划加入第四生产计划集合。

3、该生产计划确定装置从该第三生产计划集合中采样生成采样生产计划集合,该采样生产计划集合包括该第三生产计划集合中的部分生产计划;以第三预设概率将该采样生产计划集合中的生产计划的数字由0变为1得到第一更新生产计划集合;以第四预设概率将该采样生产计划集合中的生产计划的数字由1变为0得到第二更新生产计划集合;取该第一更新生产计划集合和该第二更新生产计划集合的并集生成该第一生产目标的第四生产计划集合。

一种示例方式如图8所示:

该生产计划确定装置将该第三生产计划集合和该优选生产计划集合合并生成输入种群,然后根据从该输入种群中随机采样预设数目的个体生成采样生产计划集合;然后以第三预设概率将采样生产计划集合中的生产计划所有位点的取值由1变成0,得到第一更新生产计划集合pop3-;以第四预设概率将采样生产计划集合中的生产计划所有位点的取值0变成1,得到第二更新生产计划集合pop3+;最后输出第四生产计划集合=pop3+∪pop3-。

4、该生产计划确定装置按照预设参数确定采样范围;根据该采样范围从该第三生产计划集合中采样生成该第一生产目标的第四生产计划集合。

一种示例方式如图9所示:

该生产计划确定装置将该第三生产计划集合的生产计划按第一生产目标从小到大排序,定义s=0.35,若当前迭代次数<s*设定迭代次数(记作iter_limit),则令i=0;否则i=(当前迭代次数-iter_limit*s)/iter_limit(1.0-s)。令ne=[population_size*elite_rate],elite_rate预设概率,最后从排序后的生产计划中取第[i*(population_size-ne)]个生产计划至第[i*(population_size-ne)]+ne个生产计划作为采样样本输出。

可以理解的是,该生产计划确定装置在根据该第三生产计划集合确定该第四生产计划集合时,可以采用上述几种方案中的至少一项,相应的该第四生产计划集合为上述几种方案中得到的生产计划的并集。比如该生产计划确定装置在采用方案1和方案2生成该第四生产计划集合时,该第四生产计划集合包括方案1得到的更新生产计划和该方案2得到的更新生产计划。

可选的,在该生产计划确定装置生成该第四生产计划集合还可以对该第四生产计划集合的种群大小进行调整,若该第一生产目标的第四生产计划集合中的生产计划数目小于该预设种群大小,则根据第五预设概率生成新生产计划加入该第一生产目标的第四生产计划集合,以使得该第四生产计划集合中的生产计划数目等于该预设种群大小;若该第一生产目标的第四生产计划集合中的生产计划数目大于该预设种群大小,则对该第一生产目标的第四生产计划集合按照第六预设概率进行采样,以使得该第一生产目标的第四生产计划集合中的生产计划数目等于该种群大小。

以该第四生产计划集合包括方案1、方案2以及方案3生成的更新生产计划为例进行说明,具体情况请参阅图10:

该生产计划确定装置将该第一子种群(该方案1生成的更新生产计划)、该第二子种群(该方案2生成的更新生产计划)和该第三子种群(该方案3生成的更新生产计划)合并作为输入种群(记作p0);然后判断该p0的种群大小(记作|p0|)是否小于预设种群大小(记作population_size);若|p0|<population_size则该生产计划确定装置从p0随机删除|p0|-population_size个个体(即生产计划)或者是以第六预设概率从该p0中采样以使得|p0|=population_size,然后输出更新后的p0作为该第四生产计划集合;若|p0|不小于population_size,则该生产计划装置以第五预设概率生成population_size-|p0|个新个体(即生产计划)加入该p0,然后输出更新后的p0作为该该第四生产计划集合。

507、该生产计划确定装置根据该第四生产计划集合确定该第二生产目标的第五生产计划集合,该第五生产计划集合包括该第二生产目标的多个生产计划。

该生产计划确定装置可以获取该第一生产目标的第四生产计划集合中的具有相同取值的目标位点集合,然后以该目标位点为约束通过混合整数规划计算该第二生产目标的第五生产计划集合。可以理解的是,该第二生产计划集合中包括了该第二生产目标的多个生产计划,且该生产计划的数量与该第一生产计划集合中的生产计划数量相同。

具体来说,本实施例中,对于输入的第四生产计划集合中的每个生产计划,将每个生产计划中用于表示对应元器件在对应工厂在对应生产时间可以进行生产的约束加入该生产计划的混合整数规划约束,即对于生产数量xi,j,t(用于表示元器件i在工厂j在日期t进行生产的数量大小)有约束:yi,j,t×bc≥xi,j,t,其中,该bc是一个正的大常数,yi,j,t用于表示元器i在工厂j在日期t是否进行生产(此处yi,j,t取值为1表示生产,yi,j,t取值为0表示不生产)。然后求解该混合整数规划问题得到该xi,j,t的解集(即该第五生产计划集合),然后将该xi,j,t替换对应的生产计划yi,j,t。

508、该生产计划确定装置根据该第四生产计划集合和该第五生产计划集合确定该初始生产目标的第六生产计划集合。

在生产计划确定装置将第一生产计划集合中的各个生产计划与该第二生产计划集合中的各个生产计划一一对应,用于生成该初始生产目标的第三生产计划集合。

509、该生产计划确定装置根据该第六生产计划集合和该第三生产计划集合确定该初始生产目标的目标生产计划。

该生产计划确定装置从该第三生产计划集合和第六生产计划集合中确定该初始生产目标的目标生产计划。

可选的,该生产计划确定装置可以根据预设的选择条件从该第三生产计划集合中确定该初始生产目标的目标生产计划。其中,该选择条件可以是综合考虑各个生产元素的优化目标之后最合理的优化结果;或者,该选择条件可以是以某一个生产元素的优化目标。具体情况此处不做限定,只要符合用户需求即可。

上面对于本申请实施例中生产计划的确定方法进行了说明,下面对本申请实施例中的生产计划确定装置进行说明。

具体请参阅图11所示,本申请实施例中该生产计划确定装置1100包括:获取模块1101、处理模块1102和确定模块1103。装置1100可以是上述方法实施例中的生产计划确定装置,也可以是生产计划确定装置内的一个或多个芯片。装置1100可以用于执行上述方法实施例中的生产计划确定装置的部分或全部功能。

例如,该获取模块1101可以用于执行上述方法实施例中的步骤301,或者用于执行前述方法实施例中的步骤501。

该处理模块1102,可以用于执行上述方法实施例中的步骤302至305或者用于执行步骤502和步骤508。

该确定模块1103,可以用于执行上述方法实施例中的步骤306或者步骤509。

可选的,装置1100还包括存储模块,此存储模块于处理模块耦合,使得处理模块可执行存储模块中存储的计算机执行指令以实现上述方法实施例中生产计划确定装置的功能。在一个示例中,装置1100中可选的包括的存储模块可以为芯片内的存储单元,如寄存器、缓存等,该存储模块还可以是位于芯片外部的存储单元,如只读存储器(read-onlymemory,简称rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,简称ram)等。

应理解,上述图11对应实施例中生产计划确定装置的各模块之间所执行的流程与前述图3至图10中对应方法实施例中的生产计划确定装置执行的流程类似,具体此处不再赘述。

图12示出了上述实施例中一种生产计划确定装置1200可能的结构示意图,该装置1200可以配置成是前述生产计划确定装置。该装置1200可以包括:处理器1202、计算机可读存储介质/存储器1203、收发器1204、输入设备1205和输出设备1206,以及总线1201。其中,处理器,收发器,计算机可读存储介质等通过总线连接。本申请实施例不限定上述部件之间的具体连接介质。

一个示例中,输入设备1205获取初始生产目标,该初始生产目标包括多个生产元素的目标,该生产元素至少包括生产对象、生产时间、生产地址和生产量;该处理器1202将该初始生产目标划分为第一生产目标和第二生产目标,该第一生产目标包括该多个生产元素中的至少一个生产元素的目标,该第二生产目标包括该多个生产元素中的至少一个生产元素的目标,该第一生产目标中的生产元素与该第二生产目标中的生产元素不同;获取该第一生产目标的第一生产计划集合,该第一生产计划集合包括该第一生产目标的多个生产计划;

输出设备1206从该第三生产计划集合中确定该初始生产目标的目标生产计划。

又一个示例中,处理器1202可以运行操作系统,控制各个设备和器件之间的功能。收发器1204可以包括基带电路和射频电路。

输入设备1205、输出设备1206和该处理器1202可以实现上述图3至图10中任一实施例中相应的步骤,具体此处不做赘述。

可以理解的是,图12仅仅示出了生产计划确定装置的简化设计,在实际应用中,生产计划确定装置可以包含任意数量的收发器,处理器,存储器等,而所有的可以实现本申请的生产计划确定装置都在本申请的保护范围之内。

上述装置1200中涉及的处理器1202可以是通用处理器,例如通用中央处理器(cpu)、网络处理器(networkprocessor,np)、微处理器等,也可以是特定应用集成电路(application-specificintegratedcircbit,asic),或一个或多个用于控制本申请方案程序执行的集成电路。还可以是数字信号处理器(digitalsignalprocessor,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。控制器/处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等等。处理器通常是基于存储器内存储的程序指令来执行逻辑和算术运算。

上述涉及的总线1202可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

上述涉及的计算机可读存储介质/存储器1203还可以保存有操作系统和其他应用程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,上述存储器可以是只读存储器(read-onlymemory,rom)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(randomaccessmemory,ram)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器等等。存储器1203可以是上述存储类型的组合。并且上述计算机可读存储介质/存储器可以在处理器中,还可以在处理器的外部,或在包括处理器或处理电路的多个实体上分布。上述计算机可读存储介质/存储器可以具体体现在计算机程序产品中。举例而言,计算机程序产品可以包括封装材料中的计算机可读介质。

可以替换的,本申请实施例还提供一种通用处理系统,例如通称为芯片,该通用处理系统包括:提供处理器功能的一个或多个微处理器;以及提供存储介质的至少一部分的外部存储器,所有这些都通过外部总线体系结构与其它支持电路连接在一起。当存储器存储的指令被处理器执行时,使得处理器执行生产计划确定装置在图3至图10该实施例中的生产计划的确定方法中的部分或全部步骤,例如图3中的步骤302至步骤305、图5中的步骤502至步骤508,和/或用于本申请所描述的技术的其它过程。

结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、移动硬盘、cd-rom或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。另外,该asic可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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