智能化园林工程进度管理方法应用研究

2022-03-16 03:14谢亚楠周森鑫
赤峰学院学报·自然科学版 2022年2期

谢亚楠 周森鑫

摘 要:随着城镇化建设的快速推进,园林工程项目的规模以及复杂程度也在日益增长,然而传统计算工程项目关键路线的方法由于自身的局限性,很难在规模大的项目中找出最优路线。因此,在工程网络图的基础上,提出基于DQN(Deep Q Network)的工程进度管理方法,通过构建神经网络,将大量的历史数据输入进去,让计算机来计算关键线路,进而预测施工周期,并以某公园为例进行实验仿真分析。实验表明此算法在应对规模较大的项目时,计算关键线路更加准确,效率也更高,可以帮助施工单位快速找到最优策略,有效减少由于不确定性因素造成的工期延误以及资金的损失。

关键词:深度强化学习;DQN;园林工程进度管理;工程网络图

中图分类号:TU986.3  文献标识码:A  文章编号:1673-260X(2022)02-0032-05

1 引言

自党的十八大以来,生态环境理念越来越被重视,而园林工程项目在生态环境建设中起着至关重要的作用。现代园林工程项目具有规模大、复杂度高、周期长、工期紧等特点[1],所以在实施过程中环境、技术以及资源等一些不确定因素都会影响整个工程的进度管理。进度管理是制约园林工程项目质量的关键因素之一,没有合理的项目进度管理,各项目之间就会很难协调运作,从而影响整个工程进度。然而传统进度管理的方法由于自身局限性,很难做出精准预测,因此探索智能化的园林工程进度管理方法十分必要。

目前,常用的进度管理方法主要包括甘特图法、关键路径法和关键链法等[2]。然而在这些方法中,甘特图虽然比较直观,易于理解,但是在面对复杂的项目时,不能够很好地体现项目之间的逻辑关系[3],适用于相对简单的项目;关键路径法通过分析项目之间的逻辑关系和结构得出网络计划图,然后再推断出不同工序的持续时间和时间参数,利用数学和运筹学的方法确定工程项目的关键路线[4],这种方法虽然也能准确计算关键线路,但是面对规模大且复杂的项目时,计算就需要耗费大量的时间,进而影响整个进度管理,而且该方法对于资源受限产生的资源冲突也无法有效解决[5];相对于关键路径法,关键链法做了许多改进,它将资源约束考虑到实际运用中,用有限的资源对项目进度管理进行规划[6],并采用集中项目管理的缓冲时间来保证项目的运行,有效改善了项目的进度管理,同时也提升了公司的绩效水平。但是一旦项目规模大时,关键链法在前期确定关键路线时就会显得效率低下,因此探索智能化的园林工程进度管理方法对于日后的项目进度管理尤为重要。

实际上,智能化的项目进度管理方法早在多年前就被有些学者所研究。Kim等开发了基于Agent技术的智能土方系统,实现了对土方建设工程进度的有效管理[7];丁烈云等以精准制造理论和多层次阶段进度计划为基本原理,从智能进度计划概念入手,分析了智能管理系统的必要性和重要性[8]。早期的研究一般都是基于理论概念的,近两年也有学者对智能化的进度管理方法进行探索,颜功达等建立了基于多智能体的进度风险评估模型并进行实验分析,得出应优先合理采取措施控制重要工序中的风险因素,为复杂工程项目提供了很好地参考价值[9];吴曼茜以地铁站为例,研究了地铁站建设进度以及投资智能预测和控制系统,大大提升了地铁站建设的进度管理,同时对投资成本控制也做出了很好的规划[10]。

综上所述,当园林工程施工项目较多且复杂时,传统的甘特图法、关键路径法以及关键链法在计算关键路线时由于自身理论的局限性,不仅需要大量的人工计算而且容易受到不确定性因素的影响,从而导致工期延误。因此,本文基于前人研究的基础提出DQN的工程进度管理模型,并以某公园为例进行实验仿真分析,通过构造神经网络,将施工项目抽象化,让计算机去计算该项目的关键路线,进而预测施工周期,实验表明此算法对于精准计算关键路线有较好的效果,可以帮助施工单位更快更准确地预测工期,进而按时完工。

