摘要

为解决大规模敏捷软件项目调度问题,首先,将其分解为故事选择、故事分配和任务分配3个强耦合子问题,并引入用户故事的新增与删除、每个冲刺阶段中员工工作时长的变化等动态事件,考虑团队开发速度、任务时长和技能等约束,以最大化项目所完成用户故事总价值为目标建立大规模敏捷软件项目调度数学模型;其次,根据问题特征设计了马尔可夫决策过程,采用10个状态特征描述每个冲刺阶段开始时的敏捷调度环境,12个复合调度规则作为智能体的候选动作,并按照调度模型的目标函数定义奖励;最后,提出一种基于复合调度规则的优先经验回放双重深度Q网络算法来求解所建模型,引入双重深度Q网络(DDQN)策略和优先经验回放策略,避免深度Q网络的过估计问题,并提高经验回放池中轨迹信息的利用效率。为了验证所提算法的有效性,在6个大规模敏捷软件项目调度算例中进行了实验,分析了所提算法的收敛性。根据算法性能测度,与已有代表性算法DQN、双重深度Q网络以及仅使用单一复合调度规则的方法进行对比。结果表明:所提算法在6个不同算例中均获得了最高的平均累计奖励值。

全文