李姣姣 何利力 鄭軍紅
摘? 要: 針對生鮮農產品多級庫存成本控制問題,運用多智能強化學習思想,從供應鏈視角抽象出批發商與零售商智能體,引入三參數Weibull函數描述生鮮農產品的損腐特征,使用深度雙Q網絡算法構建基于多智能體的生鮮農產品多級庫存成本控制模型。該模型基于智能體間相互合作,優化訂貨并控制多級庫存成本。實驗結果表明,基于多智能體的庫存成本控制模型能夠在一定程度上減輕供應鏈多級庫存中的牛鞭效應,有效降低各級庫存成本,減少生鮮損腐。
關鍵詞: 生鮮農產品; 多智能體; 強化學習; 多級庫存成本控制; 供應鏈
中圖分類號:TP181;F253? ? ? ? ? 文獻標識碼:A? ? ?文章編號:1006-8228(2023)09-81-06
Multi-level inventory cost control model of fresh agricultural
products based on multi-agent
Li Jiaojiao, He Lili, Zheng Junhong
(College of Computer Science and Technology, Zhejiang Sci-Tech University, Hangzhou, Zhejiang 310018, China)
Abstract: Aiming at the problem of multi-level inventory cost control of fresh agricultural products, the idea of multi-agent reinforcement learning is used to abstract the agents of wholesaler and retailer from the perspective of supply chain. The three-parameter Weibull function is introduced to describe the spoilage characteristics of fresh agricultural products, and the Double Deep Q Network algorithm is applied to construct a multi-agent-based multi-level inventory cost control model of fresh agricultural products. The model is based on mutual cooperation among agents to optimize ordering and control multi-level inventory cost. The experimental results show that the proposed model can mitigate the bullwhip effect of multi-level inventory in the supply chain to a certain extent, effectively reduce inventory costs at all levels, and minimize spoilage losses.
Key words: fresh agricultural products; multi-agent; reinforcement learning; multi-level inventory cost control; supply chain
0 引言
供應鏈包括從原材料采購開始到中間商制造半成品和最終產品,最后由銷售企業將產品和服務送達末端消費者的活動所構成的全部網絡系統,具有動態性、層次性和交叉性等特點。牛鞭效應在供應鏈中普遍存在,其典型表現為當供應鏈的各節點企業僅根據其相鄰的下級企業需求信息進行生產或供應決策時,需求信息的真實性會沿著供應鏈從下游到上游逐級放大,當信息傳遞到最上游供應商時,其獲得的需求信息和實際消費市場中顧客需求信息有較大偏差,需求變異系數遠大于分銷商和零售商。由于這種需求放大效應的影響,上游供應商往往比下游供應商維持更高的庫存水平[1]。
生鮮農產品包括果蔬、肉類、水產品等初級產品,具有保質期短、易損腐、儲存困難等特性,我國果蔬、肉類、水產品腐損率分別高達15%、8%、10%,商家難以合理安排訂貨/出貨,造成庫存管理難度大、庫存成本高和客戶滿意度低等問題。供應鏈環境下制定生鮮農產品多級庫存控制策略更加復雜和困難,因此有必要對其進行研究[2]。
傳統的庫存管理模型能夠降低庫存成本,但在實際運用中存在較大局限性。ABC庫存管理法和CVA(Critical Value Analysis)庫存管理法[3]無法給出科學定量的庫存控制方案,經濟訂貨批量模型的前提條件較為苛刻,供應商管理庫存模型、協同式庫存管理模型和聯合庫存管理模型[4]管理成本高、操作難度大。
強化學習方法可用于研究序貫決策和最優控制問題,近年來,有學者研究強化學習多級庫存的控制問題。湯大為等[5]針對兩級庫存系統使用Q-learning研究訂貨策略。Jiang和Sheng[6]提出一種基于案例的強化學習算法,用于多智能體供應鏈系統的動態庫存控制。Yu等[7]基于多智能體深度強化學習方法求解考慮固定時間窗和橫向轉運的兩級備件庫存控制問題。目前針對生鮮農產品的多級庫存研究較少。
本文針對生鮮農產品多層次、多節點的供應鏈結構,運用多智能強化學習思想,從供應鏈視角抽象出批發商、零售商智能體,并引入三參數Weibull函數描述生鮮農產品的損腐特征,使用DDQN(Double Deep Q Network,DDQN)算法構建基于多智能體的生鮮農產品多級庫存成本控制模型。通過供應鏈上各個層次各個節點的相互合作,優化訂貨并控制庫存成本。
1 算法理論與方法
1.1 多智能體強化學習
馬爾可夫性質是指下一狀態僅取決于當前狀態,而不考慮歷史狀態。滿足馬爾可夫性質的強化學習任務稱為馬爾可夫決策過程(Markov Decision Process,MDP)[8]。MDP狀態轉移函數為
[p(s'|s,a)=P(St+1=s'|St=s, At=a)]? ⑴
強化學習的理論基礎是MDP。如圖1所示,在強化學習過程中,智能體和環境一直交互。智能體感知當前所處環境的狀態,經過計算給出動作。環境根據智能體的動作,生成相應的即時獎勵以及下一狀態。智能體目的是最大化多輪交互過程中獲得的累計獎勵的期望[9]。
多智能體強化學習(Multi-agent Reinforcement Learning,MARL)是由強化學習和多智能體系統結合而成的新領域。多智能體的情形相比單智能體更加復雜,因為每個智能體在和環境交互的同時也在和其他智能體進行直接或者間接的交互。因此,多智能體強化學習比單智能體更困難。
1.2 深度雙Q網絡
Watkins和Dayan[10]提出的Q-learning方法,是一種基于價值迭代的強化學習算法。Q-learning算法通過構建Q值表存儲狀態-行動對的值,并根據Q值選擇最優動作。Q-learning中通過求解貝爾曼最優方程確定最優價值函數和最優策略。貝爾曼最優方程為
[Q*s,a=Es'~p(.|s,a)[Rs,a+γmaxa'Q*s',a'|s,a]]? ⑵
Q-learning算法的動作值函數更新迭代式為:
[Q(s,a)←Q(s,a)+α(r+γmaxa'Q(s',a')-Q(s,a))] ⑶
Q-learning存在非均勻高估問題,另外Q-learning在處理大數據問題時存在維度災難問題。因此,Q-learning在現實中表現不佳。
Mnih等將神經網絡和Q-learning相結合提出深度Q網絡(Deep Q Networks,DQN)。其中目標網絡緩解了Q-learning自舉造成的高估,經驗回放打破了序列的相關性。DQN預測網絡的優化目標:
[y=r+γQ(s',argmaxa'Q(s',a';θ');θ')] ⑷
在DQN基礎上,Van Hasselt等[11]將行為選擇和行為評估分離,提出DDQN,進一步降低Q-learning最大化導致的高估。DDQN中使用目標網絡做最優動作選擇,再用預測網絡進行動作評估。DDQN預測網絡優化目標:
[y=r+γQs',argmaxa'Qs',a';θ;θ'] ⑸
1.3 三參數Weibull函數描述易損腐物品
三參數Weibull分布是概率論中一種連續型分布,是壽命檢驗和可靠性分析的理論基礎。三參數Weibull分布應用十分廣泛,如擬合度的模擬、電子元器件的失效情況和物品的變質等諸多方面[12]。本文引入三參數Weibull分布描述生鮮農產品的損腐特性。
三參數Weibull分布函數和它的密度函數分別為:
[Ft=1-e-αt-γβ] ⑹
[ft=αβt-γβ-1e-αt-γβ] ⑺
其中,α、β、γ分別是三參數Weibull函數的尺度因子、形狀因子和位置因子,t為時間。
2 研究內容
2.1 業務模型
如圖2所示完整的供應鏈模型由供應商、制造商、批發商、零售商和顧客組成,本文研究的問題是針對制造商、批發商、零售商、顧客的多級庫存系統。
圖3給出本文研究的供應鏈結構示意圖,該模型是一個多層次、多節點的供應鏈結構。第二層批發商負責向第三層中有向線段連接的零售商供貨,零售商直接承接顧客需求,同層次節點間沒有業務往來,業務關系僅發生在上下層之間。
零售商每天向批發商提交訂貨訂單,為滿足顧客需求,零售商每天更新一次庫存。批發商每天向制造商提交訂貨訂單,向零售商提供貨物。當產生多個零售商訂單而批發商的貨物不足以滿足所有訂單時,則先滿足先到達的訂單。其中,制造商的商品數量無限。商品生命周期用l表示,商品被批發商接收后,就進入生命周期,生存期也開始增加。
銷售產品使用先進先出策略,即先賣生存期大的產品以滿足下游節點需求。若商品生存期大于生命周期[l],就產生過期成本;若商品生存期在損腐期內就產生損腐成本;若商品無法滿足下游節點需求,缺貨數量的訂單就會被取消,并產生缺貨成本。
具體業務流程如下:
⑴ 零售商和批發商將上一日訂購的商品入庫,并更新庫存。
⑵ 零售商接收顧客需求,批發商接收零售商需求,如果能滿足需求則計算是否產生過期量和損腐量;如果不能滿足需求則產生缺貨量。
⑶ 計算各個節點今日剩余庫存量和庫存成本,并更新庫存。
⑷ 每個節點根據多智能體庫存成本控制模型制定的訂貨策略,向上游節點發送次日訂貨量
生鮮農產品是易損腐類產品,損腐率使用非線性函數μ(t),損腐率公式如下:
[μt=ft1-Ft=αβt-γβ-1] ⑻
當損腐率參數滿足γ > 0且1<β < 2時,物品剛進入庫存系統時損腐率為零,經過一段時間后物品才會損腐,這類模型就是具有時滯性質的或者保質期的易損腐產品庫存模型。損腐率變化情況如圖4所示。
2.2 多智能體DDQN算法模型
表1? 符號定義表
[數學符號 含義 [si] 生存期為i的產品數量 [p] 單位售價 [k] 單位進價 [c1] 單位過期費 [c2] 單位缺貨費 [c3] 一次訂貨固定訂貨費 [c4] 單位持有費 [c5] 單位損腐費 [n1] 過期數量 [n2] 缺貨數量 [d] 顧客需求數量 [xi] 生存期為i的損腐數量 [q'] 上級節點提供的產品數量 ]
本文將零售商和批發商的概念集成到多智能體系統當中,使每個節點代表虛擬世界中的一個智能體,并將其多參數多目標集寫入多智能體系統的算法程序中,運用DDQN方法解決生鮮農產品多級庫存的成本控制問題,下面分別給出各個智能體相關要素的定義。其中符號定義如表1所示。
2.2.1 狀態空間
在MDP問題中,狀態是智能體感知到的環境描述及其動態變化。如果產品當前處于生命周期內,但產品數量不足,則認為是缺貨。產品生存期在損腐時期內就以一定比例進行損腐。如果產品有庫存但不在生命周期內,則視為過期。滿足庫存充足和生命周期要求的產品,視為可供銷售。[l]為產品生命周期,狀態變量為l維向量。狀態空間可表示為:
[s=s0,…,si,…,sl-1]? ⑼
2.2.2 動作空間
動作是智能體發出的行為和動作,以及智能體與環境之間的動作交互。節點i所管轄范圍內的最底層顧客j需求[Dj~N(μj,σ2j)],需求數據分布在[(μj-3σj,]
[μj+3σj)]的概率是99.73%,本文實驗滿足[μj-3σj>0],因此設[q]為訂貨數量,[q∈[0,j=1mμj+3σj]]取整數。節點動作空間可表示為:
[a=q] ⑽
2.2.3 獎勵函數
獎勵是由環境給的一種標量的反饋信號,這種信號可顯示智能體在某一步采取某個策略的表現如何。強化學習的目的就是最大化智能體可以獲得的獎勵,智能體在環境中存在的目的就是最大化它的期望的累積獎勵。節點的庫存成本由過期、損腐、缺貨、訂貨和持有成本組成。節點滿足完需求后剩余庫存量為:
[n3=i=0l-1si-n1-d-i=γl-1xi] ? ⑾
節點庫存成本可表示為:
[c=c1n1+c2n2+c3+kq'+c4n3+c5i=γl-1xi]? ⑿
零售商獎勵等于自己的庫存成本。批發商獎勵等于自己及管轄的所有零售商庫存成本之和。
3 實驗與評測
3.1 實驗設計
本文以生鮮農產品多級庫存成本最小化為目標,建立包括一個制造商、一個批發商和三個零售商的多級供應鏈庫存成本控制模型。
根據上述業務與算法模型分析,首先設置智能體的神經網絡,每個智能體有兩個結構相同參數不同的神經網絡:預測網絡和目標網絡。預測網絡在訓練中的每一步都會更新,而目標網絡每隔一個周期才更新一次。設經驗池容量為1000000,每回合隨機采樣,折扣率設為0.95。使用ε-greedy探索策略來選擇動作,初始時以ε=0.9隨機選擇動作,此時探索力度最大。在訓練的過程中,ε逐漸衰減直至最終ε=0。
在這個過程中多智能體庫存成本控制模型訓練逐漸從“強探索弱利用”過渡到“弱探索強利用”。結合固定訂貨量庫存成本控制模型,對比多智能體庫存成本控制模型能否有效降低生鮮農產品庫存成本。
實驗以白菜為例,跟據2022年國家統計局數據得白菜供應鏈零售商和批發商參數值如表2所示。以1000天為一個周期,每個節點每天只進行一次發送訂單和入庫操作,庫存成本為1000c。零售商損腐率:μ(t)= 0.3(t-1)0.5,批發商損腐率:μ(t)=0.14(t-2)0.4。
表2? 實驗參數
[參數 零售商 批發商 進價/(元/500g) 0.65 0.45 售價/(元/500g) 1.4 0.65 過期費/(元/500g) 0.65 0.45 缺貨費/(元/500g) 1.4 0.65 持有費/(元/500g) 0.2 0.05 損腐費/(元/500g) 0.65 0.45 固定訂貨費/(元/次) 1 30 ]
固定訂貨量庫存成本控制模型的批發商采用定期定量訂貨法,零售商的訂貨服從正態分布,其訂貨的分布函數與需求的分布函數一致;多智能體庫存成本控制模型采用DDQN方法。兩種模型參數如損腐率、安全庫存、訂貨周期、訂貨提前期和產品生命周期等均一致。本文假設顧客需求都服從正態分布,以1000天為一個周期,每天只進行一次發送訂單和入庫操作。將成本匯總得出結論。
3.2 結果分析
圖5和圖6分別為實驗中三個零售商需求函數服從正態分布N(100,102)和N(1000,1002)時,固定訂貨量庫存成本控制模型和多智能體庫存成本控制模型在相同條件下的庫存成本變化曲線。
如圖5所示,在訓練初始階段,由于動作網絡均處于動作探索階段,因此多智能體庫存成本控制模型庫存的各個節點庫存成本較高,且存在較大波動。隨著智能體開始從經驗池中提取歷史數據進行學習,成本逐漸呈現明顯下降趨勢。到250周期時,多智能體庫存成本控制模型中三個零售商收斂于7萬元左右;批發商收斂于16.65萬元附近;批發商和所有零售商的成本之和收斂于37.68萬元附近。在圖6中,訓練到950周期時,多智能體庫存成本控制模型的批發商和所有零售商的成本之和收斂于345.08萬元附近,庫存成本低于固定訂貨量庫存成本控制模型。
如表3所示,當所有零售商需求都服從正態分布N(100,102)時,多智能體庫存成本控制模型的三個零售商和批發商的庫存成本相對于固定訂貨量100庫存成本控制模型分別降低9.30%、9.01%、9.72%和11.51%,多智能體庫存成本控制模型的批發商和所有零售商的庫存成本之和比固定訂貨量100庫存成本控制模型降低10.31%。當所有零售商需求都服從正態分布N(1000,1002)時,多智能體庫存成本控制模型的三個零售商和批發商的庫存成本相對于固定訂貨量1000庫存成本控制模型分別降低9.67%、10.19%、10.09%和10.20%,多智能體庫存成本控制模型的批發商和所有零售商的庫存成本之和比固定訂貨量1000庫存成本控制模型降低10.07%。同時,多智能體庫存成本控制模型的損腐量比固定訂貨量庫存成本控制模型的損腐量更少??梢钥闯?,多智能體庫存成本控制模型優于固定訂貨量庫存成本控制模型。
4 結束語
本文運用多智能體強化學習思想,從供應鏈角度抽象出供應商、零售商智能體,使用深度強化學習中的DDQN算法對生鮮農產品多級庫存管理進行模擬建模,體現供應鏈中各個節點的動態結構關系,通過智能體間的相互合作,優化訂貨并控制多級庫存成本。實驗表明基于多智能體的生鮮農產品多級庫存成本控制模型能夠有效地提高供應鏈庫存管理水平、降低庫存費用和提高供應鏈上各商家的經濟效益,解決庫存量居高不下、損腐量高和庫存成本高等問題,實現多級庫存的智能控制。
參考文獻(References):
[1] 梁學棟,劉大成,李智,等.供應鏈管理[M].北京:經濟管理出版社,2020:145-149.
[2] 馮繼豪.基于Flexsim的生鮮農產品多級庫存控制策略仿真優化[D].河南:河南農業大學,2017.
[3] 樂美龍.供應鏈管理[M].上海:上海交通大學出版社,2021:19-20.
[4] 劉鵬飛,謝如鶴.基于供應鏈的現代庫存管理方法之比較研究[J].商業研究,2006(2):170-174.
[5] 湯大為,王紅衛.強化學習算法在供應鏈環境下的庫存控制中的應用[J].管理學報,2005(3):358-361.
[6] Jiang C, Sheng Z. Case-based reinforcement learning fordynamic inventory control in a multi-agent supply-chain system[J]. Expert Systems with Applications,2009,36(3):6520-6526.
[7] Yu C, Zhou Y, Zhang Z. Multi-Agent ReinforcementLearning for Dynamic Spare Parts Inventory Control[A].2020 Global Reliability and Prognostics and Health Management (PHM-Shanghai)[C].Piscataway, NJ: IEEE,2020:1-6.
[8] 王樹森,黎彧君,張志華.深度強化學習[M].北京:人民郵電出版社,2022:31-32.
[9] Sutton R S, Barto A G. Reinforcement learning: Anintroduction[M]. MIT press,2018:1-7.
[10] Watkins C J C H, Dayan P. Q-learning[J]. Machinelearning,1992,8:279-292.
[11] Van Hasselt H, Guez A, Silver D. Deep reinforcement?learning with double q-learning[A].Proceedings of the AAAI conference on artificial intelligence[C].Palo Alto, California USA:AAAI,2016,2094-2100.
[12] 王道平,于俊娣.變質率呈Weibull分布的易變質物品的庫存模型研究[A].第十二屆中國管理科學學術年會論文集[C],2010:442-446.