Generaliserat resandeförsäljarproblem

Det generaliserade resandeförsäljarproblemet  är ett kombinatoriskt optimeringsproblem som är en generalisering av det välkända resandeförsäljarproblemet . De initiala data för problemet är en uppsättning hörn, en uppdelning av denna uppsättning i så kallade kluster, samt en matris av övergångskostnader från en vertex till en annan. Problemet är att hitta den kortaste stängda vägen som skulle besöka en vertex i varje kluster (det finns också en modifiering när vägen måste besöka minst en vertex i varje kluster).

Beroende på kostnadsmatrisens egenskaper kan problemet vara symmetriskt om matrisen är symmetrisk eller asymmetrisk på annat sätt. Ett av de mest övervägda specialfallen av ett symmetriskt problem är det euklidiska eller plana problemet, när varje vertex har sina egna koordinater i rymden, och kostnaden för att förflytta sig mellan hörn motsvarar det euklidiska avståndet mellan motsvarande punkter i rymden.

Liksom resandeförsäljarproblemet tillhör det generaliserade resandeförsäljarproblem klassen NP-hårda problem . För att bevisa det räcker det att överväga ett specialfall av problemet, när varje kluster innehåller exakt en vertex, och problemet reduceras till ett enkelt resande säljarproblem, som är NP-hårt.

Lösningsmetoder

Exakta metoder

Det finns två effektiva metoder för den exakta lösningen av det generaliserade resandeförsäljarproblemet: Brunch-and-Cut [1] , samt en metod för att reducera det generaliserade problemet till det vanliga resandeförsäljarproblemet, metoderna för att lösa som är väl studerade [2] .

År 2002 visades [3] att det generaliserade resandeförsäljarproblemet kan reduceras till ett vanligt resandeförsäljarproblem av samma dimension genom att ersätta viktmatrisen .

Heuristiska metoder

Enkla heuristiska metoder

De enklaste heuristiska metoderna för att lösa det generaliserade resandeförsäljarproblemet inkluderar den giriga algoritmen , som vid varje steg väljer kanten av lägsta kostnad från uppsättningen av kanter som inte bryter mot lösningens korrekthet, samt den mer effektiva Nearest Neighbor metod, som utgår från en godtycklig vertex och vid varje steg läggs till lösningen, den vertex som ligger närmast den senast läggs till. Det finns även andra heuristiker som är modifieringar av välkända heuristiker för vanliga resandeförsäljarproblem.

I synnerhet används ofta följande typer av lokal sökning :

  • 2-opt , som används flitigt i många kombinatoriska optimeringsproblem, reducerar till att ta bort två kanter från turen och infoga två nya kanter som inte bryter mot korrektheten av lösningen (i fallet med 2-opt, kanterna som ska infogas är unikt bestämda). En tur anses vara ett lokalt minimum om det inte finns några kanter i den vars utbyte skulle leda till en förbättring av lösningen. Sålunda är både grannskapets storlek och heuristikens komplexitet , där  är antalet kluster.
  • 3-opt liknar 2-opt, dock tas inte två, utan tre kanter bort på varje. I fallet med 3 alternativ finns det åtta icke-triviala sätt att infoga nya kanter för att återställa turens korrekthet. Ett av dessa sätt bevarar riktningen för vart och ett av turfragmenten, vilket är en viktig egenskap för asymmetriska problem. Storleken på grannskapet och komplexiteten i heuristiken är .
  • Det finns naturliga modifieringar av 2-opt och 3-opt algoritmer, som dessutom inkluderar sökningen efter optimala hörn inom föränderliga kluster.
  • "Infogning" är ett specialfall av 3-opt. Vid varje iteration tar algoritmen bort vertexet och försöker hitta en mer gynnsam position för den. Algoritmens komplexitet är . En modifiering används i stor utsträckning som beaktar infogningen inte bara av en avlägsen vertex, utan också av vilken annan vertex som helst i motsvarande kluster.
  • Klusteroptimering är en lokal sökning som är specifik för det generaliserade resandeförsäljarproblemet. Kärnan i algoritmen är att hitta den kortaste vägen genom en given sekvens av kluster. Med andra ord inkluderar algoritmens grannskap alla turer som inte skiljer sig från originalet med mer än valet av hörn inom vart och ett av klustren. Storleken på det undersökta området är:

var  är klustret numrerat . Genom att tillämpa sökningen efter den kortaste vägen i en speciellt konstruerad graf, hittar algoritmen ett lokalt minimum för , där . Klusteroptimering tillhör således klassen av lokala sökningar med en mycket stor stadsdel , det vill säga den utforskar en exponentiell grannskap i polynomtid.

Metaheuristics

Området för genetiska algoritmer, som har visat sin effektivitet för denna uppgift, har studerats väl. Det första arbetet inom detta område tillhör Snyder och Duskin [4] , senare viktiga resultat erhölls av Silbergoltz och Golden [5] , Gyuten och Karapetyan [6] .

Anteckningar

  1. M. Fischetti, J. J. Salazar-Gonzalez och P. Toth. En Branch-and-Cut-algoritm för det symmetriska generaliserade resandeförsäljarproblemet. Operations Research 45(3) (1997), 378-394.
  2. D. Ben-Arieh, G. Gutin, M. Penn, A. Yeo och A. Zverovitch. Transformationer av generaliserat ATSP till ATSP, Operations Research Letters 31 (2003), 357-365.
  3. 6. Arash Behzad, Mohammad Modarres (2002). En ny effektiv omvandling av generaliserat problem med resande säljare till problem med resande säljare
  4. LV Snyder och MS Daskin. En genetisk algoritm med slumpmässig nyckel för det generaliserade resandeförsäljarproblemet. European Journal of Operational Research 174 (2006), 38−53.
  5. J. Silberholz och B. Golden. The Generalized Traveling Salesman Problem: en ny genetisk algoritm. Extending the Horizons: Advances in Computing, Optimization, and Decision Technologies, 2007, 165-181.
  6. G. Gutin och D. Karapetyan. Gregory Gutin och Daniel Karapetyan. En memetisk algoritm för det allmänna problemet med resande säljare. Natural Computing 9(1), sidorna 47-60, Springer 2010.  (inte tillgänglig länk)