朱 軍,王 躍,卓 杰
(連云港杰瑞深軟科技有限公司,連云港 222006)
鋼板堆場是船廠鋼板原材料進料、分類堆放、保管、預處理和出料的場地,是整個總裝化生產系統(tǒng)的物流和信息流的源頭,與船廠所有工程及生產工程有聯(lián)系,確保鋼板的穩(wěn)定物流是至關重要的,其信息化和自動化程度的高低對整個生產效率的提高有重要影響。
由于目前國內各大船廠的鋼板堆場管理處在手工作業(yè)或半手工作業(yè)狀態(tài),鋼板堆場存放的鋼板品種多、量大、周期長;堆場的環(huán)境惡劣,鋼板的標識、跟蹤困難,并且大部分船廠沒有對堆場進行科學、合理的規(guī)劃,鋼板的堆放隨意性大,不能及時地將鋼板進行定位以及不能快速地將鋼板從堆場中按照最優(yōu)化的路徑進行出入庫操作,因此亟需一種優(yōu)化手段對其進行優(yōu)化改善[1]。
工程實踐中有很多目標優(yōu)化問題,多目標優(yōu)化問題中各目標之間通常相互制約,對其中一個目標優(yōu)化經常以犧牲其它目標為代價,因此很難評價多目標問題解的優(yōu)劣性。一般來說,多目標優(yōu)化問題并不存在唯一最優(yōu)解,其多個目標不可能同時達到最優(yōu)。與傳統(tǒng)的優(yōu)化算法相比較,粒子群算法是一種簡單有效的仿生算法,具有基于多點并行搜索的特性。
粒子群算法,也稱粒子群優(yōu)化算法PSO,是近年來由J.Kennedy和R.C.Eberhart等開發(fā)的一種新的進化算法。PSO算法屬于進化算法的一種,和模擬退火算法相似,它也是從隨機解出發(fā),通過迭代尋找最優(yōu)解,通過適應度來評價解的品質,但它比遺傳算法規(guī)則更為簡單,它沒有遺傳算法交叉和變異操作,它通過追隨當前搜索到的最優(yōu)值來尋找全局最優(yōu)。這種算法以其實現(xiàn)容易、精度高、收斂快等優(yōu)點引起了學術界的重視,并且在解決實際問題中展示了其優(yōu)越性。
PSO同遺傳算法類似,是一種基于迭代的優(yōu)化算法。系統(tǒng)初始化為一組隨機解,通過迭代搜尋最優(yōu)值。同遺傳算法比較,PSO的優(yōu)勢在于簡單容易實現(xiàn)并且沒有許多參數(shù)需要調整。目前已廣泛應用于函數(shù)優(yōu)化、神經網絡訓練、模糊系統(tǒng)控制以及其他遺傳算法的應用領域。
船廠鋼板管理系統(tǒng)針對造船廠鋼板的出入庫開發(fā)的系統(tǒng)軟件,主要由系統(tǒng)管理、鋼板管理以及工控網絡安全等模塊組成,通過掃描終端設備與外部交互,實現(xiàn)鋼板的數(shù)據(jù)采集、傳輸與更新。系統(tǒng)架構如圖1所示。
根據(jù)訂單中鋼板的規(guī)格和數(shù)量,從堆場中選取合適的鋼板,由于堆場面積大,對位數(shù)量大,在鋼板出入庫過程中難免會出現(xiàn)所需要的鋼板不在當前鋼板堆垛的頂端,在此過程中首先需要先對上方的鋼板進行倒垛作業(yè)??紤]到倒垛耗費能量大和時間等因素,采用基于規(guī)則的知識推理方法為倒垛鋼板指定倒放堆位。鋼板堆垛狀態(tài)如圖2所示。在鋼板出庫優(yōu)化算法得到一組優(yōu)化出庫鋼板集合,根據(jù)計算公式得到相應倒垛鋼板集合和倒垛鋼板的可選垛位集合為輸入?yún)?shù)[2],通過離散粒子群優(yōu)化算法對倒垛問題空間進行優(yōu)化,得到倒垛方案。
從鋼板的出庫整體流程分析,鋼板的倒垛屬于內層算法,從內往外一層一層地對鋼板進行操作[3],來減少鋼板的出入庫時間,提高鋼板出入庫效率。鋼板出庫算法流程如圖3所示。
圖3 鋼板出庫算法流程Fig.3 Steel plate library algorithm flow chart
其實倒垛問題可看作是約束條件下任務指派問題,可以建立數(shù)學模型[4]。定義出庫鋼板序列X={xi∣xi∈V,i=1,2,3…,N},其中 i表示鋼板 xi出庫的作業(yè)次序。τ為出庫鋼板中可行出庫序列X的集合,τ中元素的數(shù)量由出庫鋼板在堆場中的分布情況確定。
圖4 出庫鋼板作業(yè)次序Fig.4 Out of the library operating sequence
以Stagej中提取第j張出庫鋼板xj為例,如果xj不是位于鋼板堆垛頂端,需要先對其上方的鋼板進行倒垛作業(yè)。因此,Stagej實際上是包含提取xj以及由此產生的倒垛作業(yè)的作業(yè)決策子過程。
分析可知,第一組決策變量為指定的出庫鋼板集合,用向量X的形式表示為
式中:xi為從堆場中選擇出的出庫鋼板,i=1,2,…,N,表示xi出庫的次序。在堆場狀態(tài)已知的情況下,由X可以確定倒垛鋼板的集合M:
式中:mij為提取出庫鋼板xi需要移走的等j張倒垛鋼板。為M中鋼板指定倒放堆位,可得到另外一組集合Y:
式中:yij為rij的倒垛決策,rij為指提取出庫鋼板時,需要移走第j張倒垛鋼板。
在倒垛過程中需要遵循幾個原則:①倒垛鋼板應避免將含有待出庫鋼板的垛位作為目標垛位;②目標垛位的選擇要遵循堆場管理要求和作業(yè)規(guī)則。
基于鋼板整體目標,需要有約束條件對其進行約束[5]:①選定的堆垛高度不能超過允許安全高度上限;②倒垛作業(yè)必須在一定范圍內進行,即倒垛鋼板當前堆位與倒垛位之間不能超過一定的距離。
PSO算法采用隨機產生初始粒子,通過迭代找到最優(yōu)解。在迭代過程中跟蹤2個極值來更新自己,找到最優(yōu)解。一個是粒子本身找到的最優(yōu)解—個體極值(pbest);另一個就整個種群找到最優(yōu)解—全局最優(yōu)解(gbest)。
粒子信息可用向量進行表示,第t代第i個粒子位置為
第t代第i個粒子速度:
因此粒子的位置和速度的更新方程為
式中:w為慣性系數(shù),產生擾動的作用,防止算法早熟收斂;c1,c2為學習因子,分別調節(jié)向個體最好粒子和全局最好粒子方向飛行的最大步長;r1,r2為介于(0,1)之間的隨機數(shù)。
開始初始化粒子群中粒子的速度和位置,初始化個體最優(yōu)值與全局最優(yōu)值,根據(jù)公式更新其速度和位置。由于在優(yōu)化過程中,需要設定一個目標的最大函數(shù),在迭代過程中,用其減去目標函數(shù)值(作業(yè)時間最小值),所得到的是粒子的適應度。
為驗證粒子群算法倒垛的可行性,使用Matlab對粒子群算法進行仿真,根據(jù)設定的初始粒子群和倒垛堆位集合,對鋼板倒垛所用的時間進行了仿真,同時與未采用粒子群算法的人工鋼板倒垛進行對比,在仿真圖上迭代次數(shù)來看,迭代次數(shù)越多作業(yè)時間越少,說明選擇的倒垛方案越優(yōu),在迭代次數(shù)達到一定次數(shù)時,作業(yè)時間趨于平緩,說明在設計時有個最優(yōu)的終止條件,將迭代停止得到最優(yōu)方案。適應度值仿真如圖5所示。
圖5 適應度值仿真Fig.5 Fitness simulation
此外Matlab對粒子群算法仿真和人工倒板決策進行對比,得出結論是使用粒子群算法的倒垛方案比人工倒板方案的效率更高、作業(yè)時間更短、收斂速度和尋優(yōu)速度都更快。鋼板倒垛方案比較結果如表1所示。
表1 鋼板倒垛方案比較Tab.1 Comparison of steel plate stacking scheme
在分析鋼板堆場目前狀況的情況下,基于鋼板出庫流程和優(yōu)化過程的研究,以及解決鋼板倒垛問題時存在諸多不足之處的基礎上,本文對鋼板出庫過程中的鋼板倒垛過程進一步研究,提出了適用于船廠鋼板倒垛的粒子群算法,將鋼板倒垛問題轉化為求解最大值問題。通過仿真模擬與人工決策相對比,并改變仿真參數(shù),得到鋼板倒垛適應度值仿真模擬圖,有效地提高了鋼板倒垛的效率,減少作業(yè)時間,證明了該算法具有較好的實用性和高效性。
[1]楊乃忠.寶鋼厚板生產物流分析及改進措施[D].沈陽:東北大學,2008.
[2]王龍.造船廠鋼板出庫計劃并行嵌套優(yōu)化算法研究[D].大連:大連理工大學,2011.
[3]張志英,王維澤,侯俊.船廠鋼板堆場多時段作業(yè)計劃優(yōu)化[J].哈爾濱工程大學學報,2015(5):638-643.
[4]鄭武全,馮定忠,姜懿.鋼板倒垛問題的一種頂層搜索算法[J].機械設計與制造工程,2013(2):61-64.
[5]金淳,王廣民,高鵬.造船廠鋼板出庫作業(yè)計劃的建模及優(yōu)化研究[J].工業(yè)工程與管理,2009(6):12-17.