2 基于DQN的园林工程进度管理方法

2.1 DQN算法

经典的强化学习是表格型方法,在处理高维数据特征时,容易发生维数灾难问题,受深度学习启发,将二者结合形成了深度强化学习,而DQN算法在深度强化学习中使用尤为广泛。DQN算法是一种经典的基于值函数的深度强化学习算法[11,12],它将卷积神经网络CNN与Q-Learning算法相结合,利用CNN对图像的强大表征能力,将视频帧数据视为强化学习中的状态输入网络,然后由网络输出离散的動作值函数,Agent再根据动作值函数选择对应的动作。DQN算法之所以能够较好的将深度学习与强化学习相结合是因为它引入了3个核心技术,分别是目标函数、目标网络和经验回放机制。其训练过程如图1所示:

(1)目标函数:使用卷积神经网络结合全链接作为动作值函数的逼近器,实现端到端的效果,输入为图像画面,输出为有限的动作值函数。

(2)目标网络:为了使DQN算法性能更加稳定,使用两个包含CNN的网络模型进行学习。一是网络模型Q(s,a,w)代替预测Q网络,用于评估当前状态-动作对应的值;二是使用网络模型Q(s,a,w’)代替目标Q网络,用于计算目标值。这样就可以得到双网络架构下的DQN损失函数L(w):

式中,w表示损失函数中的网络参数,E表示数学期望,r+γQ(s′,a′,w′)表示Q网络优化的目标值,其中w′表示目标网络的参数。深度Q网络是基于梯度规则更新网络参数,(1)式损失函数对权重求偏导即可得到:

式中∇表示梯度计算。双网络的结构和初始参数都是一样的,即w0=w0′。每经过数轮迭代后都有w′=w。所以DQN算法引入目标网络,在一段时间内目标Q值保持不变,降低了训练时损失值震荡和发散的可能性,充分保证了训练时间,提高了算法的稳定性。

(3)经验回放机制:DQN算法引入经验回放机制,将每个时刻Agent与环境交互得到的经验迁移样本存储到经验池中[13],在执行步数之后,从经验池中随机取出批量大小的样本作为离散数据输入到神经网络,然后再采取小批量随机半梯度下降法(MBSGD)更新网络参数。

所以文章根据DQN算法的特性以及园林工程进度管理数据的特征,使用DQN算法计算关键路线进而预测施工周期,并进行仿真模拟实验分析,得到的关键路线与关键链法的一致且预测的工期周期与真实值很接近。同时也证明了此算法在园林工程进度管理中的可行性与可靠性。

2.2 深度Q网络的Q值更新方法

DQN网络模型的关键设计点要在Q值更新,本文根据项目的特点,为了使网络更加稳定,设计了两个相同结构但参数不同的神经网络,分别对Q实际值和估计值更新来实现价值函数的收敛。其更新过程如图2所示。

与此同时,DQN算法使用一个记忆库来学习之前的经历[14],每次更新时,都会随机抽取之前的经历进行学习,而针对本项目,目标网络用两个相同结构但参数不同的网络进行更新使得效率更高也更加稳定。在神经网络训练时可能会出现不稳定或者是训练困难,针对此问题,DQN采用目标网络和经验回放池来改进,使用的损失函数为:

公式(3)中采用了相同的估计值、现实值和权重,因为使用同一网络来计算目标值和预测值容易产生很大的差别,所以本文采用目标网络来计算目标值,使用的损失函数具体为:

DQN采用了两个结构相同但参数不同的神经网络,预测Q估计值的神经网络使用的是最新的参数,而预测Q实际值同样采用神经网路最新参数[15],这样可以使训练过程更加稳定。

2.3 状态和动作的选择

状态的设定对实验的影响至关重要,根据项目的特点,本文将施工的事件抽象为状态,文中选取的数据共有21个事件,也就是有21个状态,状态空间为设为S,si表示第i个状态(i=1,2,3,…,21)。状态之间的转移表示为动作,A表示动作空间,ai表示第i个动作(i=1,2,3,…,21),动作与状态一样,也有21个。

