System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及产品研发项目调度,具体涉及一种基于改进鹈鹕优化算法的产品研发项目调度方法及系统。
技术介绍
1、企业产品研发包含一系列流程,每个流程又都包含着大量子任务,而每个子任务又需要满足一定技能要求的某项技能来完成,且技能水平越高越好。项目执行团队中包含技能掌握或熟练程度参差不齐的多种技能的员工,而这些员工的技能等级是可以随着学习进行提升的。在实际研发过程中,如何将项目中的大量子任务合理分配给员工去执行,是一个很复杂的项目调度问题。并且,在实际执行中,由于受到分配执行任务的人员技能水平、任务选择执行模式等的影响,任务完成的总工期不确定;同时,员工技能和其薪资水平相挂钩,不合理的任务分配也会导致产品研发项目的总成本超过预期。所以如何在保证企业产品研发项目总工期短的同时缩减企业产品研发的研发总成本,是亟需解决的问题。
2、现有的企业产品研发项目调度技术,很少有考虑多技能员工的学习效应的,更没有将员工的技能累计使用时间与员工技能水平的动态提升过程进行联系的方法,而多技能员工技能的动态提升过程将直接影响产品研发项目的总工期和总成本;另外,当需要平衡产品研发项目总工期和产品研发项目总成本期两个目标时,产品研发项目调度问题就是一个多目标项目调度问题,其求解过程更为复杂,而现有的算法大多只能针对单目标项目调度问题进行求解。
3、可见,针对同时考虑多模式、员工多技能、资源受限的多目标项目调度问题时,现有技术无法求解,或者说其求解精度、求解效率无法满足要求。
技术实现思路
2、针对现有技术的不足,本专利技术提供了一种基于改进鹈鹕优化算法的产品研发项目调度方法及系统,解决了现有技术无法求解同时考虑多模式、员工多技能、资源受限的多目标产品研发项目调度问题。
3、(二)技术方案
4、为实现以上目的,本专利技术通过以下技术方案予以实现:
5、第一方面,本专利技术首先提出一种基于改进鹈鹕优化算法的产品研发项目调度方法,所述方法包括:
6、基于认知与技能双向学习曲线模型建立员工技能水平变化模型;
7、基于所述员工技能水平变化模型,以最小化总工期与总研发成本为目标构建产品研发项目调度模型;
8、利用改进鹈鹕优化算法求解所述产品研发项目调度模型,获取产品研发项目调度结果;所述改进鹈鹕优化算法包括:基于pareto的多目标优化策略寻找求解所述产品研发项目调度模型过程中的非支配解集,以及按照预设移动策略指导鹈鹕个体移动。
9、优选的,所述员工技能水平变化模型包括:
10、
11、
12、其中,表示第j个员工的累计工作时长;treal,im表示任务i选择模式m后的实际执行时间;xijk表示任务i是否由员工j以技能k执行,xijk=1表示任务i由员工j以技能k模式执行,xijk=0则表任务i不是由员工j以技能k执行;表示员工j的技能水平为时提升到时所需要的累计工作时长。
13、优选的,所述利用改进鹈鹕优化算法求解所述产品研发项目调度模型包括:
14、s31、设置改进鹈鹕优化算法的初始参数;所述初始参数包括:最大循环迭代次数t、当前循环迭代次数t、解的任意序列的当前分量u、解的维度n、鹈鹕种群规模记为psize、当前鹈鹕个体p;
15、s32、基于mopoa编码规则生成改进鹈鹕优化算法的初始种群;其中,基于所述员工技能水平变化模型编码所述初始种群的员工技能序列;
16、s33、计算所述初始种群中每个鹈鹕个体的目标函数值;
17、s34、随机生成猎物,然后按照预设移动策略指导鹈鹕个体移动;
18、所述预设移动策略包括:对所述产品研发项目调度模型第一阶段产生的解的任务序列采用子路径交叉算子、插入算子与交换算子进行移动,同时将第一阶段产生的解的模式序列或员工序列上每一个分量随机的选择备选方案;对所述产品研发项目调度模型第二阶段产生的解的任务序列采用插入算子与交换算子进行移动,同时将第二阶段产生的解的模式序列或员工序列使用局部关键路径方式进移动;
19、s35、计算当前第p只鹈鹕在第一阶段更新之后的位置,同时计算更新位置后的鹈鹕对应的目标函数值;
20、s36、判断当前分量u是否达到解的维度n,若是,令u=0,进入步骤s37;若否,令u=u+1,执行s35;
21、s37、计算第p只鹈鹕在第二阶段更新之后的位置,同时计算更新位置后的鹈鹕对应的目标函数值;
22、s38、判断当前分量u是否达到解的维度n,若是,进入步骤s39;若否,令u=u+1,执行s37;
23、s39、判断p=psize是否成立,若成立,则执行s310,否则,令p=p+1,u=0,并执行s35;
24、s310、更新最终非支配解集x*;
25、s311、判断当前循环迭代次数t是否达到最大循环次数t,若是,执行s312;若否;令t=t+1,p=0,执行s34;
26、s312、结束,并输出最终的非支配解集x*,解码最终的所述非支配解集x*中的任意一个非支配解,以获取产品研发项目调度方案。
27、优选的,所述目标函数包括:
28、最小化最大完工时间目标函数:
29、min sn+1
30、最小化总成本目标函数:
31、
32、所述目标函数的约束条件包括:
33、该约束表示每个员工一次只用一个技能;
34、该约束表示每个任务只由一个员工完成;
35、该表示每位员工同一时间只能完成一个任务;
36、该约束表示每个项目选择一种模式;
37、该约束表示表示资源约束;
38、该约束表示项目的最早开始时间要大于其所有紧前任务的最晚完成时间;
39、其中,s={s0,s1,…,sn,sn+1}表示第n个任务的最早开始时间,sn+1表示第n+1个任务的最早开始时间,也即第n个任务的最晚结束时间;c1,m表示每种资源m的成本;yim表示项目i是否选择第m种模式;表示项目i在第m种模式的资源m的需求;c2,k表示每种技能k所对应的变动薪资;treal,im表示任务i选择模式m后的实际执行时间;xijk表示决策变量,若任务i由员工j使用技能k执行,则xijk为1,否则为0;若任务i使用模式m,则yim为1,否则为0;c0表示每位员工的基本薪资;g表示第g种资源;at表示在[t-1,t]时间段内的任务集。
40、优选的,所述对所述产品研发项目调度模型第一阶段产生的解的任务序列采用子路径交叉算子、插入算子与交换算子进行移动包括:
41、步骤sr11:随机生成猎物,所述猎物包括随机生成的任务序列,以及与当前任务匹配的模式序列与员工序列;
42、步骤sr12:计算所述猎物对应的目标函数值;
4本文档来自技高网...
【技术保护点】
1.一种基于改进鹈鹕优化算法的产品研发项目调度方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述员工技能水平变化模型包括:
3.如权利要求1所述的方法,其特征在于,所述利用改进鹈鹕优化算法求解所述产品研发项目调度模型包括:
4.如权利要求3所述的方法,其特征在于,所述目标函数包括:
5.如权利要求3所述的方法,其特征在于,所述对所述产品研发项目调度模型第一阶段产生的解的任务序列采用子路径交叉算子、插入算子与交换算子进行移动包括:
6.如权利要求5所述的方法,其特征在于,所述修改的SEX算子对应的具体步骤如下:
7.如权利要求3所述的方法,其特征在于,所述对所述产品研发项目调度模型第二阶段产生的解的任务序列采用插入算子与交换算子进行移动包括:
8.如权利要求7所述的方法,其特征在于,所述步骤SM23包括:
9.如权利要求8所述的方法,其特征在于,所述修改后的插入算子与交换算子的具体流程为如下:
10.一种基于改进鹈鹕优化算法的产品研发项目调度系统,
...【技术特征摘要】
1.一种基于改进鹈鹕优化算法的产品研发项目调度方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述员工技能水平变化模型包括:
3.如权利要求1所述的方法,其特征在于,所述利用改进鹈鹕优化算法求解所述产品研发项目调度模型包括:
4.如权利要求3所述的方法,其特征在于,所述目标函数包括:
5.如权利要求3所述的方法,其特征在于,所述对所述产品研发项目调度模型第一阶段产生的解的任务序列采用子路径交叉算子、插入算子与交换算子进行移动包括:
6.如权利要求5所述的方法,其特征在于,所述修改的sex算...
【专利技术属性】
技术研发人员:刘林,丁昕,朱启龙,陆少军,程浩,周志平,周谧,裴凤,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。