Bruk av tabusøk og critical event memory på set partitioning-problemet



Like dokumenter
Adaptivt lokalsøk for boolske optimeringsproblemer

Illustrasjon av regel 5.19 om sentralgrenseteoremet og litt om heltallskorreksjon (som i eksempel 5.18).

(iii) Når 5 er blitt trukket ut, er det tre igjen som kan blir trukket ut til den siste plassen, altså:

Simpleksmetoden. Initiell basistabell Fase I for å skaffe initiell, brukbar løsning. Fase II: Iterativ prosess for å finne optimal løsning Pivotering

Anvendelser. Kapittel 12. Minste kvadraters metode

Eksamen i emne SIB8005 TRAFIKKREGULERING GRUNNKURS

Sluttrapport. utprøvingen av

MA1301 Tallteori Høsten 2014

MoD233 - Geir Hasle - Leksjon 10 2

Fast valutakurs, selvstendig rentepolitikk og frie kapitalbevegelser er ikke forenlig på samme tid

Automatisk koplingspåsats Komfort Bruksanvisning

Studieprogramundersøkelsen 2013

Dynamisk programmering. Hvilke problemer? Overlappende delproblemer. Optimalitetsprinsippet

Appendiks 1: Organisering av Riksdagsdata i SPSS. Sannerstedt- og Sjölins data er klargjort for logitanalyse i SPSS filen på følgende måte:

Fleksibelt arbeidsliv. Befolkningsundersøkelse utført for Manpower September 2015

IT1105 Algoritmer og datastrukturer

Sparing gir mulighet for å forskyve forbruk over tid; spesielt kan ujevne inntekter transformeres til jevnere forbruk.

Dynamisk programmering. Hvilke problemer? Overlappende delproblemer. Optimalitetsprinsippet

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i <<< >>>.

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i << >>.

Løsningskisse for oppgaver til uke 15 ( april)

Alternerende rekker og absolutt konvergens

Notater. Bjørn Gabrielsen, Magnar Lillegård, Berit Otnes, Brith Sundby, Dag Abrahamsen, Pål Strand (Hdir)

Auksjoner og miljø: Privat informasjon og kollektive goder. Eirik Romstad Handelshøyskolen Norges miljø- og biovitenskapelige universitet

Makroøkonomi - B1. Innledning. Begrep. Mundells trilemma 1 går ut på følgende:

Seleksjon og uttak av alderspensjon fra Folketrygden

TMA4240/4245 Statistikk Eksamen august 2016

TMA4265 Stokastiske prosesser

EKSAMEN I FAG SIF5040 NUMERISKE METODER Tirsdag 15. mai 2001 Tid: 09:00 14:00

KVIKKSØLVEKSPONERING VED DENTALLABORATORIER. Nils Gundersen og Arve Lie HD 807/790814

Randi Eggen, SVV Torunn Moltumyr, SVV Terje Giæver. Notat_fartspåvirkn_landeveg_SINTEFrapp.doc PROSJEKTNR. DATO SAKSBEARBEIDER/FORFATTER ANTALL SIDER

Jobbskifteundersøkelsen Utarbeidet for Experis

Fleksibelt arbeidsliv. Befolkningsundersøkelse utført for Manpower September 2015

EKSAMEN ny og utsatt løsningsforslag

Korteste-vei problemet Nettverksflyt med øvre begrensninger Maksimum-flyt problemet Teorem: Maksimum-flyt Minimum-kutt

Magnetisk nivåregulering. Prosjektoppgave i faget TTK 4150 Ulineære systemer. Gruppe 4: Rune Haugom Pål-Jørgen Kyllesø Jon Kåre Solås Frode Efteland

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Oppgave 3, SØK400 våren 2002, v/d. Lund

må det justeres for i avkastningsberegningene. se nærmere nedenfor om valg av beregningsmetoder.

EKSAMEN Ny og utsatt Løsningsforslag

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i <<< >>>.

Litt om empirisk Markedsavgrensning i form av sjokkanalyse

Avvisning av klage på offentlig anskaffelse

Løsningsforslag ST2301 Øving 8

2007/30. Notater. Nina Hagesæther. Notater. Bruk av applikasjonen Struktur. Stabsavdeling/Seksjon for statistiske metoder og standarder

DEN NORSKE AKTUARFORENING

FAUSKE KOMMUNE INNSTILLING: Sammendrag: TIL KOMMNE. II Sak nr.: 097/12 I DRIFTSUTVALG REFERATSAKER I PERIODEN SAKSPAPIR. orientering.

Forelesning 4 og 5 MET3592 Økonometri ved David Kreiberg Vår 2011

Vekst i skjermet virksomhet: Er dette et problem? Trend mot større andel sysselsetting i skjermet

Forelesning nr.3 INF 1411 Elektroniske systemer

