本發(fā)明涉及計(jì)算機(jī)軟件領(lǐng)域,尤其涉及一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法及裝置、用戶設(shè)備。
背景技術(shù):
在生活中經(jīng)常遇到這樣的問(wèn)題,某單位需完成n項(xiàng)任務(wù),恰好有m個(gè)人可承擔(dān)這些任務(wù)。由于每個(gè)人精力有限只能完成一定數(shù)量的任務(wù)。于是產(chǎn)生應(yīng)指派哪些人去完成哪些任務(wù),使完成n項(xiàng)任務(wù)的總效率最高,或所需總時(shí)間最小的問(wèn)題。
以上所描述的就是指派問(wèn)題,指派問(wèn)題是運(yùn)籌學(xué)中的一個(gè)經(jīng)典問(wèn)題。在企業(yè)中,通常需要為多個(gè)任務(wù)進(jìn)行人員指派。或者說(shuō),一個(gè)復(fù)雜的任務(wù)可以分為多個(gè)子任務(wù),需要為這些子任務(wù)進(jìn)行人員指派。這類問(wèn)題的經(jīng)典解法是,考慮員工完成各項(xiàng)任務(wù)的時(shí)間或者完成任務(wù)的損耗,建立矩陣,利用匈牙利算法找出一個(gè)效益最大的人員指派。匈牙利算法的流程如下:
第一步,使指派問(wèn)題的系數(shù)矩陣經(jīng)變換,在各行各列中都出現(xiàn)0元素;
(1)從系數(shù)矩陣的每行元素減去該行的最小元素;
(2)再?gòu)乃孟禂?shù)矩陣的每列元素中減去該列的最小元素。
第二步,進(jìn)行試指派.若此時(shí)得到的mpn,應(yīng)回到第一步,重新對(duì)系數(shù)矩陣進(jìn)行變換。但要把第一步的過(guò)程改為:
(1)從系數(shù)矩陣的每列元素減去該列的最小元素;
(2)再?gòu)乃孟禂?shù)矩陣的每行元素中減去該行的最小元素。這樣做就使得新矩陣的0元素比較多些。
第三步,再進(jìn)入第二步進(jìn)行試指派就可以得到最優(yōu)解,利用前面的性質(zhì)可以證明這個(gè)最優(yōu)解就是我們所要求的原問(wèn)題的最優(yōu)解。
匈牙利算法主要適用于問(wèn)題規(guī)模不大時(shí)進(jìn)行手工計(jì)算,難于編程在計(jì)算機(jī)上實(shí)現(xiàn)。指派問(wèn)題有著十分廣泛的應(yīng)用,它可用于建立某些決策支持系統(tǒng)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例公開(kāi)了一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法及裝置、用戶設(shè)備,能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且能降低時(shí)間復(fù)雜度。
本發(fā)明實(shí)施例第一方面公開(kāi)一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法,包括:
獲取任務(wù)指派信息,其中,所述任務(wù)指派信息包括m個(gè)機(jī)器人,n項(xiàng)任務(wù),每項(xiàng)任務(wù)至少需要p個(gè)機(jī)器人去完成,每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù);
判斷所述任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況;
如果判斷出機(jī)器人的移動(dòng)距離不依賴起點(diǎn)只依賴任務(wù),則根據(jù)最小成本網(wǎng)絡(luò)流算法建模;
根據(jù)所述最小成本網(wǎng)絡(luò)流算法建模獲取最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第一方面中,在判斷所述任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況的步驟之后,所述方法還包括:
如果判斷出機(jī)器人的移動(dòng)距離不是不依賴起點(diǎn)只依賴任務(wù)的情況時(shí),則根據(jù)貪心算法獲取最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第一方面中,所述根據(jù)最小成本網(wǎng)絡(luò)流算法建模獲取最優(yōu)解的步驟包括:
獲取當(dāng)前網(wǎng)絡(luò)最大流;
根據(jù)邊費(fèi)用判斷是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少;
如果是,則對(duì)所述邊流量進(jìn)行調(diào)整,獲取新的最大流,直至不能繼續(xù)調(diào)整;
如果否,則當(dāng)前網(wǎng)絡(luò)最大流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第一方面中,所述根據(jù)最小成本網(wǎng)絡(luò)流算法建模獲取最優(yōu)解的步驟包括:
獲取初始流,所述初始流為所有流鏈中費(fèi)用最??;
判斷是否能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最??;
如果否,則所述初始流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解;
如果是,則將所述增流鏈作為新的初始流繼續(xù)查找新的增流鏈,直至獲取最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第一方面中,根據(jù)貪心算法獲取最優(yōu)解的步驟包括:
在未定序的機(jī)器人中,逐個(gè)獲取機(jī)器人在未完成的任務(wù)節(jié)點(diǎn)中完成q項(xiàng)任務(wù)需要走的最短路徑,所述最短路徑為對(duì)應(yīng)機(jī)器人的定序;
當(dāng)將一個(gè)機(jī)器人定序時(shí),判斷是否有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行;
如果是,則將該任務(wù)節(jié)點(diǎn)標(biāo)記為已完成;
直到將所有機(jī)器人定序時(shí),得到最優(yōu)解。
本發(fā)明實(shí)施例第二方面公開(kāi)一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置,包括:
任務(wù)指派信息獲取模塊,用于獲取任務(wù)指派信息,其中,所述任務(wù)指派信息包括m個(gè)機(jī)器人,n項(xiàng)任務(wù),每項(xiàng)任務(wù)至少需要p個(gè)機(jī)器人去完成,每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù);
判斷模塊,用于判斷所述任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況;
建模模塊,用于當(dāng)判斷模塊判斷出機(jī)器人的移動(dòng)距離不依賴起點(diǎn)只依賴任務(wù),則根據(jù)最小成本網(wǎng)絡(luò)流算法建模;
最優(yōu)解獲取模塊,用于根據(jù)所述最小成本網(wǎng)絡(luò)流算法建模獲取最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第二方面中,所述最優(yōu)解獲取模塊包括:
最大流獲取單元,用于獲取當(dāng)前網(wǎng)絡(luò)最大流;
判斷單元,用于根據(jù)邊費(fèi)用判斷是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少;
邊流量調(diào)整單元,用于當(dāng)判斷模塊判斷出能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少時(shí),對(duì)所述邊流量進(jìn)行調(diào)整,獲取新的最大流;
最優(yōu)解獲取單元,當(dāng)判斷單元判斷出不能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少時(shí),當(dāng)前網(wǎng)絡(luò)最大流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第二方面中,所述最優(yōu)解獲取模塊包括:
初始流獲取單元,用于獲取初始流,所述初始流為所有流鏈中費(fèi)用最小;
判斷單元,用于判斷是否能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最??;
增流鏈查找單元,用于當(dāng)判斷單元判斷出能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最小時(shí),則將所述增流鏈作為新的初始流繼續(xù)查找新的增流鏈,直至獲取最優(yōu)解;
最優(yōu)解獲取單元,當(dāng)判斷模塊判斷出不能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最小時(shí),所述初始流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例第二方面中,所述最優(yōu)解獲取模塊還用于當(dāng)判斷模塊判斷出機(jī)器人的移動(dòng)距離不是不依賴起點(diǎn)只依賴任務(wù)的情況時(shí),根據(jù)貪心算法獲取最優(yōu)解;
其中,所述最優(yōu)解獲取模塊包括:
定序單元,用于在未定序的機(jī)器人中,逐個(gè)獲取機(jī)器人在未完成的任務(wù)節(jié)點(diǎn)中完成q項(xiàng)任務(wù)需要走的最短路徑,所述最短路徑為對(duì)應(yīng)機(jī)器人的定序;
判斷單元,用于當(dāng)定序單元將一個(gè)機(jī)器人定序時(shí),判斷是否有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行;
標(biāo)記單元,用于當(dāng)判斷單元判斷出有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行時(shí),將該任務(wù)節(jié)點(diǎn)標(biāo)記為已完成;
最優(yōu)解獲取單元,用于當(dāng)定序模塊將所有機(jī)器人定序時(shí),得到最優(yōu)解。
本發(fā)明實(shí)施例第三方面公開(kāi)一種用戶設(shè)備,包括本發(fā)明實(shí)施例第二方面公開(kāi)的所述基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置。
與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例具備以下有益效果:
本發(fā)明實(shí)施例中,通過(guò)將多機(jī)器人多任務(wù)的指派問(wèn)題抽象為最小投資問(wèn)題來(lái)解決,根據(jù)最小成本網(wǎng)絡(luò)流算法建模并求得最優(yōu)解;對(duì)于一般情況,即需要解決的問(wèn)題規(guī)模很大的情況下,通過(guò)一般的greedy算法來(lái)獲取最優(yōu)解。本實(shí)施例中提出的方法能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實(shí)施例公開(kāi)的一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖;
圖2是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖;
圖3是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖;
圖4是本發(fā)明實(shí)施例公開(kāi)的一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置的邏輯結(jié)構(gòu)示意圖;
圖5是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置的邏輯結(jié)構(gòu)示意圖;
圖6是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置的邏輯結(jié)構(gòu)示意圖;
圖7是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置的邏輯結(jié)構(gòu)示意圖;
圖8是本發(fā)明實(shí)施例中機(jī)器人的移動(dòng)距離不依賴于起點(diǎn)而只依賴于任務(wù)的示意圖;
圖9是本發(fā)明實(shí)施例中基于最小成本網(wǎng)絡(luò)流算法的示意圖;
圖10是本發(fā)明實(shí)施例中貪心指派算法示例圖;
圖11是本發(fā)明實(shí)施例公開(kāi)的一種用戶設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
需要說(shuō)明的是,本發(fā)明實(shí)施例的術(shù)語(yǔ)“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過(guò)程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒(méi)有清楚地列出的或?qū)τ谶@些過(guò)程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
本發(fā)明實(shí)施例公開(kāi)了一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法及裝置、用戶設(shè)備,通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
實(shí)施例一
請(qǐng)參閱圖1,圖1是本發(fā)明實(shí)施例公開(kāi)的一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖。如圖1所示,該基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法可以包括以下步驟:
101、獲取任務(wù)指派信息;
獲取任務(wù)指派信息,其中,該任務(wù)指派信息包括m個(gè)機(jī)器人,n項(xiàng)任務(wù),每項(xiàng)任務(wù)至少需要p個(gè)機(jī)器人去完成,每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù);具體的,測(cè)度空間m上有一個(gè)點(diǎn)集,每?jī)蓚€(gè)點(diǎn)vi,vj之間定義了距離dij。在m中有n個(gè)不同的點(diǎn)上有任務(wù),m個(gè)點(diǎn)上有機(jī)器人。每項(xiàng)任務(wù)至少需要p個(gè)機(jī)器人去完成,但為了不讓每個(gè)機(jī)器人工作負(fù)載過(guò)大,要求每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù)。機(jī)器人要參與完成任務(wù),必須移動(dòng)到現(xiàn)場(chǎng),在一個(gè)點(diǎn)完成任務(wù)后再移動(dòng)到下一個(gè)點(diǎn)(最多移動(dòng)q個(gè)點(diǎn))。要完成的任務(wù)沒(méi)有優(yōu)先級(jí)的區(qū)別。因此,每個(gè)機(jī)器人不但可以任意選擇自己要完成的任務(wù),而且可以任意選擇完成的順序和路徑。每個(gè)機(jī)器人完成自己的工作后依優(yōu)化的目標(biāo)不同可以返回起始點(diǎn)也可以不返回起點(diǎn),等待下一輪的工作。那么,優(yōu)化的問(wèn)題是:完成所有任務(wù)后,所有機(jī)器人移動(dòng)的總距離最短,可以抽象為最小投資問(wèn)題來(lái)解決。
102、判斷任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況;
對(duì)于最小投資問(wèn)題,我們首先考慮這樣的情況即機(jī)器人的移動(dòng)的距離不依賴于起點(diǎn),而只依賴于任務(wù)。比如完成一個(gè)任務(wù)要進(jìn)行的投資,而不論前面的任務(wù)是如何完成的。圖8顯示的是滿足這樣條件的一個(gè)示例,圖中兩個(gè)機(jī)器人都要去完成位于點(diǎn)g的任務(wù),機(jī)器人1無(wú)論從哪里走,完成任務(wù)都要55單位的投資,類似地機(jī)器人2無(wú)論怎么走完成同樣的任務(wù)都要40單位的投資。
在獲取任務(wù)指派信息后,首先判斷任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況,如果是,則執(zhí)行步驟103,否則執(zhí)行步驟105。
103、根據(jù)最小成本網(wǎng)絡(luò)流算法建模;
如果步驟102中判斷出任務(wù)指派信息中,機(jī)器人的移動(dòng)距離為不依賴起點(diǎn)只依賴任務(wù)的情況,則,將本實(shí)施例中需要解決的問(wèn)題進(jìn)行優(yōu)化后的問(wèn)題是:在滿足限制的條件下,投入總時(shí)間精力最小的分配方案。
具體的,在一個(gè)測(cè)度空間m上有一個(gè)點(diǎn)集,每?jī)蓚€(gè)點(diǎn)vi,vj之間定義了距離dij。現(xiàn)在m中有n個(gè)不同的點(diǎn)上有任務(wù),m個(gè)點(diǎn)上有機(jī)器人,每個(gè)機(jī)器人ai都附帶一個(gè)向量,vi=<ri1,...,rin>,rij,1≤i≤m,1≤j≤n表示ai為完成j進(jìn)行的投資。每個(gè)任務(wù)至少需要p個(gè)機(jī)器人去完成,每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù)。即優(yōu)化問(wèn)題是:在滿足限制條件下,完成所有任務(wù)后,機(jī)器人的投資總和最小。
本實(shí)施例中根據(jù)最小成本網(wǎng)絡(luò)流算法進(jìn)行建模,求得最優(yōu)解。具體的:
為了處理的方便,本發(fā)明實(shí)施例對(duì)模型的條件進(jìn)行了一些加強(qiáng),主要在兩個(gè)方面:一是對(duì)p,q的限制,我們假設(shè)是精確的p,q限制,沒(méi)有最多和最少的要求,即每個(gè)任務(wù)要p個(gè)人才能完成,每個(gè)人最多干q項(xiàng)目任務(wù)。二是針對(duì)最短路徑問(wèn)題,假設(shè)沒(méi)有兩個(gè)機(jī)器人選擇同一個(gè)任務(wù)集合。這兩個(gè)限制對(duì)問(wèn)題的本質(zhì)沒(méi)有影響。其次,在這兩個(gè)限制條件下,我們先給出幾個(gè)主要結(jié)果:
1.結(jié)果一:最小投資問(wèn)題是p問(wèn)題可以在o(mq(m+n)2)時(shí)間內(nèi)求得最優(yōu)解。
2.結(jié)果二:對(duì)多機(jī)器人指派問(wèn)題一般形式的一個(gè)有效貪心(greedy)算法。
對(duì)于這個(gè)問(wèn)題,本實(shí)施例中總體思路是利用最小費(fèi)用最大流網(wǎng)絡(luò)來(lái)模型化這個(gè)問(wèn)題并獲得最優(yōu)解。在一個(gè)網(wǎng)絡(luò)中每段路徑都有“容量”和”費(fèi)用”兩個(gè)限制的條件下,此類問(wèn)題的研究試圖尋找出:流量從起點(diǎn)到終點(diǎn),如何選擇路徑、分配經(jīng)過(guò)路徑的流量,可以在流量最大的前提下,達(dá)到所用的費(fèi)用最小的要求。
對(duì)于最小投資問(wèn)題,我們構(gòu)造如圖9的網(wǎng)絡(luò)流圖,對(duì)每一個(gè)機(jī)器人節(jié)點(diǎn),從源節(jié)點(diǎn)s流入q,邊的費(fèi)用是0,記為q/0.所以總的流入量是mq,費(fèi)用是0。由于一個(gè)機(jī)器人完成某個(gè)任務(wù)所化的費(fèi)用是一個(gè)固定值,無(wú)論他上一步任務(wù)在哪里,他到該任務(wù)的費(fèi)用都等于他從出發(fā)點(diǎn)到該任務(wù)的費(fèi)用(如圖8所示),因此在流圖中每個(gè)機(jī)器人i到每個(gè)任務(wù)j有一條容量為1邊,表示該機(jī)器人可以完成那個(gè)任務(wù),費(fèi)用就是附帶向量的相應(yīng)元素rij。在第二層網(wǎng)絡(luò)中,由于對(duì)每個(gè)機(jī)器人其流入量是q,而圖中流出的管道(每個(gè)管道容量是1,即1/r11對(duì)應(yīng)的管道)有m條,所以只能挑選其中的q流出。對(duì)于每一個(gè)任務(wù)節(jié)點(diǎn),可以有多個(gè)管道流入,每一個(gè)管道流入量是1,因此,當(dāng)流出量為p時(shí),表示來(lái)自于p個(gè)機(jī)器人在完成這個(gè)任務(wù),而第三層網(wǎng)絡(luò)中總的流出到節(jié)點(diǎn)t的量為np,其中,n表示n個(gè)節(jié)點(diǎn)會(huì)有流入,也就是n個(gè)節(jié)點(diǎn)上會(huì)有任務(wù)。當(dāng)mq≥np時(shí),求出的最小費(fèi)用網(wǎng)絡(luò)流應(yīng)該就對(duì)應(yīng)我們要求的最優(yōu)解,該解可以在o(mq(m+n)2)時(shí)間內(nèi)求得。
104、根據(jù)最小成本網(wǎng)絡(luò)流算法模型獲取最優(yōu)解;
建立模型后,根據(jù)最小成本網(wǎng)絡(luò)流算法模型并獲取最優(yōu)解。解決最小成本最大流問(wèn)題,一般有兩條途徑:一條途徑是先用最大流算法算出最大流,然后根據(jù)邊費(fèi)用,檢查是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少。只要有這個(gè)可能,就進(jìn)行這樣的調(diào)整。調(diào)整后,得到一個(gè)新的最大流。然后,在這個(gè)新流的基礎(chǔ)上繼續(xù)檢查,調(diào)整。這樣迭代下去,直至不能進(jìn)行相應(yīng)調(diào)整,便得到最小費(fèi)用最大流。這一思路的特點(diǎn)是保持問(wèn)題的可行性,即始終保持最大流,向最優(yōu)推進(jìn)。
另一條解決途徑和前面介紹的最大流算法思路相類似,一般首先給出零流作為初始流。這個(gè)流的費(fèi)用為零,當(dāng)然是最小費(fèi)用的。然后尋找一條源點(diǎn)至匯點(diǎn)的增流鏈,但要求這條增流鏈必須是所有增流鏈中費(fèi)用最小的一條。如果能找出增流鏈,則在增流鏈上增流,得出新流。將這個(gè)流作為初始流看待,繼續(xù)尋找增流鏈增流。這樣迭代下去,直至找不出增流鏈,這時(shí)的流即為最小費(fèi)用最大流。這一算法思路的特點(diǎn)是保持解的最優(yōu)性,即每次得到的新流都是費(fèi)用最小的流,而逐漸向可行解靠近,直至最大流時(shí)才是一個(gè)可行解。
105、根據(jù)貪心算法獲取最優(yōu)解;
對(duì)于一般情況,即如果步驟102中判斷出任務(wù)指派信息中,機(jī)器人的移動(dòng)距離不為不依賴起點(diǎn)只依賴任務(wù)的情況,則根據(jù)貪心算法獲取最優(yōu)解。
針對(duì)一般情況提出一個(gè)greedy算法,這個(gè)算法具有最少的人員需求,但總的機(jī)器人移動(dòng)距離與最優(yōu)情況的差距還沒(méi)找到,可以理解為接近最優(yōu)解。算法的基本思想很簡(jiǎn)單,將所有的機(jī)器人排成一線,令每個(gè)機(jī)器人不斷地沿q-length(即完成q個(gè)選擇的任務(wù)走的路徑)的最短路徑找它要完成任務(wù)的節(jié)點(diǎn)。在找到一個(gè)節(jié)點(diǎn)后,將該節(jié)點(diǎn)計(jì)數(shù)。當(dāng)q個(gè)節(jié)點(diǎn)處理過(guò)后,統(tǒng)一對(duì)任務(wù)圖進(jìn)行一次處理,即當(dāng)某個(gè)任務(wù)有p個(gè)機(jī)器人工作時(shí),將該任務(wù)標(biāo)記為完成,節(jié)點(diǎn)連帶其邊從圖中消去,消去后的圖仍為全連接的減少任務(wù)后的任務(wù)圖,基于此重新開(kāi)始計(jì)算剩余每個(gè)機(jī)器人的q-length的最短路徑,重復(fù)計(jì)算以上步驟直到所有機(jī)器人被處理完畢。圖10是greedy算法的一個(gè)例子,圖中三個(gè)機(jī)器人以a,b,c的順序沿選擇的最短路徑完成16個(gè)任務(wù),每個(gè)任務(wù)最多兩個(gè)機(jī)器人完成。特別注意的是b完成后,任務(wù)15的節(jié)點(diǎn)從圖中消去,盡管c完成任務(wù)12后,按原圖最短路勁也要完成15,但在新的減少任務(wù)后的任務(wù)圖中,它下一個(gè)任務(wù)節(jié)點(diǎn)是1??偟臋C(jī)器人移動(dòng)距離視為最優(yōu)解。
在圖1所描述的方法中,通過(guò)將多機(jī)器人多任務(wù)的指派問(wèn)題抽象為最小投資問(wèn)題來(lái)解決,根據(jù)最小成本網(wǎng)絡(luò)流算法建模并求得最優(yōu)解;對(duì)于一般情況,即需要解決的問(wèn)題規(guī)模很大的情況下,通過(guò)一般的greedy算法來(lái)獲取最優(yōu)解。本實(shí)施例中提出的方法能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
實(shí)施例二
請(qǐng)參閱圖2,圖2是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖。如圖2所示,該基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法可以包括以下步驟:
步驟201至步驟203同實(shí)施例一中步驟101至步驟103,此處不做贅述。
204、獲取當(dāng)前網(wǎng)絡(luò)最大流;
獲取當(dāng)前網(wǎng)絡(luò)最大流,首次獲取時(shí),先用最大流算法算出出最大流。
205、根據(jù)邊費(fèi)用判斷是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少;
獲取當(dāng)前網(wǎng)絡(luò)最大流后,再根據(jù)邊費(fèi)用,檢查是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少,如果是,則執(zhí)行步驟206,否則執(zhí)行步驟207。
206、對(duì)邊流量進(jìn)行調(diào)整;
如果在步驟205中判斷出能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少,則對(duì)邊流量進(jìn)行調(diào)整,調(diào)整后,得到一個(gè)新的最大流,再返回執(zhí)行步驟204,在這個(gè)新流的基礎(chǔ)上繼續(xù)檢查,調(diào)整。這樣迭代下去,直至無(wú)調(diào)整可能,便得到最小費(fèi)用最大流,即求得最優(yōu)解。
207、求得最優(yōu)解;
當(dāng)調(diào)整到能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少的情況時(shí),得到的最小費(fèi)用最大流即為最優(yōu)解。
208、判斷是否將所有機(jī)器人定序;
對(duì)于一般情況,即如果步驟202中判斷出任務(wù)指派信息中,機(jī)器人的移動(dòng)距離不為不依賴起點(diǎn)只依賴任務(wù)的情況,則根據(jù)貪心算法獲取最優(yōu)解。
每個(gè)機(jī)器人執(zhí)行任務(wù)時(shí)的q-length,即完成q個(gè)選擇的任務(wù)走的路徑的最短路徑,即為該機(jī)器人的定序。先判斷是否將所有機(jī)器人定序,如果是,則執(zhí)行步驟207,求得最優(yōu)解;如果否,則執(zhí)行步驟209。
209、在未定序的機(jī)器人中,逐個(gè)獲取機(jī)器人在未完成的任務(wù)節(jié)點(diǎn)中完成q項(xiàng)任務(wù)需要走的最短路徑;
如果步驟208中判斷出未將所有機(jī)器人定序,則在未定序的機(jī)器人中,逐個(gè)獲取機(jī)器人在未完成的任務(wù)節(jié)點(diǎn)中完成q項(xiàng)任務(wù)需要走的最短路徑。
210、當(dāng)將一個(gè)機(jī)器人定序時(shí),判斷是否有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行;
對(duì)于o(m!)空間的搜索,我們建議用a*或branch&bound求最優(yōu),或用基因算法和模擬退火算法,比較一下解的質(zhì)量和收斂速度。另外一個(gè)從性能上考慮還是基于greedy算法來(lái)定序。
當(dāng)將一個(gè)機(jī)器人定序時(shí),判斷是否有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行;具體的,在任務(wù)圖中計(jì)算每個(gè)機(jī)器人的q-length的最短路徑,然后,根據(jù)q-length的升序?qū)⑺械臋C(jī)器人排成一線,按此順序一個(gè)一個(gè)走q-length的最短路,每走完一個(gè)就檢查是否有任務(wù)被完成,沒(méi)有就繼續(xù),如果有將該任務(wù)去掉,在減少任務(wù)后的任務(wù)圖上重新計(jì)算剩余機(jī)器人的最短q-length,重復(fù)以上操作直到所有機(jī)器人定序完畢。圖10是greedy算法的一個(gè)例子,圖中三個(gè)機(jī)器人以a,b,c的順序沿選擇的最短路徑完成16個(gè)任務(wù),每個(gè)任務(wù)最多兩個(gè)機(jī)器人完成。特別注意的是b完成后,任務(wù)15的節(jié)點(diǎn)從圖中消去,盡管c完成任務(wù)12后,按原圖最短路勁也要完成15,但在新的減少任務(wù)后的任務(wù)圖中,它下一個(gè)任務(wù)節(jié)點(diǎn)是1??偟臋C(jī)器人移動(dòng)距離視為最優(yōu)解。
211、將該任務(wù)節(jié)點(diǎn)標(biāo)記為已完成;
當(dāng)任務(wù)圖中有任務(wù)已經(jīng)被p個(gè)機(jī)器人執(zhí)行時(shí),將該任務(wù)節(jié)點(diǎn)標(biāo)記為已完成。然后返回步驟208判斷是否將所有機(jī)器人定序,直至所有機(jī)器人定序。
至于如何在完全圖上求q-length最短路,可以基于廣度優(yōu)先搜索算法(breadth-first-search,bfs)來(lái)求解,具體的,針對(duì)一個(gè)機(jī)器人來(lái)說(shuō),每個(gè)機(jī)器人需要完成q項(xiàng)任務(wù),那么找到這個(gè)機(jī)器人下一個(gè)要完成的任務(wù)的位置是算法的目的。初始化后,先遍歷n個(gè)任務(wù),而機(jī)器人要完成其中的q個(gè)任務(wù),每一次i,k兩個(gè)點(diǎn)的最短路等于i到k-1的最短路加上k-1到k的最短路,遞歸之后能得到這個(gè)機(jī)器人完成q個(gè)任務(wù)的最短路徑,從而知道機(jī)器人下一個(gè)要走的任務(wù)結(jié)點(diǎn)。
下面是本實(shí)施例中例舉的算法具體的偽代碼:
由于是完全圖,每一次遞歸都考慮了所有的節(jié)點(diǎn)。
其中,實(shí)施圖2所描述的方法,將多機(jī)器人多任務(wù)的指派問(wèn)題抽象為最小投資問(wèn)題來(lái)解決,根據(jù)最小成本網(wǎng)絡(luò)流算法建模并求得最優(yōu)解;對(duì)于一般情況,即需要解決的問(wèn)題規(guī)模很大的情況下,通過(guò)一般的greedy算法來(lái)獲取最優(yōu)解。本實(shí)施例中提出的方法能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
實(shí)施例三
請(qǐng)參閱圖3,圖3是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法的流程示意圖。如圖3所示,該基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法可以包括以下步驟:
步驟301至步驟303同實(shí)施例一中步驟101至步驟103,步驟308至步驟311同實(shí)施例二中步驟208至步驟211,此處不做贅述。
304、獲取初始流;
獲取零流作為初始流,這個(gè)流的費(fèi)用為零,當(dāng)然是最小費(fèi)用的。
305、判斷是否能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得增流鏈為所有增流鏈中費(fèi)用最小;
判斷是否能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得增流鏈為所有增流鏈中費(fèi)用最小,如果是,則執(zhí)行步驟306,否則執(zhí)行步驟307。
306、將增流鏈作為新的初始流;
如果能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得增流鏈為所有增流鏈中費(fèi)用最小,則在增流鏈上增流,得出新流。返回步驟304,將這個(gè)流作為初始流看待,繼續(xù)尋找增流鏈增流。這樣迭代下去,直至找不出增流鏈。
307、求得最優(yōu)解;
當(dāng)不能再尋找條自源點(diǎn)至匯點(diǎn)的增流鏈,使得增流鏈為所有增流鏈中費(fèi)用最小時(shí),這時(shí)的流即為最小費(fèi)用最大流,即求得最優(yōu)解。
其中,實(shí)施圖3所描述的方法,將多機(jī)器人多任務(wù)的指派問(wèn)題抽象為最小投資問(wèn)題來(lái)解決,根據(jù)最小成本網(wǎng)絡(luò)流算法建模并求得最優(yōu)解;對(duì)于一般情況,即需要解決的問(wèn)題規(guī)模很大的情況下,通過(guò)一般的greedy算法來(lái)獲取最優(yōu)解。本實(shí)施例中提出的方法能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
實(shí)施例四
請(qǐng)參閱圖4,圖4是本發(fā)明實(shí)施例公開(kāi)的另一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置的邏輯結(jié)構(gòu)示意圖。如圖4所示,該基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置可以包括:
任務(wù)指派信息獲取模塊401,用于獲取任務(wù)指派信息,其中,任務(wù)指派信息包括m個(gè)機(jī)器人,n項(xiàng)任務(wù),每個(gè)任務(wù)至少需要p個(gè)機(jī)器人去完成,每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù);具體的,測(cè)度空間m上有一個(gè)點(diǎn)集,每?jī)蓚€(gè)點(diǎn)vi,vj之間定義了距離dij。在m中有n個(gè)不同的點(diǎn)上有任務(wù),m個(gè)點(diǎn)上有機(jī)器人。每項(xiàng)任務(wù)至少需要p個(gè)機(jī)器人去完成,但為了不讓每個(gè)機(jī)器人工作負(fù)載過(guò)大,要求每個(gè)機(jī)器人最多完成q項(xiàng)任務(wù)。機(jī)器人要參與完成任務(wù),必須移動(dòng)到現(xiàn)場(chǎng),在一個(gè)點(diǎn)完成任務(wù)后再移動(dòng)到下一個(gè)點(diǎn)(最多移動(dòng)q個(gè)點(diǎn))。要完成的任務(wù)沒(méi)有優(yōu)先級(jí)的區(qū)別。因此,每個(gè)機(jī)器人不但可以任意選擇自己要完成的任務(wù),而且可以任意選擇完成的順序和路徑。每個(gè)機(jī)器人完成自己的工作后依優(yōu)化的目標(biāo)不同可以返回起始點(diǎn)也可以不返回起點(diǎn),等待下一輪的工作。那么,優(yōu)化的問(wèn)題是:完成所有任務(wù)后,所有機(jī)器人移動(dòng)的總距離最短,可以抽象為最小投資問(wèn)題來(lái)解決。
判斷模塊402,用于判斷任務(wù)指派信息獲取模塊獲取的任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況;比如完成一個(gè)任務(wù)要進(jìn)行的投資,而不論前面的任務(wù)是如何完成的。圖8顯示的是滿足這樣條件的一個(gè)示例,圖中兩個(gè)機(jī)器人都要去完成位于點(diǎn)g的任務(wù),機(jī)器人1無(wú)論從哪里走,完成任務(wù)都要55單位的投資,類似地機(jī)器人2無(wú)論怎么走完成同樣的任務(wù)都要40單位的投資。
建模模塊403,用于當(dāng)判斷模塊判斷出機(jī)器人的移動(dòng)距離不依賴起點(diǎn)只依賴任務(wù),則根據(jù)最小成本網(wǎng)絡(luò)流算法建模;具體如何建模詳見(jiàn)實(shí)施例一的步驟103,此處不做贅述。
最優(yōu)解獲取模塊404,用于根據(jù)最小成本網(wǎng)絡(luò)流算法模型獲取最優(yōu)解;解決最小成本最大流問(wèn)題,一般有兩條途徑:一條途徑是先用最大流算法算出最大流,然后根據(jù)邊費(fèi)用,檢查是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少。只要能進(jìn)行調(diào)整,就進(jìn)行這樣的調(diào)整。調(diào)整后,得到一個(gè)新的最大流。然后,在這個(gè)新流的基礎(chǔ)上繼續(xù)檢查,調(diào)整。這樣迭代下去,直至不能再進(jìn)行調(diào)整,便得到最小費(fèi)用最大流。這一思路的特點(diǎn)是保持問(wèn)題的可行性,即始終保持最大流,向最優(yōu)推進(jìn)。另一條解決途徑和前面介紹的最大流算法思路相類似,一般首先給出零流作為初始流。這個(gè)流的費(fèi)用為零,當(dāng)然是最小費(fèi)用的。然后尋找一條源點(diǎn)至匯點(diǎn)的增流鏈,但要求這條增流鏈必須是所有增流鏈中費(fèi)用最小的一條。如果能找出增流鏈,則在增流鏈上增流,得出新流。將這個(gè)流作為初始流看待,繼續(xù)尋找增流鏈增流。這樣迭代下去,直至找不出增流鏈,這時(shí)的流即為最小費(fèi)用最大流。這一算法思路的特點(diǎn)是保持解的最優(yōu)性,即每次得到的新流都是費(fèi)用最小的流,而逐漸向可行解靠近,直至最大流時(shí)才是一個(gè)可行解。
作為一種可選的實(shí)施方式,在圖5所示的裝置中,最優(yōu)解獲取模塊包括:
最大流獲取單元4041,用于獲取當(dāng)前網(wǎng)絡(luò)最大流;
判斷單元4042,用于根據(jù)邊費(fèi)用判斷是否能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少;
邊流量調(diào)整單元4043,用于當(dāng)判斷模塊判斷出能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少時(shí),對(duì)所述邊流量進(jìn)行調(diào)整,獲取新的最大流;
最優(yōu)解獲取單元4044,當(dāng)判斷單元判斷出不能在流量平衡的前提下通過(guò)調(diào)整邊流量,使總費(fèi)用得以減少時(shí),當(dāng)前網(wǎng)絡(luò)最大流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解。
作為一種可選的實(shí)施方式,在圖6所示的裝置中,最優(yōu)解獲取模塊包括:
初始流獲取單元4045,用于獲取初始流,所述初始流為所有流鏈中費(fèi)用最?。?/p>
判斷單元4046,用于判斷是否能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最??;
增流鏈查找單元4047,用于當(dāng)判斷單元判斷出能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最小時(shí),則將所述增流鏈作為新的初始流繼續(xù)查找新的增流鏈,直至獲取最優(yōu)解;
最優(yōu)解獲取單元4048,當(dāng)判斷模塊判斷出不能尋找一條自源點(diǎn)至匯點(diǎn)的增流鏈,使得所述增流鏈為所有增流鏈中費(fèi)用最小時(shí),所述初始流和對(duì)應(yīng)的邊費(fèi)用即為最優(yōu)解。
作為一種可選的實(shí)施方式,在圖7所示的裝置中,最優(yōu)解獲取模塊還用于當(dāng)判斷模塊判斷出機(jī)器人的移動(dòng)距離不是不依賴起點(diǎn)只依賴任務(wù)的情況時(shí),根據(jù)貪心算法獲取最優(yōu)解;其中,最優(yōu)解獲取模塊包括:
定序單元4049,用于在未定序的機(jī)器人中,逐個(gè)獲取機(jī)器人在未完成的任務(wù)節(jié)點(diǎn)中完成q項(xiàng)任務(wù)需要走的最短路徑,所述最短路徑為對(duì)應(yīng)機(jī)器人的定序;
判斷單元40410,用于當(dāng)定序單元將一個(gè)機(jī)器人定序時(shí),判斷是否有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行;
標(biāo)記單元40411,用于當(dāng)判斷單元判斷出有任務(wù)節(jié)點(diǎn)已經(jīng)被p個(gè)機(jī)器人執(zhí)行時(shí),將該任務(wù)節(jié)點(diǎn)標(biāo)記為已完成;
最優(yōu)解獲取單元40412,用于當(dāng)定序模塊將所有機(jī)器人定序時(shí),得到最優(yōu)解。
本發(fā)明實(shí)施例中,任務(wù)指派信息獲取模塊獲取指派信息,然后判斷模塊判斷該任務(wù)指派信息中,機(jī)器人的移動(dòng)距離是否為不依賴起點(diǎn)只依賴任務(wù)的情況;當(dāng)機(jī)器人的移動(dòng)距離為不依賴起點(diǎn)只依賴任務(wù)的情況時(shí),建模模塊根據(jù)最小成本網(wǎng)絡(luò)流算法建模并由最優(yōu)解獲取模塊獲取最優(yōu)解;當(dāng)機(jī)器人的移動(dòng)距離不為不依賴起點(diǎn)只依賴任務(wù)的情況時(shí),最優(yōu)解獲取模塊根據(jù)貪心算法獲取最優(yōu)解。本實(shí)施例中提出的方法能通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
實(shí)施例五
請(qǐng)參閱圖11,圖11是本發(fā)明實(shí)施例公開(kāi)的一種用戶設(shè)備的結(jié)構(gòu)示意圖。其中,圖11所示的用戶設(shè)備包括圖4~圖7任意一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的裝置。實(shí)施圖11所示的用戶設(shè)備,能夠用計(jì)算機(jī)程序來(lái)替代手工計(jì)算,通過(guò)計(jì)算機(jī)程序來(lái)處理較大規(guī)模的指派問(wèn)題,并且對(duì)比o(m!)的時(shí)間復(fù)雜度來(lái)說(shuō),大大降低了時(shí)間復(fù)雜度。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)包括只讀存儲(chǔ)器(read-onlymemory,rom)、隨機(jī)存儲(chǔ)器(randomaccessmemory,ram)、可編程只讀存儲(chǔ)器(programmableread-onlymemory,prom)、可擦除可編程只讀存儲(chǔ)器(erasableprogrammablereadonlymemory,eprom)、一次可編程只讀存儲(chǔ)器(one-timeprogrammableread-onlymemory,otprom)、電子抹除式可復(fù)寫(xiě)只讀存儲(chǔ)器(electrically-erasableprogrammableread-onlymemory,eeprom)、只讀光盤(pán)(compactdiscread-onlymemory,cd-rom)或其他光盤(pán)存儲(chǔ)器、磁盤(pán)存儲(chǔ)器、磁帶存儲(chǔ)器、或者能夠用于攜帶或存儲(chǔ)數(shù)據(jù)的計(jì)算機(jī)可讀的任何其他介質(zhì)。
以上對(duì)本發(fā)明實(shí)施例公開(kāi)的一種基于多機(jī)器人多任務(wù)的指派問(wèn)題的方法及裝置、用戶設(shè)備進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。