本發(fā)明涉及倉儲(chǔ)領(lǐng)域,特別涉及一種揀貨路徑確定方法和裝置。
背景技術(shù):
現(xiàn)有的WMS(Warehouse Management System,倉庫管理系統(tǒng))在生產(chǎn)訂單時(shí),當(dāng)一張訂單進(jìn)入庫房?jī)?nèi)后,就對(duì)該訂單上的所有商品進(jìn)行定位。
現(xiàn)有技術(shù)中,系統(tǒng)會(huì)隨機(jī)選取30張訂單組成集合單,而不考慮此30張訂單上商品在整個(gè)倉庫內(nèi)的定位情況。這種方法使得揀貨員在揀貨時(shí),非??赡芘芎苓h(yuǎn)的距離而只揀少量的商品,這樣在整體的揀貨路徑上也無法做到最優(yōu)。
技術(shù)實(shí)現(xiàn)要素:
鑒于以上技術(shù)問題,本發(fā)明提供了一種揀貨路徑確定方法和裝置,實(shí)現(xiàn)了揀貨路徑的整體上的最優(yōu)化,即車行路線和人形路線整體上的最優(yōu)化。
根據(jù)本發(fā)明的一個(gè)方面,提供一種揀貨路徑確定方法,包括:
根據(jù)訂單信息確定定位貨格位置;
根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑,其中,所述小車揀貨路徑為揀貨員起始位置到待進(jìn)入巷道口的路徑,所述待進(jìn)入巷道口為定位貨格所在巷道的待進(jìn)入巷道口;
確定揀貨員行走路徑,其中,揀貨員行走路徑為待進(jìn)入巷道口到定位貨格位置的路徑;
根據(jù)小車揀貨路徑和揀貨員行走路徑確定揀貨員起始位置到定位貨格的總揀貨路徑和長(zhǎng)度。
在本發(fā)明的一個(gè)實(shí)施例中,所述根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑包括:
根據(jù)定位貨格位置確定待進(jìn)入巷道口和待進(jìn)入主干道,以確保一個(gè)巷道只有一個(gè)待進(jìn)入巷道口,其中待進(jìn)入主干道為待進(jìn)入巷道口所在的主干道;
根據(jù)揀貨員起始位置、待進(jìn)入巷道口和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入巷道口的最短路徑;
將小車到達(dá)待進(jìn)入巷道口的最短路徑作為小車揀貨路徑。
在本發(fā)明的一個(gè)實(shí)施例中,所述根據(jù)揀貨員起始位置、待進(jìn)入巷道口和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入巷道口的最短路徑包括:
根據(jù)揀貨員起始位置和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑;
根據(jù)小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑、以及待進(jìn)入主干道中點(diǎn)位置、待進(jìn)入巷道口位置,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,所述確定小車進(jìn)入待進(jìn)入主干道中點(diǎn)的最短路徑包括:
將每個(gè)待進(jìn)入主干道的中點(diǎn)和揀貨員的起始位置視作頂點(diǎn),獲取任意兩個(gè)頂點(diǎn)之間的最短距離;
根據(jù)任意兩個(gè)頂點(diǎn)之間的最短距離確定小車進(jìn)入待進(jìn)入主干道中點(diǎn)的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,在小車到達(dá)待進(jìn)入巷道口的最短路徑有多個(gè)的情況下,所述將小車到達(dá)待進(jìn)入巷道口的最短路徑作為小車揀貨路徑包括:
確定每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑;
將最短的揀貨員揀貨路徑對(duì)應(yīng)的小車最短路徑作為小車揀貨路徑;
將最短的揀貨員揀貨路徑作為揀貨員行走路徑。
在本發(fā)明的一個(gè)實(shí)施例中,所述確定揀貨員行走路徑包括:
對(duì)于每一待進(jìn)入巷道口,根據(jù)待進(jìn)入巷道口與巷道內(nèi)最遠(yuǎn)的定位貨格位置之間的距離確定揀貨員的單次揀選路徑;
根據(jù)所有待進(jìn)入巷道口的單次揀選路徑之和確定揀貨員行走路徑和長(zhǎng)度。
根據(jù)本發(fā)明的另一方面,提供一種揀貨路徑確定裝置,包括貨格位置確定模塊、小車路徑確定模塊、揀貨員路徑確定模塊和總路徑確定模塊,其中:
貨格位置確定模塊,用于根據(jù)訂單信息確定定位貨格位置;
小車路徑確定模塊,用于根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑,其中,所述小車揀貨路徑為揀貨員起始位置到待進(jìn)入巷道口的路徑,所述待進(jìn)入巷道口為定位貨格所在巷道的待進(jìn)入巷道口;
揀貨員路徑確定模塊,用于確定揀貨員行走路徑,其中,揀貨員行走路徑為待進(jìn)入巷道口到定位貨格位置的路徑;
總路徑確定模塊,用于根據(jù)小車揀貨路徑和揀貨員行走路徑確定揀貨員起始位置到定位貨格的總揀貨路徑和長(zhǎng)度。
在本發(fā)明的一個(gè)實(shí)施例中,小車路徑確定模塊包括待進(jìn)入主干道確定單元、最短路徑確定單元和小車路徑確定單元,其中:
待進(jìn)入主干道確定單元,用于根據(jù)定位貨格位置確定待進(jìn)入巷道口和待進(jìn)入主干道,以確保一個(gè)巷道只有一個(gè)待進(jìn)入巷道口,其中待進(jìn)入主干道為待進(jìn)入巷道口所在的主干道;
最短路徑確定單元,用于根據(jù)揀貨員起始位置、待進(jìn)入巷道口和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入巷道口的最短路徑;
小車路徑確定單元,用于將小車到達(dá)待進(jìn)入巷道口的最短路徑作為小車揀貨路徑。
在本發(fā)明的一個(gè)實(shí)施例中,所述最短路徑確定單元包括第一最短路徑確定子模塊和第二最短路徑確定子模塊,其中:
第一最短路徑確定子模塊,用于根據(jù)揀貨員起始位置和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑;
第二最短路徑確定子模塊,用于根據(jù)小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑、以及待進(jìn)入主干道中點(diǎn)位置、待進(jìn)入巷道口位置,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,第一最短路徑確定子模塊用于將每個(gè)待進(jìn)入主干道的中點(diǎn)和揀貨員的起始位置視作頂點(diǎn),獲取任意兩個(gè)頂點(diǎn)之間的最短距離;并根據(jù)任意兩個(gè)頂點(diǎn)之間的最短距離確定小車進(jìn)入待進(jìn)入主干道中點(diǎn)的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,小車路徑確定單元用于在最短路徑確定單元確定的小車到達(dá)待進(jìn)入巷道口的最短路徑有多個(gè)的情況下,確定每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑;將最短的揀貨員揀貨路徑對(duì)應(yīng)的小車最短路徑作為小車揀貨路徑;并指示揀貨員路徑確定模塊將最短的揀貨員揀貨路徑作為揀貨員行走路徑。
在本發(fā)明的一個(gè)實(shí)施例中,所述揀貨員路徑確定模塊包括單次揀選路徑確定單元和揀貨員路徑確定單元,其中:
單次揀選路徑確定單元,用于對(duì)于每一待進(jìn)入巷道口,根據(jù)待進(jìn)入巷道口與巷道內(nèi)最遠(yuǎn)的定位貨格位置之間的距離確定揀貨員的單次揀選路徑;
揀貨員路徑確定單元,用于根據(jù)所有待進(jìn)入巷道口的單次揀選路徑之和確定揀貨員行走路徑和長(zhǎng)度。
根據(jù)本發(fā)明的另一方面,提供一種揀貨路徑確定裝置,包括存儲(chǔ)器和處理器,其中:
存儲(chǔ)器,用于存儲(chǔ)指令;
處理器,用于執(zhí)行所述指令,使得所述裝置執(zhí)行實(shí)現(xiàn)如上述任一實(shí)施例所述的揀貨路徑確定方法的操作。
本發(fā)明可以自動(dòng)實(shí)現(xiàn)電商平面?zhèn)}庫中訂單集合或一個(gè)訂單多個(gè)定位貨格情況下,由此實(shí)現(xiàn)了揀貨路徑的整體上的最優(yōu)化,即車行路線和人形路線整體上的最優(yōu)化。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明一個(gè)實(shí)施例中魚骨刺法揀貨路徑的示意圖。
圖2為本發(fā)明揀貨路徑確定方法一個(gè)實(shí)施例的示意圖。
圖3為本發(fā)明一個(gè)實(shí)施例中定位貨格和待進(jìn)入巷道口的關(guān)系示意圖。
圖4為本發(fā)明一個(gè)實(shí)施例中根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑的示意圖。
圖5為本發(fā)明一個(gè)實(shí)施例中根據(jù)待進(jìn)入巷道口確定待進(jìn)入主干道的示意圖。
圖6為本發(fā)明揀貨路徑確定裝置第一實(shí)施例的示意圖。
圖7為本發(fā)明一個(gè)實(shí)施例中小車路徑確定模塊的示意圖。
圖8為本發(fā)明一個(gè)實(shí)施例中最短路徑確定單元的示意圖。
圖9為本發(fā)明一個(gè)實(shí)施例中揀貨員路徑確定模塊的示意圖。
圖10為本發(fā)明揀貨路徑確定裝置第二實(shí)施例的示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
除非另外具體說明,否則在這些實(shí)施例中闡述的部件和步驟的相對(duì)布置、數(shù)字表達(dá)式和數(shù)值不限制本發(fā)明的范圍。
同時(shí),應(yīng)當(dāng)明白,為了便于描述,附圖中所示出的各個(gè)部分的尺寸并不是按照實(shí)際的比例關(guān)系繪制的。
對(duì)于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細(xì)討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為授權(quán)說明書的一部分。
在這里示出和討論的所有示例中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實(shí)施例的其它示例可以具有不同的值。
應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步討論。
申請(qǐng)人發(fā)現(xiàn):由于絕大部分平面?zhèn)}庫使用的是如圖1所示的魚骨刺法揀貨路徑,而魚骨刺法揀貨路徑的原則如下:
第一、揀貨員推小車來到定位貨格所在巷道所對(duì)應(yīng)的主干道十字路口(巷道對(duì)應(yīng)最多2個(gè)主干道,每個(gè)主干道最多有2個(gè)可進(jìn)入的十字路口,所以可到達(dá)的十字路口最多有4個(gè))。
第二、揀貨員由定位貨格所在巷道所對(duì)應(yīng)的主干道的十字路口進(jìn)入主干道,推車在主干道上行駛,小車不能進(jìn)入巷道。
第三、揀貨員推小車到達(dá)定位貨位所對(duì)應(yīng)主干道的巷道口后,揀貨員進(jìn)入巷道針對(duì)對(duì)應(yīng)貨位揀選。完成揀選后,將貨物帶出主通道,放在揀貨小車中。一個(gè)巷道若有多個(gè)貨格,視為一次進(jìn)入巷道完成揀選。
申請(qǐng)人根據(jù)上述情況可以得出:?jiǎn)蝹€(gè)訂單的揀貨路線既與小車的路徑有關(guān),又與人員行走路徑有關(guān)。
申請(qǐng)人認(rèn)為:當(dāng)一張訂單有多個(gè)定位貨格時(shí),或多個(gè)訂單有多個(gè)定位貨格時(shí),就需要計(jì)算多個(gè)定位貨格的揀貨路徑。
此揀貨路徑由兩部分組成:小車的行走路徑與揀貨員的行走路徑。由于揀貨員推小車時(shí),速度比揀貨員步行速度降低一半。
可視為揀貨員推小車時(shí)經(jīng)過的路徑成本要遠(yuǎn)高于揀貨員單獨(dú)步行時(shí),因此,申請(qǐng)人在本發(fā)明中可首先考慮小車的行走路徑,取此路徑的最短路徑;而在小車行走路徑能夠取到多個(gè)最短路徑走法時(shí),再比較不同小車路徑下,揀貨員的行走路徑。
下面通過具體實(shí)施例對(duì)本發(fā)明揀貨路徑確定方法和裝置進(jìn)行說明。
圖2為本發(fā)明揀貨路徑確定方法一個(gè)實(shí)施例的示意圖。優(yōu)選的,本實(shí)施例可由本發(fā)明揀貨路徑確定裝置執(zhí)行。該方法包括以下步驟:
步驟1,根據(jù)訂單信息確定定位貨格位置。
在本發(fā)明的一個(gè)實(shí)施例中,在如圖3所示的室內(nèi)地圖中,訂單中商品的定位貨位(儲(chǔ)位)一旦確定,那么可以根據(jù)首先查找此貨位在模型中對(duì)應(yīng)的巷道,關(guān)聯(lián)出該巷道的起始巷道口和終止巷道口,由此可以采用下列公式來計(jì)算貨位的坐標(biāo)點(diǎn):
若巷道是平行于X軸方向:
定位儲(chǔ)位縱坐標(biāo)=起始巷道口縱坐標(biāo)or終止巷道口縱坐標(biāo) (1)
若起始巷道口橫坐標(biāo)小于終止巷道口橫坐標(biāo),則:
定位儲(chǔ)位橫坐標(biāo)=起始巷道口橫坐標(biāo)+|起始巷道口橫坐標(biāo)-終止巷道口橫坐標(biāo)|*該儲(chǔ)位格編碼/該巷道總格數(shù) (2)
例如:在本發(fā)明一個(gè)具體實(shí)施例中,設(shè)定起始巷道口橫坐標(biāo)為10,終止巷道口橫坐標(biāo)30,儲(chǔ)位格為第2格,該巷道總格數(shù)為10格。通過上述公式可得,定位儲(chǔ)位橫坐標(biāo)=10+(30-10)*2/10=14。
若起始巷道口橫坐標(biāo)大于終止巷道口橫坐標(biāo),則:
定位儲(chǔ)位橫坐標(biāo)=起始巷道口橫坐標(biāo)-|起始巷道口橫坐標(biāo)-終止巷道口橫坐標(biāo)|*該儲(chǔ)位格編碼/該巷道總格數(shù) (3)
例如:在本發(fā)明一個(gè)具體實(shí)施例中,設(shè)定起始巷道口橫坐標(biāo)為30,終止巷道口橫坐標(biāo)10,儲(chǔ)位格為第2格,該巷道總格數(shù)為10格。通過上述公式可得,定位儲(chǔ)位橫坐標(biāo)=30-(30-10)*2/10=26。
若巷道是平行于Y軸方向:
定位儲(chǔ)位橫坐標(biāo)=起始巷道口橫坐標(biāo)or終止巷道口橫坐標(biāo) (4)
若起始巷道口縱坐標(biāo)小于終止巷道口縱坐標(biāo),則:
定位儲(chǔ)位縱坐標(biāo)=起始巷道口縱坐標(biāo)+|起始巷道口縱坐標(biāo)-終止巷道口縱坐標(biāo)|*該儲(chǔ)位格編號(hào)/該巷道總格數(shù) (5)
若起始巷道口縱坐標(biāo)大于終止巷道口縱坐標(biāo),則:
定位儲(chǔ)位縱坐標(biāo)=起始巷道口縱坐標(biāo)-|起始巷道口縱坐標(biāo)-終止巷道口縱坐標(biāo)|*該儲(chǔ)位格編號(hào)/該巷道總格數(shù) (6)
步驟2,根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑,其中,所述小車揀貨路徑為揀貨員起始位置到待進(jìn)入巷道口的路徑,所述待進(jìn)入巷道口為定位貨格所在巷道的待進(jìn)入巷道口。
在本發(fā)明的一個(gè)實(shí)施例中,如圖4所示,圖2實(shí)施例的步驟2可以包括:
步驟21,根據(jù)定位貨格位置確定待進(jìn)入巷道口和待進(jìn)入主干道,以確保一個(gè)巷道只有一個(gè)待進(jìn)入巷道口,其中待進(jìn)入主干道為待進(jìn)入巷道口所在的主干道。
在本發(fā)明一個(gè)具體實(shí)施例中,步驟21可以包括:
步驟211:確定待進(jìn)入巷道口。訂單進(jìn)行定位后,揀貨貨格就在整個(gè)地圖上確定,檢索定位貨格點(diǎn)對(duì)應(yīng)的巷道,及該巷道所對(duì)應(yīng)的巷道口。巷道口在主通道上,則將巷道口標(biāo)記為“待進(jìn)入巷道口”,若巷道口有2個(gè),且2個(gè)都在主通道上,則把2個(gè)巷道口都標(biāo)記為“待進(jìn)入巷道口”,如圖3所示。圖3中●表示定位貨格,*表示“待進(jìn)入巷道口”。
步驟212:確定待進(jìn)入主干道。統(tǒng)計(jì)每個(gè)主干道上“待進(jìn)入巷道口”的個(gè)數(shù),從數(shù)量最多的主干道開始,標(biāo)記該主干道為“待進(jìn)入主干道”。若該主干道所能進(jìn)入的被揀貨貨格定位的巷道在另外一條主干道上有“待進(jìn)入巷道口”,則將另外一個(gè)“待進(jìn)入巷道口”去掉標(biāo)記,確保一個(gè)巷道只有一個(gè)“待進(jìn)入巷道口”。若幾條主干道的“待進(jìn)入巷道口”數(shù)量相同,則找到這幾條主干道的中點(diǎn)位置,計(jì)算揀貨員的起始位置到這幾個(gè)中點(diǎn)位置的歐幾里得距離,按照距離的從小到大進(jìn)行“待進(jìn)入主干道”確定。重復(fù)步驟212,直到所有的“待進(jìn)入巷道口”都在“待進(jìn)入主干道”上。如圖5所示。圖5中●表示定位貨格,*表示處理后的“待進(jìn)入巷道口”。
步驟22,根據(jù)揀貨員起始位置、待進(jìn)入巷道口和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,步驟22可以包括:
步驟221,根據(jù)揀貨員起始位置和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑。
在本發(fā)明的一個(gè)具體實(shí)施例中,步驟221可以包括:
步驟2211,將每個(gè)待進(jìn)入主干道的中點(diǎn)和揀貨員的起始位置視作頂點(diǎn),獲取任意兩個(gè)頂點(diǎn)之間的最短距離。
將每個(gè)“待進(jìn)入主干道”的中點(diǎn)視作頂點(diǎn),將揀貨員的起始位置也視作頂點(diǎn),可以根據(jù)迪杰斯特拉算法等典型的單源最短路徑算法,計(jì)算任意2個(gè)頂點(diǎn)之間的最短路徑(由于路徑有方向,所以A—B點(diǎn)的最短路徑不代表B—A的最短路徑)。并在地圖上僅保留這些最短路徑的連接道路(含主干道、連接通道)?!按M(jìn)入主干道”有n條,那么,整個(gè)地圖就轉(zhuǎn)化成了有n+1個(gè)頂點(diǎn)(含揀貨員的起始位置),(n+1)*n條連接通道的有向圖,用數(shù)學(xué)符號(hào)G表示這個(gè)有向圖。其中V代表頂點(diǎn),E代表連接頂點(diǎn)的通道。
G=(V,E) (7)
步驟2212,根據(jù)任意兩個(gè)頂點(diǎn)之間的最短距離確定小車進(jìn)入待進(jìn)入主干道中點(diǎn)的最短路徑。
而確定小車“待進(jìn)入主干道”的路徑就轉(zhuǎn)化成了在G上以揀貨起點(diǎn)為起點(diǎn)的旅行商問題(TSP)。利用任何一種解TSP問題的算法(如分支定界法、遺傳算法等)都可以得到小車的行走路徑。
令R′C表示小車路徑,D′C表示該路徑的長(zhǎng)度,函數(shù)TSPC′(*)表示此問題的路徑(該函數(shù)輸出路徑和長(zhǎng)度)。則
TSPC′(G)=(R′C,D′C) (8)
步驟222,根據(jù)小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑、以及待進(jìn)入主干道中點(diǎn)位置、待進(jìn)入巷道口位置,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
由于此步驟221中的路徑連接的只是每個(gè)“待進(jìn)入主干道”的中點(diǎn)。因此,步驟222中要視連接情況進(jìn)行微調(diào)(延長(zhǎng)或縮短某條邊),將留在地圖上的“待進(jìn)入巷道口”全部覆蓋。
這次調(diào)整后的小車路徑用TSPC(G)表示:
TSPC(G)=(RC,DC) (9)
待進(jìn)入主干道是一條線,而TSP問題需要若干個(gè)要達(dá)到的點(diǎn),這樣的話,需要在主干道上確定一個(gè)或若干個(gè)點(diǎn)進(jìn)行整體的路徑規(guī)劃。
這里的調(diào)整為:對(duì)所有已經(jīng)確定的“待進(jìn)入巷道口”做TSP,計(jì)算路徑。
步驟23,將小車到達(dá)待進(jìn)入巷道口的最短路徑(小車最短路徑)作為小車揀貨路徑。
在本發(fā)明的一個(gè)實(shí)施例中,在小車到達(dá)待進(jìn)入巷道口的最短路徑有多個(gè)的情況下,步驟23可以包括:確定每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑;將每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑進(jìn)行排序;將最短的揀貨員揀貨路徑對(duì)應(yīng)的小車最短路徑作為小車揀貨路徑;將最短的揀貨員揀貨路徑作為揀貨員行走路徑。
步驟3,確定揀貨員行走路徑,其中,揀貨員行走路徑為待進(jìn)入巷道口到定位貨格位置的路徑。
由于小車的路徑以及“待進(jìn)入巷道口”、定位貨格點(diǎn)都已經(jīng)確定,揀貨員的行走路徑可以描述為:當(dāng)揀貨員推小車沿著小車路徑行走時(shí),當(dāng)?shù)竭_(dá)“待進(jìn)入巷道口”后,進(jìn)入巷道內(nèi)最遠(yuǎn)的定位貨格,開始揀選,依次揀完該巷道內(nèi)的所有定位貨格,再返回“待進(jìn)入巷道口”。
在本發(fā)明的一個(gè)實(shí)施例中,步驟3可以包括:
步驟31,對(duì)于每一待進(jìn)入巷道口,根據(jù)待進(jìn)入巷道口與巷道內(nèi)最遠(yuǎn)的定位貨格位置之間的距離確定揀貨員的單次揀選路徑。
以平行于X軸的巷道為例:
若“待進(jìn)入巷道口”是該巷道的“起始巷道口”,那么最遠(yuǎn)的定位貨格是所有該巷道中,定位貨格格數(shù)最大的貨格;反之,若“待進(jìn)入巷道口”是該巷道的“終止巷道口”,那么最遠(yuǎn)的定位貨格是所有該巷道中,定位貨格格數(shù)最小的貨格;令最遠(yuǎn)的定位貨格格數(shù)為g,“待進(jìn)入巷道口”的橫坐標(biāo)為x1,該巷道的另一個(gè)巷道口的橫坐標(biāo)為x2,該巷道總貨格數(shù)為G。那么單次揀選的距離為Di(i為該小車路徑上第i個(gè)碰到的“待進(jìn)入巷道口”)計(jì)算方式為:
若進(jìn)入巷道口是“起始巷道口”,那么
若進(jìn)入巷道口是“終止巷道口”,那么
在本發(fā)明一個(gè)具體實(shí)施例中,最遠(yuǎn)的定位貨格格數(shù)g為2,“待進(jìn)入巷道口”的橫坐標(biāo)x1為10,該巷道的另一個(gè)巷道口的橫坐標(biāo)x2為30,該巷道總貨格數(shù)G為10。
(1)若“待進(jìn)入巷道口”是該巷道的“起始巷道口”,那么最遠(yuǎn)的定位貨格是所有該巷道中,定位貨格的格數(shù)最大的貨格
此時(shí)帶入公式10,可得Di=2*(30-10)*2/10=8。
(2)若“待進(jìn)入巷道口”是該巷道的“終止巷道口”,那么最遠(yuǎn)的定位貨格是所有該巷道中,定位貨格的格數(shù)最小的貨格。
此時(shí)帶入公式11,可得Di=2*(30-10)*(10-2)/10=32。
步驟32,根據(jù)所有待進(jìn)入巷道口的單次揀選路徑之和確定揀貨員行走路徑和長(zhǎng)度。
若“待進(jìn)入巷道口”共有m個(gè),用DP代表所有揀貨點(diǎn)都揀完之后的路徑長(zhǎng)度之和,用RP代表所有揀貨點(diǎn)的路徑,用TSPP(G)輸出揀貨員的步行路徑和長(zhǎng)度。則:
TSPP(G)=(RP,DP) (11)
步驟4,根據(jù)小車揀貨路徑和揀貨員行走路徑確定揀貨員起始位置到定位貨格的總揀貨路徑和長(zhǎng)度。可將多個(gè)定位貨格的揀貨路徑表示為:
TSP(G)=TSPC(G)+TSPP(G) (12)
基于本發(fā)明上述實(shí)施例提供的揀貨路徑確定方法,針對(duì)揀貨的實(shí)際操作方式(魚骨刺法揀貨路徑)進(jìn)行揀貨路徑的設(shè)計(jì),可以將車行路線和人行路線進(jìn)行分離,并首先考慮車行路線的最小化,并將此問題轉(zhuǎn)化為將揀貨路徑問題轉(zhuǎn)化為旅行商問題(TSP),利用常用算法即可對(duì)問題求解。由此,本發(fā)明上述實(shí)施例可以自動(dòng)實(shí)現(xiàn)電商平面?zhèn)}庫中訂單集合或一個(gè)訂單多個(gè)定位貨格情況下,由此實(shí)現(xiàn)了揀貨路徑的整體上的最優(yōu)化,即車行路線和人形路線整體上的最優(yōu)化,從而避免了揀貨員在揀貨時(shí),非??赡芘芎苓h(yuǎn)的距離而只揀少量的商品的技術(shù)問題。
圖6為本發(fā)明揀貨路徑確定裝置第一實(shí)施例的示意圖。如圖6所示,所述揀貨路徑確定裝置可以包括貨格位置確定模塊61、小車路徑確定模塊62、揀貨員路徑確定模塊63和總路徑確定模塊64,其中:
貨格位置確定模塊61,用于根據(jù)訂單信息確定定位貨格位置。
小車路徑確定模塊62,用于根據(jù)定位貨格位置和揀貨員起始位置確定小車揀貨路徑,其中,所述小車揀貨路徑為揀貨員起始位置到待進(jìn)入巷道口的路徑,所述待進(jìn)入巷道口為定位貨格所在巷道的待進(jìn)入巷道口。
揀貨員路徑確定模塊63,用于確定揀貨員行走路徑,其中,揀貨員行走路徑為待進(jìn)入巷道口到定位貨格位置的路徑。
總路徑確定模塊64,用于根據(jù)小車揀貨路徑和揀貨員行走路徑確定揀貨員起始位置到定位貨格的總揀貨路徑和長(zhǎng)度。
圖7為本發(fā)明一個(gè)實(shí)施例中小車路徑確定模塊的示意圖。如圖7所示,圖6實(shí)施例中的小車路徑確定模塊62可以包括待進(jìn)入主干道確定單元621、最短路徑確定單元622和小車路徑確定單元623,其中:
待進(jìn)入主干道確定單元621,用于根據(jù)定位貨格位置確定待進(jìn)入巷道口和待進(jìn)入主干道,以確保一個(gè)巷道只有一個(gè)待進(jìn)入巷道口,其中待進(jìn)入主干道為待進(jìn)入巷道口所在的主干道。
最短路徑確定單元622,用于根據(jù)揀貨員起始位置、待進(jìn)入巷道口和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
小車路徑確定單元623,用于將小車到達(dá)待進(jìn)入巷道口的最短路徑作為小車揀貨路徑。
在本發(fā)明的一個(gè)實(shí)施例中,小車路徑確定單元623可以用于在最短路徑確定單元622確定的小車到達(dá)待進(jìn)入巷道口的最短路徑有多個(gè)的情況下,確定每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑;將每個(gè)小車最短路徑對(duì)應(yīng)的揀貨員揀貨路徑進(jìn)行排序;將最短的揀貨員揀貨路徑對(duì)應(yīng)的小車最短路徑作為小車揀貨路徑;并指示揀貨員路徑確定模塊63將最短的揀貨員揀貨路徑作為揀貨員行走路徑。
圖8為本發(fā)明一個(gè)實(shí)施例中最短路徑確定單元的示意圖。如圖8所示,圖7實(shí)施例中的最短路徑確定單元622可以包括第一最短路徑確定子模塊6221和第二最短路徑確定子模塊6222,其中:
第一最短路徑確定子模塊6221,用于根據(jù)揀貨員起始位置和待進(jìn)入主干道,確定小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑。
在本發(fā)明的一個(gè)實(shí)施例中,第一最短路徑確定子模塊6221具體可以用于將每個(gè)待進(jìn)入主干道的中點(diǎn)和揀貨員的起始位置視作頂點(diǎn),獲取任意兩個(gè)頂點(diǎn)之間的最短距離;并根據(jù)任意兩個(gè)頂點(diǎn)之間的最短距離確定小車進(jìn)入待進(jìn)入主干道中點(diǎn)的最短路徑。
第二最短路徑確定子模塊6222,用于根據(jù)小車到達(dá)待進(jìn)入主干道中點(diǎn)的最短路徑、以及待進(jìn)入主干道中點(diǎn)位置、待進(jìn)入巷道口位置,確定小車到達(dá)待進(jìn)入巷道口的最短路徑。
圖9為本發(fā)明一個(gè)實(shí)施例中揀貨員路徑確定模塊的示意圖。如圖9所示,圖6實(shí)施例中的揀貨員路徑確定模塊63可以包括單次揀選路徑確定單元631和揀貨員路徑確定單元632,其中:
單次揀選路徑確定單元631,用于對(duì)于每一待進(jìn)入巷道口,根據(jù)待進(jìn)入巷道口與巷道內(nèi)最遠(yuǎn)的定位貨格位置之間的距離確定揀貨員的單次揀選路徑。
揀貨員路徑確定單元632,用于根據(jù)所有待進(jìn)入巷道口的單次揀選路徑之和確定揀貨員行走路徑和長(zhǎng)度。
基于本發(fā)明上述實(shí)施例提供的揀貨路徑確定裝置,針對(duì)揀貨的實(shí)際操作方式(魚骨刺法揀貨路徑)進(jìn)行揀貨路徑的設(shè)計(jì),可以將車行路線和人行路線進(jìn)行分離,并首先考慮車行路線的最小化,并將此問題轉(zhuǎn)化為將揀貨路徑問題轉(zhuǎn)化為旅行商問題,利用常用算法即可對(duì)問題求解。由此,本發(fā)明上述實(shí)施例可以自動(dòng)實(shí)現(xiàn)電商平面?zhèn)}庫中訂單集合或一個(gè)訂單多個(gè)定位貨格情況下,由此實(shí)現(xiàn)了揀貨路徑的整體上的最優(yōu)化,即車行路線和人形路線整體上的最優(yōu)化,從而避免了揀貨員在揀貨時(shí),非常可能跑很遠(yuǎn)的距離而只揀少量的商品的技術(shù)問題。
圖10為本發(fā)明揀貨路徑確定裝置第二實(shí)施例的示意圖。如圖10所示,所述揀貨路徑確定裝置可以包括存儲(chǔ)器101和處理器102,其中:
存儲(chǔ)器101,用于存儲(chǔ)指令。
處理器102,用于執(zhí)行所述指令,使得所述裝置執(zhí)行實(shí)現(xiàn)如上述任一實(shí)施例所述的揀貨路徑確定方法的操作。
基于本發(fā)明上述實(shí)施例提供的揀貨路徑確定裝置,在訂單或訂單集合包含多個(gè)定位貨格的情況下,用魚骨刺法進(jìn)行揀貨時(shí),可以通過確定小車路徑和揀貨員行走路徑來確定總的揀貨路徑,其中將小車路徑作為第一優(yōu)先級(jí)考慮,即首先考慮車行路線的最小化,并將此問題轉(zhuǎn)化為將揀貨路徑問題轉(zhuǎn)化為旅行商問題,利用常用算法即可對(duì)問題求解。由此,本發(fā)明上述實(shí)施例可以自動(dòng)實(shí)現(xiàn)電商平面?zhèn)}庫中訂單集合或一個(gè)訂單多個(gè)定位貨格情況下,由此實(shí)現(xiàn)了揀貨路徑的整體上的最優(yōu)化,即車行路線和人形路線整體上的最優(yōu)化,從而避免了揀貨員在揀貨時(shí),非??赡芘芎苓h(yuǎn)的距離而只揀少量的商品的技術(shù)問題。
在上面所描述的揀貨路徑確定裝置可以實(shí)現(xiàn)為用于執(zhí)行本申請(qǐng)所描述功能的通用處理器、可編程邏輯控制器(PLC)、數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列(FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件或者其任意適當(dāng)組合。
至此,已經(jīng)詳細(xì)描述了本發(fā)明。為了避免遮蔽本發(fā)明的構(gòu)思,沒有描述本領(lǐng)域所公知的一些細(xì)節(jié)。本領(lǐng)域技術(shù)人員根據(jù)上面的描述,完全可以明白如何實(shí)施這里公開的技術(shù)方案。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
本發(fā)明的描述是為了示例和描述起見而給出的,而并不是無遺漏的或者將本發(fā)明限于所公開的形式。很多修改和變化對(duì)于本領(lǐng)域的普通技術(shù)人員而言是顯然的。選擇和描述實(shí)施例是為了更好說明本發(fā)明的原理和實(shí)際應(yīng)用,并且使本領(lǐng)域的普通技術(shù)人員能夠理解本發(fā)明從而設(shè)計(jì)適于特定用途的帶有各種修改的各種實(shí)施例。