COLUMBUS. Lærerveiledning Norge og fylkene. ved Rolf Mikkelsen. Cappelen Damm

FOLKETELLINGEN 1. NOVEMBER Tellingsresultater Tilbakegående tall - Prognoser SARPSBORG 0102 STATISTISK SENTRALBYRÅ - OSLO

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Forelesning nr.3 INF 1411 Elektroniske systemer. Parallelle og parallell-serielle kretser Kirchhoffs strømlov

Statistikk og økonomi, våren 2017

TheraPro HR Kort veiledning. 1. Leveringsomfang

Innkalling til andelseiermøte

TMA4265 Stokastiske prosesser

Løsningsskisse til eksamen i TFY112 Elektromagnetisme,

De normalfordelte: x og sd for hver gruppe. De skjevfordelte og de ekstremt skjevfordelte: Median og kvartiler for hver gruppe.

Generell likevekt med skjermet og konkurranseutsatt sektor 1

ØVINGER 2017 Løsninger til oppgaver

Samfunnsøkonomi andre avdeling, mikroøkonomi, Diderik Lund, 18. mars 2002

Leica DISTO TM D410 The original laser distance meter

Oppgaven består av 9 delspørsmål som anbefales å veie like mye, Kommentarer og tallsvar er skrevet inn mellom <<, >>, Oppgave 1

SIF4012 og MNFFY103 høst 2002: Sammendrag uke 44 (Alonso&Finn )

Postadresse: Pb Dep Oslo 1. Kontoradresse: Gydas vei 8 - Tlf Bankgiro Postgiro

Kultur- og mediebruk blant personer med innvandrerbakgrunn Statistisk sentralbyrå Statistics Norway

Eksamen ECON 2200, Sensorveiledning Våren Deriver følgende funksjoner. Deriver med hensyn på begge argumenter i e) og f).

Bekjempelsen av PD en evaluering

Vekst av planteplankton - Skeletonema Costatum

Spinntur 2017 Rotasjonsbevegelse

STK1100 våren 2015 P A B P B A. Betinget sannsynlighet. Vi trenger en definisjon av betinget sannsynlighet! Eksemplet motiverer definisjonen:

Rapportere kraftsystemdata i Fosweb

Dårligere enn svenskene?

Fourieranalyse. Fourierrekker på reell form. Eksempel La. TMA4135 Matematikk 4D. En funksjon sies å ha periode p > 0 dersom

X ijk = µ+α i +β j +γ ij +ǫ ijk ; k = 1,2; j = 1,2,3; i = 1,2,3; i=1 γ ij = 3. i=1 α i = 3. j=1 β j = 3. j=1 γ ij = 0.

Arbeidpartiets stortingsgruppe, tilkn),ttet informasjons- og kommunikasjonsavdelingen. Trainee-perioden varer i tre måneder, så det er vel

STK desember 2007

Introduksjon Online Rapport Din trinn for trinn-guide til den nye Online Rapporten (OLR) Online Rapport

Løsningsforslag øving 10 TMA4110 høsten 2018

i kjemiske forbindelser 5. Hydrogen har oksidasjonstall Oksygen har oksidsjonstall -2

Statens vegvesen. Vegpakke Salten fase 1 - Nye takst- og rabattordninger. Utvidet garanti for bompengeselskapets lån.

Norske CO 2 -avgifter - differensiert eller uniform skatt?

Oppvarming og innetemperaturer i norske barnefamilier

C(s) + 2 H 2 (g) CH 4 (g) f H m = -74,85 kj/mol ( angir standardtilstand, m angir molar størrelse)

Eksperter i Team Landsby 27, gruppe 3 Stein En mangelvare? Prosjektrapport, Eksperter i Team Landsby 27, Gruppe 3 Stein- en mangelvare?

Oppgaver. Multiple regresjon. Forelesning 3 MET3592 Økonometri ved David Kreiberg Vår 2011

Analyse av strukturerte spareprodukt

Alle deloppgaver teller likt i vurderingen av besvarelsen.

\ ;' STIKKORD: FILTER~ VEIEFEIL YRKESHYGIENISK INSTITUTT REGISTRERI~G AV FEILKILDER AVDELING: TEKNISK AVDELING RØNNAUG BRUUN HD 839/80820

Er verditaksten til å stole på?

Eksamensoppgave i SØK2900 Empirisk metode

DET KONGELIGE FISKERI- OG KYSTDEPARTEMENT. prisbestemmelsen

NÆRINGSSTRUKTUR OG INTERNASJONAL HANDEL

Sorterings- Algoritmer

ECON 2915 forelesning 3. Malthus teori. Befolkningsvekst. Solow-modellen. Malthus teori. Befolkningsvekst i. Solowmodellen. Fredag 6.

TMA4300 Mod. stat. metoder

