[摘要] 本文論述了基于量子遺傳算法的批發(fā)配送中心系統(tǒng)的解決方案和基于PB的設計理念、基于C/S的系統(tǒng)軟硬件的整體設計、詳細設計以及實現(xiàn)技術。研究了量子遺傳算法的發(fā)展現(xiàn)狀,運用量子遺傳算法來解決配送中心管理系統(tǒng)中的成本問題,在應用程序中進行資源控制,設計了安全認證模式,并以每個人的身份進行系統(tǒng)權限的分配,進行了與企業(yè)運營成本有關的優(yōu)化,包括裝配車優(yōu)化等。最后對開發(fā)的應用系統(tǒng)進行了具體的性能和實現(xiàn)技術方面的分析。該系統(tǒng)已在某公司應用至今,取得了較好效果。
[關鍵詞] PB MS-SQL 量子遺傳算法 運輸成本
現(xiàn)代信息技術的飛速發(fā)展帶動了傳統(tǒng)物流向現(xiàn)代物流的轉(zhuǎn)化,互聯(lián)網(wǎng)的普及更是促進了現(xiàn)代物流的巨大進展。物流管理與作業(yè)的信息化水平的高低已經(jīng)成為區(qū)別現(xiàn)代物流與傳統(tǒng)物流的重要標志之一。在研究和吸收國外物流的成功經(jīng)驗和教訓的同時,本文根據(jù)寧波某配送中心的實際情況,提出和實現(xiàn)適合了適應行業(yè)需求的信息系統(tǒng)構(gòu)架。從總體設計、功能設計和關鍵技術實現(xiàn)三個方面詳細介紹了基于量子遺傳算法的信息管理系統(tǒng)的設計和實現(xiàn)。
一、總體設計
整個系統(tǒng)管理平臺采用基于C/S的集中式組織模型,由運行在服務器端的數(shù)據(jù)庫服務器和應用服務器以及運行在客戶端的客戶機三部分組成,該系統(tǒng)體系結(jié)構(gòu)如圖所示。
圖 系統(tǒng)體系結(jié)構(gòu)
數(shù)據(jù)庫服務器的主要工作是進行數(shù)據(jù)的管理。服務器接口的主要功能是負責應用服務器與客戶端的網(wǎng)絡通迅工作??蛻舳私涌诘墓δ苤饕秦撠熆蛻舳顺绦蚺c服務器接口之間的網(wǎng)絡通迅工作。
二、功能設計
整個系統(tǒng)采用自頂向下、逐步求精的建模思路和模塊化設計,每個模塊(子系統(tǒng))完成一項大的業(yè)務功能,便于針對不同的企業(yè)要求而進行功能模塊的添加和刪除。
1.基本信息管理子系統(tǒng)是整個系統(tǒng)最基本,也是最重要的一個功能模塊,它包含了跟企業(yè)有關的所有信息的管理和統(tǒng)計。
2.發(fā)貨單管理是整個運輸管理的起點,發(fā)貨單編號也是表明一筆業(yè)務的主要標識 (主Key),采用系統(tǒng)自動采集的方法,整個編號的編制根據(jù)具體企業(yè)而不同。
3.倉庫管理是較復雜的一個子系統(tǒng),對于以倉儲為主的物流企業(yè),要考慮自動化倉庫設施、自動搬運車系統(tǒng)等等。倉庫管理系統(tǒng)要根據(jù)企業(yè)的實際倉儲狀況進行設計。
系統(tǒng)框架的主要特色有:以實際配送系統(tǒng)運作中的每項業(yè)務為最小設計模塊,以滿足當企業(yè)業(yè)務重新調(diào)整、工作流改變時的不同需要;以作業(yè)流程最優(yōu)化為設計目標,考慮一切與企業(yè)有關的優(yōu)化問題,如最優(yōu)路徑選擇、最優(yōu)配車等;以人為最小設計單元,按員工身份進行系統(tǒng)權限分配;建立基于量子遺傳算法的配送車輛的優(yōu)化調(diào)度。
三、關鍵技術的實現(xiàn)
系統(tǒng)的功能模塊作為系統(tǒng)功能實現(xiàn)的實體,負責系統(tǒng)內(nèi)具體功能的實現(xiàn)及系統(tǒng)日常維護事務處理。這里主要對功能模塊在實現(xiàn)過程中的關鍵技術難點進行闡述。
1.基于量子遺傳算法的調(diào)度優(yōu)化配置。量子遺傳算法是量子計算與遺傳算法相結(jié)合的產(chǎn)物。目前,這一領域的研究主要集中在兩類模型上:一類是基于盤于多宇宙特征的多宇宙量子衍生遺傳算法(QuantumInspired Genetic Algorithm),另一類是基于量子比特和量子態(tài)疊加特性的遺傳量于算法(Genetic Quantum Algorithm,GQA)。前者的貢獻在于將量子多宇宙的概念引入遺傳算法,利用多個宇宙的并行搜索,增大搜索范圍,利用宇宙之間的聯(lián)合交叉,實現(xiàn)信息的交流,從而整體上提高算法的搜索效率。但算法中的多宇宙是通過分別產(chǎn)生多個種群獲得的,并沒有利用量子態(tài),因而仍屬于常規(guī)遺傳算法。后者將量子的態(tài)矢量表達引入遺傳編碼,利用量子旋轉(zhuǎn)門實現(xiàn)染色體的演化,實現(xiàn)了比常規(guī)遺傳算法更好的效果。但該算法主要用來解決0-1背包問題。編碼方案和量子旋轉(zhuǎn)門的演化策略不具有通用性,尤其是由于所有個體都朝向一個目標演化,如果沒有交叉操作,極有可能陷入局部最優(yōu)。量子遺傳算法采用多態(tài)基因量子比特編碼方式和通用的量子旋轉(zhuǎn)門操作,引入動態(tài)調(diào)整旋轉(zhuǎn)角機制和量子交叉,更加具有通用性,而且效率更高。算法中將所有的個體按照一定的拓撲結(jié)構(gòu)分成一個個獨立的子群體,稱為宇宙;采態(tài)基因量子比特編碼方式來表達宇宙中的個體;采用通用的量子旋轉(zhuǎn)門策略和動態(tài)調(diào)整旋轉(zhuǎn)角機制對個體進行演化;各宇宙獨立演化,這樣可以擴大搜索范圍,宇宙之間采用最佳移民,量子交叉和量子變異操作來交換信息,是算法的適應性更強,效率更高。
為了便于驗證結(jié)果,現(xiàn)用最簡單8個配送點的例子,并且直接給出基礎數(shù)據(jù)以簡化,如表1~表3所示。車輛轉(zhuǎn)載限制:10t;時間懲罰系數(shù)100/h。
表1 配送任務(其中0表示配送中心)
表2 各點之間的費用成本
采用輪盤賭帶最佳保留復制、最大保留交叉、反轉(zhuǎn)變異的算法,軟時間窗約束。染色體條數(shù):20;交叉率:0.75;變異率:0.25。
表3 計算結(jié)果
綜上所述,根據(jù)量子遺傳算法的特點,通過分析車輛運輸?shù)膶嶋H情況,將影響配送車輛調(diào)度的多項指標和約束轉(zhuǎn)化為染色體適應度,減少了系統(tǒng)的復雜度,并設計了能夠進行實際調(diào)度的算法,并加以驗證,結(jié)果表明算法收斂,能夠很快得到較優(yōu)化的結(jié)果。
2.數(shù)據(jù)傳輸。在PowerBuilder中,一個分布式的服務程序又可以是另外一個服務程序的客戶端,這就是所謂的N級解決方案,在這種結(jié)構(gòu)中,客戶機和服務器建立會話,這個服務器又可以與另一個服務器會話,于是結(jié)成一個網(wǎng)狀的結(jié)構(gòu)。
在服務器和客戶機上,分別裝有客戶端應用程序,在服務器端,有一個服務端應用程序為客戶程序提供服務。
第一步,我們啟動服務器,讓它去偵聽是否有客戶端請求。這是初始化Transport對象,Listen函數(shù)開始活動。
第二步,客戶機調(diào)用ConnectToServer函數(shù)。如果返回值正確,說明Connection對象初始化完成了。接著,ConnectToServer函數(shù)在服務端創(chuàng)立了客戶虛擬機。服務端為它開辟一塊內(nèi)存,這是一個獨立的工作環(huán)境,它可以想象成服務端開啟了一個新的線程或新的進程。
然后,代理對象調(diào)用SetConnect函數(shù),為代理設置Connect對象。Connect對象通過網(wǎng)絡傳遞給Transport對象一個鏈接消息,Transport正在用Listen函數(shù)偵聽這個消息,于是在服務端初始化了NVO對象。隨后,這兩個客戶機在服務器中創(chuàng)立了兩個服務線程,它們相互獨立,各有兩個不同的內(nèi)存區(qū)域,不同的工作環(huán)境。因此,當一個服務線程發(fā)生運行錯誤時,不會影響另外一個服務線程。
最后,客戶端的Connect對象調(diào)用DisConnectServer函數(shù),斷開與服務器的鏈接。服務器接收到斷開鏈接的消息后,就會中止由ConnectToServer所創(chuàng)立的服務線程,把這個線程所占的內(nèi)存區(qū)域釋放掉。
3.數(shù)據(jù)庫及終端管理的實現(xiàn)。
根據(jù)需求分析建立用戶數(shù)據(jù)表如下:
表4 用戶數(shù)據(jù)表結(jié)構(gòu)
該數(shù)據(jù)表存放在系統(tǒng)的數(shù)據(jù)庫服務器中,所有的終端用戶登錄系統(tǒng)時都通過該數(shù)據(jù)表進行驗證。這樣的配置方式可以避免后端有多個核心業(yè)務系統(tǒng)時還需進行邏輯判定,同時也可以避免后端業(yè)務系統(tǒng)沒有相應的數(shù)據(jù)表時無線應用系統(tǒng)還能獨立的運行。該數(shù)據(jù)表通過系統(tǒng)的基礎數(shù)據(jù)維護模塊建立和管理。如果后端應用系統(tǒng)有統(tǒng)一的用戶數(shù)據(jù)表,則可以設法與之同步。向后端業(yè)務系統(tǒng)提交用戶數(shù)據(jù)時采用:user_id+user_name的方式。后端業(yè)務系統(tǒng)根據(jù)各自的具體情況提取相應的字段進行處理,用戶數(shù)據(jù)庫同步的業(yè)務系統(tǒng)可以使用user_id字段,不同步的直接使用user_name字段。只有branch和authority都相符的用戶才能進入相應的應用系統(tǒng)。
上述表格的結(jié)構(gòu)建立完成后,我們通過對各項后臺業(yè)務管理需求的數(shù)據(jù)滿足性分析描述,論證數(shù)據(jù)庫設計的合理性和可行性。
本文提出的面向配送中心管理系統(tǒng)的物流信息系統(tǒng)的構(gòu)架,對我國在這一領域的研究和快速轉(zhuǎn)化成實際應用成果有很大的促進作用。而且系統(tǒng)采用了基于PB的C/S結(jié)構(gòu),突破了應用系統(tǒng)整體結(jié)構(gòu)設計的己有模式,為企業(yè)應用系統(tǒng)的構(gòu)建又多加了一種選擇模式。目前,系統(tǒng)已經(jīng)全部設計和開發(fā)完畢,并且經(jīng)過系統(tǒng)的代碼維護和安裝、現(xiàn)場調(diào)試階段,達到了所要求的。
參考文獻:
[1]Donald J. Bowersox, David J.Closs.物流管理:供應鏈過程的一體化.林國龍等譯.北京:機械工業(yè)出版社,1999.167
[2]王佐:企業(yè)如何拓展第三方物流.物流技術與應用.2001年,第3期