在强化学习中,Agent通过与环境不断进行交互来获得奖励[16],如何在和环境交互时找到一个最优策略但又不至于在试错过程中丢失太多奖励,就需要一个好的方法来平衡。探索是Agent进行不断的试错来搜集更多的信息,扩大记忆库,短期内不会带来很大的奖励,看重的是长期回报。而利用则是根据当前记忆库做出当前状态下的最佳选择,获得即刻的奖励,注重的是短期回报,但是这样会导致长期利益受损。所以本文结合ε-greedy(0<ε<1)进行选择,其中,ε=0.9,即90%的情况下可以作出最佳选择,10%情况下随机选择。通过这样的设置,不仅能够保证短期利益同时也能保证长期利益。

2.4 奖赏函数的设置

强化学习的最终目标就是使获得的奖励最大,在本实验中,将上一个事件到达下一个事件所用的时间设为奖励值,G为奖赏值函数,R表示Agent由当前状态S到下一个状态S 执行动作a后所获得的立即奖赏[17],有了立即奖赏,我们就可以得到项目中由上一个事件到达下一个事件获得的奖励值,记为关键路径。奖赏函数的计算公式如下:

式中表示总的回报等于下一个状态的折扣奖赏加上立即奖赏,其中λ是折扣因子,此公式也说明,项目中由上一个事件到下一个事件获得的奖励值越大,最优路径被选择的概率也就越大。

3 实验与分析

3.1 实验案例介绍

某市一个公园需要进行维修,该工程要求完成时间紧,涉及事件繁多,各项工作交叉紧密,技术要求高等特点,各部门都高度重视,要求施工人员快速找到关键路径进行完工,根据历史数据及以往工程进展情况,进行了数据搜集与整理,如表1所示。

由表1可以看出该项目共有21个事件,根据各个工作之间的逻辑关系可以得到项目活动网络图[18],如图3所示,如果使用传统的关键链法找出关键路线需要人工进行大量的計算,不仅要耗费大量的人力物力,而且还有可能出现错误,所以本文使用深度强化学习中的DQN算法进行训练找出关键路线,进而来预测施工周期。

3.2 实验过程

由表1可以看出该项目共有21个事件,由各个事件之间的逻辑关系可以得到各项工作之间转移所获得的奖励,构成奖励矩阵。本实验使用Tensorflow平台进行实现,利用python语言进行编程,运用DQN算法进行训练,首先将事件抽象为状态,事件之间的转移抽象为动作同时输入到神经网络中,然后使用卷积神经网络对其进行处理,两层卷积核的数目分别是21和42,卷积核大小为3*3。在训练过程中,设置Q学习的折扣因子λ=1,迭代次数N=1000,经验池大小D=1000,每次提取的样本数batch=50,设置神经网络的学习率α=1。有了这些参数的设置,把数据输入到神经网络以后,由神经网络进行判断,最后输出动作价值,得到的Q奖励矩阵如下:

3.3实验结果

根据DQN算法的训练结果,我们可以得到每一个工作向另一个工作移动的价值,如图4所示。

由实验结果可以得知,当Q矩阵收敛后,智能体Agent就可以学习到该工程管理进度的关键路线。由此可知当状态为1时,最优的转移方式是2,对应的价值为52,到状态2时,可转移的状态有3和4,对应的价值分别为50和49,选择价值较大的为50,即转移方式为3,以此类推可以得到当状态为20时,选择21,对应的价值为3,所以最优路径为1→2→3→4→6→8→10→11→12→13→14→15→17→19→20→21,即A→B→C→E→H→J→L→M→O→Q→S→U→W→X,从而可以得到施工周期为55天。

以上实验结果表明了DQN算法在园林工程进度管理中确定关键路线与施工周期时的准确性与可行性,相比较传统的进度管理方法,DQN算法减少了计算量,缩短了计算最优路径的时间,进一步说明DQN算法用于探索智能园林工程进度管理的可行性与合理性。

4 结语