Balanserte søketrær. AVL-trær. AVL-trær. AVL-trær høyde AVL AVL. AVL-trær (Adelson-Velskii og Landis, 1962) Splay-trær (Sleator og Tarjan, 1985)

Forelesning nr.3 INF 1410

Transkript:

Bruk av tabusøk og crtcal event memory på set parttonng-problemet Chrstan Magnus Berg Insttutt for Informatkk, Unverstetet Bergen chrsta@.ub.no Arne Løkketangen Insttutt for Informatkk, Høgskolen Molde arne.lokketangen@hmolde.no Overskt Ideer fra en heurstkk skrevet av Glover og Kochenberger for bruk på 0-1 ryggsekk-problemet forsøkes tlpasset og brukt på set parttonng-problemet. Denne heurstkken var basert på tdlgere arbed med tabusøk og surrogate constrants. Den ntroduserte crtcal event memory, og benyttet en nteressant oscllerng mellom lovlge og ulovlge løsnnger. Denne er kke nødvendgvs helt overførbar tl set parttonng-problemet, men tankegangen kan lett tlpasses de beslektede problemene set packng og set coverng. Set parttonng-problemet forsøkes løst med en spesaltlpasset utgave av denne heurstkken. 1. Introduksjon Et av flyselskapenes største problemer er planleggng av mannskapsdspossjoner. Reglene for benyttelse av flymannskap er strenge. Flyselskapene er pålagt grenser for hvor mange tmer om dagen et mannskap kan være luften, hvor mange tmer et mannskap kan være borte fra sn base før de må ha hotellovernattng, etc. Mannskap utgjør også den nest største utgften tl et flyselskap, etter drvstoff (Hoffman og Padberg, 1993). Set parttonng-problemet kan brukes tl å fnne det bllgste oppsettet for bruk av mannskap på et sett med flygnnger, og det å fnne gode løsnnger av dette problemet kan dermed nnebære enorme økonomske besparelser. Dette gjøres ved at man først setter opp potenselle skft med beregnet kostnad. I dette oppsettet streber man etter at hvert mannskap returnerer tl utgangspunktet ved endt arbedsdag. Som man ser kan antallet mulge skft bl temmelg stort med kun et lte antall flyruter som skal gjennomføres. Det blr derfor en umulg oppgave å fnne den bllgste skftplanen manuelt, eller ved enumerasjon av de forskjellge kombnasjonene som gjør at hver flygnng dekkes med nøyaktg ett mannskap. I mange tlfeller vl det være vanskelg det hele tatt å fnne en slk kombnasjon. Derfor trenger v effektve heurstkker tl å løse dette problemet. I mange tlfeller skjer det også forandrnger planene som følge av forsnkelser, kansellernger og/eller ekstraflygnnger. Da kan det være nyttg å ha alternatve skftplaner. Man er altså kke nødvendgvs bare nteressert de optmale løsnngene, men også andre gode løsnnger.

2. Set parttonng problemet Set parttonng-problemet, eller mengdepartsjonerngsproblemet, går ut på å fnne en rmelgst mulg partsjon av en mengde utfra et gtt sett med delmengder. Problemet kan formuleres som følger: mn a j x c x x {0,1} = 1, j (1) (2) Der c er kostnaden tl delmengde, x er 1 hvs delmengde er med løsnngen og 0 ellers, og a j spesfserer hvorvdt delmengde dekker element j mengden, og vl således være enten 0 eller 1. Problemet er altså å velge ut et sett av delmengder som er slk at de tlsammen nøyaktg dekker hele mengden. Samtdg skal v fnne den bllgste av alle slke sett med delmengder. Dsse delmengdene er matrsen A å fnne som kolonner, og resten av artkkelen vl derfor veksle mellom å referere tl dsse som kolonner og delmenger. 2.1 Anvendelser Som nevnt ntroduksjonen, kan optmal oppdragsfordelng for flymannskap kan fnnes ved å løse dette problemet. De forskjellge tlgjengelge delmengdene vl da representere hvlke flyruter et bestemt mannskap kan dekke. Målet er å fnne en ruteplan som vl dekke alle flyturer nøyaktg en gang (et mannskap per tur), og koste mnst mulg penger. a j = 1 betyr at mannskap kan dekke flytur nr j. En annen anvendelse kan være plassernger av brannstasjoner eller sykehus en by. Hver delmengde vl da ang hvlke områder av byen en brannstasjon med en gtt plasserng kan dekke. a j er enten 1 eller 0. Er den 1 betyr det at delmengde nr, dvs at den potenselle brannstasjon nr, dekker bydel nr j. Av de potenselle brannstasjonene vl det være flere som dekker samme område. Hvs man velger alle mulge plassernger, vl hver bydel ha en betydelg overdeknng av brannstasjoner. Dette er kanskje fnt, men dyrt og unødvendg. Man vl derfor søke å velge ut stasjoner slk at hver bydel er dekt nøyaktg en brannstasjon, samtdg som kostnadene holdes lavest mulg. Dette vl kke nødvendgvs nnebære færrest mulg brannstasjoner, sden enkelte tomtealternatver vl g høyere nvesterngskostnader enn andre. 2.2 Relaterte problem I enkelte tlfeller vl det være umulg å fnne en løsnng som overholder alle sdekravene (1). I de to nevnte eksemplene, vl man da søke å fnne en bllgst mulg løsnng med

overdeknng, det vl s at en eller flere flyturer får mer enn ett mannskap, og mer enn en brannstasjon dekker en gtt bydel. Problemet formulert med tllatelse tl slk overdeknng kalles set coverng. En annen varant, der underdeknng tllates, kalles set packng. I dsse problemene vl sdekravene (1) byttes ut henholdsvs med sdekravene (3) og (4). a a j j x x 1, j 1, j (3) (4) 3. Ltt bakgrunn om tabusøk og crtcal event memory 3.1 Tabusøk Tabusøk er en strateg for søk blant løsnnger av et optmerngsproblem som er ment å forhndre følgende problem med enkle søkerutner. En generell lokal søkerutne vl tl enhver td velge den beste løsnngen stt nabolag, der nabolaget er defnert som et sett med nærlggende løsnnger. Når denne algortmen kommer tl et lokalt optmum, vl den velge den beste av løsnngene nabolaget tl optmumet, selv om denne er dårlgere. I neste trekk rskerer v da at den beste løsnngen nabolaget er det lokale optmumet. Søkerutnen vl da velge denne, for så å velge den beste av løsnngene nabolaget tl det lokale optmumet gjen. Her blr søkerutnen stående og gå mellom dsse to løsnngene. Tabusøk løser dette problemet ved at nylg besøkte løsnnger blr tabu, eller forbudte, for en gtt perode. Det vl s at søket kke umddelbart får lov tl å bevege seg tlbake tl det lokalet optmumet, men må velge en annen løsnng stedet. Dermed vl søket være stand tl å bevege seg bort fra lokale optma. Av praktske årsaker vl som oftest tabusøket fungere slk at det er en varabel eller kolonne som er tabu, og kke hele løsnngen. Umddelbart ser en at dette vl kunne medføre at søket avvser en løsnng som er bedre enn den nkuberende beste løsnng, ford delmengden som må endre sn status kke kan gjøre nettopp det på grunn av taburestrksjonen. For å unngå dette, defnerer man et asprasjonskrterum. Dette er et krav man stller for at taburestrksjonen skal kunne omgås. Det kan for eksempel være at omgåelse av tabukrteret gr en ny beste løsnng. (Glover og Løkketangen, 1998. Wolsey, 1998) 3.2 Crtcal event memory Tabusøk søker tl enhver td det beste tllatte trekket og gjennomfører det. Dette gjør at tabusøk kan bl svært konsentrert om et enkelt område. Det fnnes flere teknkker for å bøte på dette, blant annet probablstsk tabusøk, som oppfordrer tl sprednng søkeområdet ved å nnføre tlfeldgheter for hvorvdt et trekk skal velges. Sprednng søket er målet tl crtcal event memory også. Som navnet antyder er dette basert rundt såkalte crtcal events, som kan være at en løsnng er funnet eller et bytte fra