传统的工程进度管理方法在面对工程项目规模大时很难计算出关键路线,本文针对此问题进行研究,提出基于DQN园林进度管理模型探索智能化的进度管理方法并以某公园为例进行仿真实验分析,实验表明此算法对于计算项目的最优路线效率更高,准确率也更高,进一步说明此算法对于探索智能化的园林工程进度管理方法的可行性与合理性。人工智能的快速发展使得各行各业都在探寻智能化的管理方法,而园林工程项目作为城市建设的重要一环也要跟上时代的脚步,寻找智能化的管理方法对其来说有着重要的意义。文章将深度强化学习方法应用到园林工程进度管理中,并且通过仿真实验分析证实了此方法的有效性,从而让相关部门在项目施工时可以不再依赖人工去计算关键路线,有效减少了人力成本,节省了大量资源,同时也为一些学者提供了一定的研究思路。

参考文献:

〔1〕赵德刚.关键链法在工程多项目进度管理中的应用[J].项目管理技术,2008(S1):223-226.

〔2〕叶舸文.基于挣值技术的民航通信台站机电工程项目成本—进度管理研究[D].上海:东华大学,2018.

〔3〕Ruoyu Jin, Tong Yang, Poorang Piroozfar, Byung-Gyoo Kang, Dariusz Wanatowski, Craig Matthew Hancock, Llewellyn Tang. Project-based pedagogy in interdisciplinary building design adopting BIM[J]. Engineering, Construction and Architectural Management, 2018,25(10):16-20.

〔4〕刘烨.关键链法在工程项目进度管理中的应用[J].石化技术,2017,24(04):233-239.

〔5〕Xie Fang, Li Haitao, Xu Zhe. Multi-mode resource-constrained project scheduling with uncertain activity cost[J]. Expert Systems With Applications, 2021,168.

〔6〕Mahdavi Amirhosein, Shirazi Babak, Rezaeian Javad. Toward a scalable type-2 fuzzy model for resource-constrained project scheduling problem[J]. Applied Soft Computing Journal, 2021,100.

〔7〕Seiichiro Nakao, Dong-Hyun Kim, Keigo Obata, Sinji Inazawa, Masatoshi Majima, Keiji Koyama,Yoshie Tani. Electroless pure nickel plating process with continuous electrolytic regeneration system[J]. Surface &amp; Coatings Technology, 2003,169.

〔8〕丁烈云,祁神軍,陈峰.大型复杂工程智能进度计划管理系统设计与实现[J].施工技术,2006,30(12):121-123.

〔9〕颜功达,董鹏,文昊林.基于多智能体的复杂工程项目进度风险评估仿真建模[J].计算机科学,2019, 46(S1):523-526.

〔10〕吴曼茜.地铁车站建设进度及投资智能预测与控制方法研究[D].石家庄:石家庄铁道大学,2020.

〔11〕杨冉.利用深度强化学习实现智能网络流量控制[D].北京:北京邮电大学,2019.

〔12〕余晨.基于智能SDN的传输优化和流量分配机制研究[D].杭州:浙江大学,2018.

〔13〕孙浩,陈春林,刘琼,赵佳宝.基于深度强化学习的交通信号控制方法[J].计算机科学,2020,47(02):169-174.

〔14〕李艳庆.基于遗传算法和深度强化学习的多无人机协同区域监视的航路规划[D].西安:西安电子科技大学,2018.

〔15〕李季.基于深度强化学习的移动边缘计算中的计算卸载与资源分配算法研究与实现[D].北京:北京邮电大学,2019.

〔16〕徐涌.基于多Agent系统的主题爬行虫协作与实现方法研究[D].成都:西华大学,2012.

〔17〕李兆荣.数据挖掘中关于动作知识提取方法的研究[D].扬州:扬州大学,2018.

〔18〕陈俊波.考虑施工设备租赁的项目调度问题研究[D].武汉:华中科技大学,2009.

收稿日期:2021-10-10

基金项目:国家社科基金一般项目(15BGL035);安徽财经大学研究生科研创新基金项目(ACYC2020366)

3571501908233