en konstruktv tl en destruktv fase et oscllerende søk. Når crtcal events nntreffer, gjennomføres en avstraffelse av de delmengdene som er med den krtske løsnngen. Delmengdene blr da straffet etter hvor ofte de har vært å fnne slke løsnnger, de blr med andre ord straffet etter frekvens. Delmengder som ofte er slke løsnnger vl etter hvert bl mndre attraktve, og sannsynlgheten er da at søket vl dree seg retnnger der dsse kke er med lke ofte. Ved også å defnere overgangen fra konstruktv tl destruktv fase som en krtsk hendelse, kan man gjøre crtcal event memory effektv tl å spre søket, selv når man kke ennå har funnet noen lovlge løsnnger på problemet. 4. Løsnngsstrateg 1 ntelle løsnnger Lokalsøkheurstkker fnner som regel en ntell løsnng, som den deretter forsøker å forbedre ved å søke nabolaget tl denne løsnngen. Denne heurstkken har tre forskjellge strateger for å fnne slke ntelle løsnnger, nemlg tlfeldg, konstruktv eller ngen, det vl s at ngen kolonner er valgt ut ntelt. 4.1 Tlfeldg ntell løsnng Strategen for å fnne en tlfeldg ntell løsnng er å fnne hvor mange kolonner man gjennomsntt må velge for å få en set parttonng-løsng. Hvs det er a rader som skal dekkes, og hver kolonne gjennomsntt dekker b rader, så trenger v gjennomsntt c = a / b kolonner for å dekke alle radene. Den tlfeldge heurstkken velger derfor opptl c kolonner tlfeldg, mens den hele tden passer på å kke nnføre overdeknng. Det fnnes ngen garant for at dette gr en parttonng-løsnng, og det er dermed kke skkert at dette gr et godt utgangspunkt for lokalsøket. 4.2 Konstruktv ntell løsnng Ved den konstruktve strategen velger man først en kolonne. Hvordan denne raden skal velges, kan varere; man kan for eksempel velge den med best kostnad/deknng-rato, eller en tlfeldg kolonne. Tlfeldg kolonne er mest aktuelt ved det første valget av kolonne, slk at heurstkken kan g forskjellge løsnnger tl bruk for eksempel ved restart av søket. Etter at valget er gjort, slettes alle rader kolonnen dekker, samt alle andre kolonner som dekker noen av de slettede radene. Dsse kolonnene vl uansett kke være å fnne noen løsnng med den valgte kolonnen. Dette gjentas tl det kke er flere kolonner gjen å velge mellom. Da har man forhåpentlgvs fått en god løsnng på set parttonng-problemet. Det er ngen garant, men man har hvert fall en packng-løsnng. 4.3 Sammenlgnng Den konstruktve løsnngsmetoden ser ut tl å g søket et noe bedre utgangspunkt enn den tlfeldge, og med at den gr noe bedre løsnnger. Det ser kke ut tl å være noen nevneverdg forskjell på å bruke en tlfeldg løsnng eller ngen løsnng som utgangspunkt for søket.

4.4 Restart En strateg som benyttes er å starte lokalsøket på nytt etter en gtt mengde terasjoner uten forbedrng. Da bygges en ny løsnng opp fra bunnen, helst ved hjelp av den konstruktve heurstkken, og lokalsøket startes på nytt derfra. Dette gr heurstkken blant annet mulghet tl å rømme tl et annet område løsnngsmengden dersom det skulle bl for konsentrert om et lte område som kke ser ut tl å være særlg fruktbart. 5. Løsnngsstrateg 2 - lokalsøk Hvs man angrper problemet som et set packng problem, vl man kunne bevege seg fra en løsnng tl en annen ved hjelp av et sett add- og drop-operasjoner. Ved å ta en løsnng, kan man legge tl noen nye delmengder. Man vl da bevege seg fra å ha en gyldg set packngløsnng tl en gyldg set coverng-løsnng. Ved å fjerne noen av de valgte delmengdene, kan man så bevege seg tlbake tl en set packng-løsnng. V bruker dette som defnsjon på nabolaget tl en løsnng. Samtdg skal en huske at målet er å fnne løsnnger på set parttonng, og man må da prøve speselt å skte seg nn på dsse løsnngene som vl fnnes grensen mellom løsnngene tl coverng og packng. Det er heller kke gtt at om man har en set parttonng-løsnng, så vl en slk add/drop-sekvens føre frem tl en annen set parttonng-løsnng. Fg 1. Vsualserng av bevegelsen gjennom forskjellge løsnnger en terasjon. Over den horsontale lnjen har v set cover-løsnnger, under set packng-løsnnger, og på lnjen set partton-løsnnger. Toppen og bunnen markerer overganger mellom add- og dropfaser.

Bevegelse mellom lovlge løsnnger vl altså nnebære en mdlertdg bevegelse nn et ulovlg område, før man fnner en ny lovlg løsnng. Dette gjøres to faser. 1. Konstruktv fase: Man legger tl nye delmengder løsnngen, dermed vl man bevege seg nn på set coverng-løsnnger. 2. Destruktv fase: Man fjerner overflødge delmengder, slk at man kommer tlbake tl en ny set packng-løsnng. Inne dsse to fasene håper man å treffe løsnnger på set partton-problemet. Derfor er de to fasene delt nn to delfaser. Den første delfasen går ut på taktsk utvelgelse av delmengder slk at man skter seg nn på en set parttonng-løsnng. Når denne er funnet, eller man gr opp, går man over tl delfase to, der man legger tl de mest lovende eller fjerner de dårlgste delmengdene, uten å bekymre seg om over- eller underdeknng. Utfra dette ser en at enhver konstruktv fase starter med en set packng-løsnng og ender en set cover-løsnng, mens enhver destruktv fase starter med en set cover-løsnng og ender en set packng-løsnng. Etter den destruktve fasen går man over tl en ny konstruktv fase, og en konstruktv fase etterfulgt av en destruktv fase vl dermed utgjøre en terasjon. Hvlke delmengder som velges for å legges tl eller fjernes, bestemmes utfra en rekke krterer. 5.1 Surrogate constrants Surrogate constrants (Glover og Løkketangen, 1997) er det vktgste krteret for utvelgelse av kolonner. Som surrogate constrant velges delmengdenes kostnad/antall-rato. Det høres fornuftg ut å rangere delmengdene etter kostnad per dekt element. I konstruktve faser foretrekkes derfor delmengder som har en lav kostnad/antall-rato, mens delmengder men en høy kostnad per dekt element forsøkes fjernet destruktve faser. 5.2 Tabu Kolonner som nettopp har fått sn status (med/kke med) endret, får kke umddelbart endre sn status gjen. Dette medfører at en terasjon kke nnebærer opprettholdelse av status quo. Samme løsnng vl kke bl reprodusert kun en terasjon etter at den sst var aktv. Dette vl gjøre at man unngår å srkle rundt lokale optma. Det ekspermenteres med forskjellge tabustrateger. Under forsøkene har det vst seg at å sklle mellom tabu for kolonner som kke er med en løsnng, et såkalt add-tabu, med kolonner som kke kan legges tl, og tabu for kolonner løsnng, drop-tabu, med kolonner som kke kan fjernes, kke fungerer speselt godt. Egentlg følger dette ganske enkelt av at drop-tabuet setter en mnmumsbegrensnng på antall kolonner en løsnng, og at løsnnger med færre kolonner enn størrelsen på droptabu tenure dermed vl være vanskelge å fnne.

Det vrker dog å være mnmale forskjeller på å ha ett generelt tabu, alle kolonner som har byttet status det sste er tabu, eller å bare bruke add-tabuet. Tabumekansmen seg selv nnebærer at man kan unngå å legge tl eller trekke fra en kolonne som vlle gtt den optmale, eller hvert fall en ny beste, løsnng. Dette er det selvsagt ønskelg å unngå, og v bruker derfor som asprasjonskrterum at tabu gnoreres dersom kolonnen gr en ny beste løsnng. 5.3 Probablstsk valg av trekk Det ekspermenteres også med probablstsk tabusøk. Denne såkalte probablsmen har rett nok lte med selve tabumekansmen å gjøre, men vser seg å g gode resultatforbedrnger. Det hele går ut på at det gs en sannsynlghet for at den tlsynelatende beste delmengden basert på surrogate constrants, velges. Hvs kke den beste delmengden da blr valgt, velges neste med samme sannsynlghet, osv. Dette er motvert utfra at det slett kke alltd er slk at de delmengdene som har den beste kostnaden per element er med den optmale løsnngen, og denne taktkken sørger for at det er gode mulgheter for å få andre delmengder nn løsnngen. Det er vst at probablstsk tabusøk er garantert å fnne optmal løsnng, gtt at søket får gå lenge nok (Løkketangen og Glover, 1996). Når dette har vært testet, ser det ut tl at å sette sjansen for å akseptere beste delmengde tl 33% gr noe bedre resultater enn 67%, tl gjengjeld ser sstnevnte ut tl å konsentrere søket raskere, slk at man raskere kommer frem tl de gode løsnngene. Forskjellen mellom de to ser ut tl å være nærmest ubetydelg. 33% sjanse for å velge beste delmengde høres kanskje ut tl å g store tlfeldgheter søket, men dette nnebærer vrkelgheten at det er crka 70% sjanse for å velge å velge en av de tre beste delmengdene. 5.4 Crtcal event memory Delmengder som stadg er med løsnnger, vl kke nødvendgvs være med den optmale løsnngen. En mekansme for å bl kvtt slke delmengder er bruk av crtcal event memory. Hver gang en delmengde er med en løsnng, blr denne tldelt en lten straff ved at dens surrogate constrant svekkes, slk at det er større mulghet for at nettopp denne delmengden blr oversett ved neste korsve. Delmengder som ofte er med løsnnger, vl selvsagt være oftere utsatt for dette enn andre. Denne strategen har vst seg å g meget gode resultater nnen styrng av søk. Straffen blr satt på bakgrunn av delmengdens frekvens løsnnger, og forskjellge formler for å beregne straffen har vært utprøvd. Den som gr best resultater ser ut tl å være den utledet av Glover og Kochenberger (Glover og Kochenberger 1996) tl deres tlsvarende heurstkk for det flerdmensjonale 0-1 ryggsekk-problemet. TABU_F(j) * PEN_F = TABU_F(j) * r*/s PEN_F er straffen en delmengde tldeles for å være med en krtsk løsnng. Straffen beregnes på bakgrunn av delmengdens frekvens slke løsnnger. r* er den største r j for

alle delmengder j, der r j er en rato beregnet for denne delmengden, vårt tlfelle kostnad delt på antall dekte elementer, altså sammenfallende med surrogate constrantet som benyttes for rangerng av delmengdene. s er produktet av antall terasjoner og en stor, postv konstant C. TABU_F(j) er delmengde j sn frekvens krtske løsnnger. Grunnen tl å ta med en slk konstant, er å kunne avvee straffen. Den skal kke være for stor, for v vl kke revolusjonere rangerngen av delmengdene, men samtdg må den være stor nok tl å ha den ønskede effekt. Dette oppnås bra for det flerdmensjonale 0-1 ryggsekk-problemet med C=100.000, og dette tallet ser ut tl å fungere godt også for set partton-problemet. Lkevel testes andre verder for C, og det kan se ut som mange av set parttonng-problemene løses bedre ved en noe lavere C. Andre defnsjoner av avstraffelse, og da speselt av PEN_F testes også ut. Blant annet kan nevnes at varanten f* r*/s, der f* = max (TABU_F(j)) gr omtrent lke gode resultater som Glover og Kochenbergers metode. Ved bruk av Glover og Kochenberger ser en mdlertd ut tl å komme frem tl de gode løsnngene en god del raskere enn ved denne varanten for en del problemer for C=100.000. 5.5 Add/drop syklus - oscllerng Problemene har bltt testet med en meget enkelt oscllerng for hvor mange delmengder som skal legges tl eller fjernes andre del av add- og drop-fasene, det vl s etter at man har passert lnjen der set partton-løsnngene lgger. Denne oscllerngen øker antallet som legges tl eller fjernes med 1 for hver terasjon nntl en maksmumsgrense er nådd. Deretter reduseres antallet med 1 nntl en mnmumsgrense er nådd. Det kan være forskjellge mnmums- og maksmumsgrenser for add og drop. Glover og Kochenberger beskrver en noe mer avansert oscllerng. I deres versjon er antall delmengder som skal legges tl eller fjernes lagret en varabel span. Denne er fast for et gtt antall terasjoner og endres deretter systematsk. Tl å begynne med er span=1, og to parametre, p1 og p2, har gtte verder, og et flagg vser at span øker. Beregnngene av span gjøres overgangen tl andre del av add- og dropfasene som følger: Span øker: Span avtar: Hvs span er mellom 1 og p1, nklusve: Tllat p2 span terasjoner og øk deretter span med 1. Hvs span er mellom p1 + 1 og p2, nklusve: Tllat p2 terasjoner og øk deretter span med 1. Når span blr større enn p2, sett den tlbake tl p2 og sett flagget tl å vse at span avtar. Hvs span er mellom p2 og p1 + 1, nklusve: Tllatt p2 terasjoner og reduser så span med 1. Hvs span er mellom p1 og 1, nklusve: Tllatt p2 span terasjoner og reduser så span med 1. Når span blr 0, sett den tl 1, og sett flagget tl å vse at span øker.

Denne formen for oscllerng har vst seg å brnge søket nn på mer nteressante områder og dermed bedre løsnnger, med enkelte verder for p1 og p2. En ser umddelbart at man på denne måten først konsentrerer seg om et relatvt avgrenset område, før man går over tl å spre søket mer en perode for så å gå tlbake tl å søke nøyere gjennom det nye området. Den enkle oscllerngen fjerner seg lettere fra områder som kan nneholde nteressante løsnnger, da den setter av td tl å søke grundg gjennom dem. 6. Vdere testng 6.1 Preprosesserng Det er fremdeles et par teknkker som skal testes for å se hvordan de påvrker heurstkken. En av de man har størst forhåpnnger tl, er preprosesserng av problemene, der redundante rader og kolonner fjernes. Blant annet fnnes noen av testtlfellene kolonner som er dentske, men med forskjellg kostnad. Menngen er å fjerne de dyreste av dsse, og se hvordan dettte påvrker søket. Det er lten tvl om at av slke delmengder, så er det en vss fare for å velge en dårlgere, speselt ved benyttelse av probablstsk valg av trekk. Beasley og Chu brukte også preprosesserng av dsse problemene sn genetske heurstkk (Beasley og Chu, 1998). De vste at ved bruk av fem regler for reduksjon av problemene kunne man redusere noen av dem ganske dramatsk. Blant andre kan nevnes problemet us01 som ble redusert fra 1 053 137 kolonner og 145 rader tl 351 018 kolonner og 86 rader ved bruk av fem regler. Mye av årsaken tl dsse gode resultatene, lgger at de er hentet fra den vrkelge verden. Tlfeldg genererte problemer vl mest sannsynlg kke ha så stor grad av redundante kolonner og rader. I følgende avsntt er β x mengden rader dekt av kolonne x den tdlgere nevnte matrsen A. α x mengden kolonner dekt av rad x matrsen A. c x kostnaden forbundet med å velge kolonne x løsnngen. I mengden av rader. J mengden av kolonner. Det fem reduksjonsreglene tl Beasley og Chu er: Hvs β j = β k for et par (j, k) J, j k og c k c j, slett kolonne k, ford denne er et mnst lke dyrt duplkat av kolonne j. Hvs α = 1, I, så må kolonne j α være den optmale løsnngen. Slett j og alle rader k β j, samt alle kolonnene α k, k β j.

Hvs α α k for et par (j, k) I, k, så slett alle kolonner j (α k - α ) og rad k. Denne reduksjonen kommer av at alle kolonner som dekker rad k også dekker rad. Det betyr at ngen kolonner som dekker rad k, men kke rad, kan være med noen løsnng på problemet, og dsse kolonnene, samt rad k, kan dermed fjernes. Hvs α (α α k ) = α k (α α k ) = 1, k,, k I, så lar v kolonne j = α (α α k ) og kolonne p = α k (α α k ). Da vl p og k være lke bortsett fra at de tllegg har en unk kolonne hver, nemlg j og p. 1. Hvs β j β p =, kan kolonnene j og p slås sammen tl én kolonne med kostnaden c j + c p, sden de kke dekker noen felles rader. Rad k kan slettes, da den etter dette vl være lk rad. 2. Hvs β j β p, sletter v kolonnene j og p, da valget av en av dsse vl gjøre den andre uvalgbar, og man kan dermed kke få dekket den av radene og k som den valgte kolonnen kke dekker. Ingen av dsse kan dermed være med noen løsnng. V sletter også rad k, ford den etter dette vl være lk rad. For hver j J, anta at x j = 1. Da må x k = 0, k T = ({ βj α } j). Det vl s at hvs v velger kolonne j, så kan v kke velge noen av kolonnene som dekker noen av de samme radene som j. Hvs U = { α T, I - β j } så er problemet uløsbart hvs x j = 1 ford rad U kke kan dekkes. Derfor må x j = 0, og v har dermed kke bruk for denne kolonnen. U er mengen rader som kke dekkes av j, og som heller kke dekkes av noen kolonner utenom mengden T. 6.2 Oscllerng på tabu tenure For å hndre at søket begynner å srkulere samme område ved å tl stadghet fnne gjen de samme løsnngene, skal man undersøke hvlken påvrknng det har for søket at størrelsen på tabu tenure varerer underves. Forhåpentlgvs vl dette kunne hndre noe srkulerng og g enda bedre løsnnger på enkelte av problemene. 7. Resultater og testtlfeller Heurstkken er bltt testet på set parttonng-problemer hentet fra J. Beasleys OR-lbrary. Dette bbloteket har 55 set parttonng-problemer som er hentet fra luftfartsndustren. Størrelsen på problemene varerer fra 197 kolonner og 17 rader tl 1 053 137 kolonner og 145 rader. Andelen enere matrsen A varerer fra 0.99% tl 39.27%. 54 av problemene er httl bltt testet. Med de httl beste settngene er 9 løst tl optmaltet, 10 løst med mndre enn 5% overskrdelse av optmalverd, ytterlgere 4 løst med mndre enn 10% overskrdelse, dessuten 20 tl løst med mer enn 10% overskrdelse. 11 problemer ble kke løst med dsse settngene. Tlsammen er 12 problemer løst tl optmaltet. Man håper fremdeles å forbedre dsse tallene, speselt ved også å løse preprosesserte utgaver av problemene.

Referanser Beasley, J. E.: OR-lbrary : http://www.ms.c.ac.uk/nfo.html Chu, P. C. og Beasley, J. E.: Constrant Handlng n Genetc Algorthms: The Set Parttonng Problem, Journal of Heurstcs, vol 4, no 4, Dec 1998, sdene 323-357 Glover, Fred og Kochenberger, Gary A: Crtcal Event Tabu Search for Multdmensonal Knapsack Problems, I.H. Osman J.P. Kelly, red, Metaheurstcs: The Theory and Applcatons, sdene 407-427. Kluwer Academc Publshers, 1996 Hoffman, Karla L. og Padberg, Manfred: Solvng Arlne Crew Schedulng Problems by Branch-and-Cut, Management Scence, vol 39, no 6, jun 1993, sdene 657-682 Løkketangen, Arne og Glover, Fred: Probablstc Move Selecton n Tabu Search for Zero-One Mxed Integer Programmng Problems, Metaheurstcs: Theory and Applcatons, Kluwer, 1996 Løkketangen, Arne og Glover, Fred: Surrogate Constrant Analyss New Heurstcs and Learnng Schemes for Satsfablty Problems, DIMACS, vol 35, 1997, sdene 537-571 Løkketangen, Arne og Glover, Fred: Solvng zero-one mxed nteger programmng problems usng tabu search, European Journal of Operatonal Research, vol 106, 1998, sdene 624-658 Wolsey, Laurence A.: Integer Programmng, Wley-Interscence, 1998