Att ta sig från punkt A till punkt B. En litteraturstudie om autonoma farkoster. Mateo Herrera Velasquez
|
|
- Anna-Karin Lundgren
- för 8 år sedan
- Visningar:
Transkript
1 Att ta sig från punkt A till punkt B. En litteraturstudie om autonoma farkoster. Mateo Herrera Velasquez
2 Innehållsförteckning 1. INLEDNING HUR DET FUNDERAR A*-HYBRID HEURISTIKER PROBLEM Optimering Termer och funktionalitet EN STRUKTURERAD VÄRLD DISKUSSION AVSLUTNING LITTERATURFÖRTECKNING... 12
3 1. Inledning. Det är naturligt för allmänhet att på en daglig basis ta sig från punkt A till punkt B, det kan vara att ta sig från hemmet till sin arbetsplats eller studieplats. Detta kan göras på många olika sätt. Det finns cyklar, kollektivtrafik eller motordrivna fordon. Att äga en bil är i vissa länder inte så speciellt märkvärt och dessa används oftast till att ta sig fram punkt A till punkt B. Det är därför detta arbete skall handla om hur en autonom bil tar sig fram med hjälp av en A*- hybrid-sökmetod. Detta sker i okända semistrukturerade miljöer. Mestadels av litteraturstudien bygger på arbete från Dmitri Dolgov, Sebastian Thrun, Michael Montemerlo och James Diebel (2010). Fordonet: Det autonoma fordonet som användes var en bil försedd med ett antal laseravståndsmätare, där den viktigaste är 3D LIDAR (Velodyne) och ett positionsuppskattning system med en hög noggrannhet även kallas Applanix. Bilen kommer mestadels köra inom det som är okända miljöer men även semistrukturerade miljöer. Figur 1. Bilen Junior och dess mätutrustning. 3
4 2. Hur det funderar. Hela processen är uppdelad i två större faser, där den första fasen använder sig av sökmetod och heuristiker för att få fram kinematiskt möjliga vägar till målet. Den andra fasen använder sig av en numerisk optimering för att förbättra den möjliga lösningen. Detta kommer mestadels förklaras utifrån en ostrukturerad kör miljö men även kort om vad som gäller vid mer strukturerade miljöer. Den metod som kommer att förklaras bygger på en vanlig sökmetod, nämligen A*. En viktig aspekt på sökning är att hitta den bäst lämpliga vägen till mål-stadie. Ibland hittas en och ibland inte. Detta skall också försöka vara så billigt som möjligt för att inte slösa resurser eller tid. För att en algoritm, skall vara antagbar skall den leda till det önskade mål-stadiet och vara optimal. För att algoritmen då ska vara så effektiv som möjligt skall den expandera endast de noder som leder till att målet uppnås och målnoden hittas. För att den då skall veta hur den ska välja de noder att expanderas finns en utvärderande funktion som tillför den informationen för att kunna välja sorts noder att expander. (Hart, Nilsson, & Raphael, 1968) Den metod som skall förklaras framöver är en variant på den traditionella A* med en viss modifiering A*-hybrid. För att ta sig fram till målet sker det flera olika steg, där det börjar med en input i form av en karta över miljön med alla dess hinder som i detta fall är ett rutnät, ett startläge och ett målläge. Outputen i sin tur är förhoppningsvis en sekvens av olika stadier fordonet befinner sig i som skall ta den fram till målläget men samtidigt uppfylla vissa kriterier. Vägen till målet skall vara säker, så kort som möjligt, smidig samt uppfylla de kinematiska begränsningarna såsom sväng manövrerar. För att undvika komplikationer med olika hastigheter så antags en konstant hastighet, som skall kunna användas i outputen, det vill säga lösningsvägen. I slutskedet, när den slutgiltiga lösningen finns blir hastigheten istället en funktion baserat på krökningen och avståndet till olika hinder. I första fasen av sökningen, som har sitt ursprung i den välkända A*-metod som appliceras på en 3D-tillsåndskarta (x, y,θ), där tillståndet består av bilens plats riktning. Den metod som används har istället en 4D-tillståndskarta (x, y, θ, r), där den fjärde faktorn är r, som bara kan anta värdet 0 eller 1 och är färdriktningen på fordonet, alltså om bilen kör framåt eller om bilen backar. Den fjärde faktorn, r, används inom kostnadsuppfattning för de olika strategierna att ta sig till målläget. Det läggs till en kostnad för varje segment bilen kör baklänges och ytterligare en kostnad för varje gång bilen byter riktning. Själva hybridmetoden påminner om traditionell A*, där olika värden eller andra ting representeras i form av 4
5 rutnät(noder), för att exempelvis finna den snabbaste vägen till punkt B så representerar en ruta en möjlig körbana. Alla möjliga noder som används läggs sedan till i en öppen lista (open list) för att kunna vid senare tillfälle inte expandera den på nytt så en onödig kostnad uppstår. Skillnaden på hybridmetoden och det traditionella är att för varje möjlig ruta(nod), det vill säga körbar väg så associeras det en kontinuerlig 3D-tillsånd för fordonet. Det utgår från att det kontinuerliga tillståndet är i samspel med initialtillståndet och när rutnätsceller med möjliga lösningar skall expanderas gör dessa, i detta fall med tre olika handlingar. Det går antigenen att köra helt och hållet och vänster (max left), att inte svänga (no turn) och att svänga helt och hållet till höger(max right). Det resulterar i att de nya barnnoder kommer att genereras med användningen av en kinematisk (kinematisk innebär att objektets massa eller krafter som påverkar den inte tas i hänsyn) modell av hur fordonet tas sig till målet. För varje sådan nod som genereras och som redan blivit representerad, det vill säga att den redan ligger i den öppna listan som har en kostnad lägre än nuvarande nod så uppdateras det kontinuerliga tillståndet och den nod som hade lägsta kostnaden prioriteras i den öppna listan. En fördel med denna metod, som exempelvis Field D*(är en annan typ av A*- sökmetod) inte har, är att istället för att begränsa sig till piecewise-linear paths, det vill säga styckvis linjära lösningsbanor så är inte hybrid-a-metoden det. Detta genom att använda sig av den kinematiska funktionen som resulterar i att alla möjliga körvägar som producerats av hybridmetoden, har en garanti att de är körbara. Något som inte kan garanteras med hybridmetoden är huruvida den funna vägen är den billigaste vägen eller inte. Detta på grund av att när diskretisering(diskretisering innebär att kontinuerliga värden omvandlas till diskreta värden) av tid och kontroller. Så fast den billigaste vägen inte säkert hittas så hittar den läsbara och körbara läsningar till punkt B. Men även om den lösning som genereras ligger nära det globala optimum så sker en försäkran i den andra fasen av algoritmen Heuristiker. I den andra delen av algoritmen används två stycken heuristiker som inte enbart är begränsade till denna hybridmetod utan dessa heuristiker går att använda för andra sökmetoder utan några vidare problem. Den första heuristiken har de valt att kalla, nonholonomic-without-obstacles. Denna heuristik, som namnet illustrerar, bortser alla objekt men förbiser inte de holonomiska egenskaper bilen innehar. Heuristiken fungerar på så sätt att den räknar ut den kortaste vägen till målläget, för varje möjligt tillstånd i den fyra dimensionella världen. Den huvudsakliga uppgiften som heuristiken har är att tilldela höga färdkostnader för 5
6 de noder som bemöter problemet och agerar på fel sätt. Denna metod visade sig vara mer effektiv jämfört med exempelvis 2D-Euclidean, som expanderade betydligt mer noder än vad den metod som de använder sig av gjorde. När det gällde att testa heuristiken i verkliga miljöer så märktes det att i mindre miljöer så var det bara en mindre skillnad i effektivitet medan i större miljöer var det en större skillnad i expanderade noder och förbättringen syntes tydligare. Se figur 2 för exempel. Den andra heuristiken, som de kallar holonomic-with-obstacles, som i sin tur jämfört med den första heuristiken, ignorerar de holonomiska karaktärer bilen innehar men denna heuristik väljer senare att använda sig av en karta med de olika hinder som presenteras. Den räknar ut den kortaste vägen till målet, med användningen av dynamisk 2D-programmering. Denna används för att, med hjälp av en kostnadsfunktion, räkna ut om en väg är säker men även för att undvika onödigt körande och undvika större kostnader. Dessa två heuristiker appliceras i den grad som det går, för att minska expansionen av onödiga noder och istället kommer rätt noder att expanderas och resultatet blir mindre antal expanderade noder men en korrekt väg till målet hittas. A expanderade noder. B expanderade noder. Figur 2. Bilden A och B visar skillnaden på expanderade noder med olika heuristiker. 6
7 2.3. Problem. Det uppstår problem med av diskretisering av handlingar. Problemet är att när en diskretisering av kontinuerliga tillstånd sker kommer inte det exakta målläget att uppnås. Detta problem har löst med det som är Reed-Sheep-modellen. Som tidigare beskrivits så expanderas en nod med hjälp av en kinematisk funktion. Det som görs för att problemet skall lösas är att för varje ny nod så skall ytterligare en barnnod genereras med användningen av Reed-Sheep-modellen. Den modellen tar fram en väg som inte kommer resultera i kollision men det är dyrare att expandera på sådant sätt. För att inte ta på sig en större kostnad så expanderas inte alla noder utan en regel appliceras för att begränsa kostnaden. Regeln lyder på följande sätt; för varje nod N, där N minskar som en funktion av kostnaden till målet. Detta resulterar i att flera noder expanderas desto närmre målnoden sökningen är och det blir mer precist. Då vägarna som hittades fortfarande inte var helt optimala och det fanns fortfarande rum för förbättring togs det fram ytterligare några funktioner som skulle förbättra hela processen. De vägar som hittades hade ofta onaturliga svängar, som innefattade extrema manövrar. För att förhindra detta valdes det att bearbeta de lösningar som funnits och optimera dessa i en tvåstegsoptimering Optimering. Eftersom det lösningar som ibland hittas har för extra svängningar gjordes det en optimering i två steg för att förhindra detta. I det första steget tas koordinaterna till de hörn som det skall svängas runt in och en icke-linjär optimering utgörs för att förbättra längden och smidigheten i svängen. Den metod som används kallas för conjugate-gradient(cg), och är en numerisk optimeringsmetod. I den andra delen så behandlas den output från det första steget. Med den data den får ut utför den en icke-parametrisk interpolation med CG. Den funktion som huvudsakligen används är följande: Termer och funktionalitet., är i funktionen det objekt som närmast befinner sig ett givet hörn. 7
8 , är den försjuktningsvektorn till ett hörn. tangerande vinkeln i förhållande till hörnet. Dessa utgår då från en sekvens hörn som definieras på följande sätt:, är förändringen i den σ o och σ k är bägge straffunktioner. ω o, ω k och ω s är olika vikter.. Det går att se att huvudfunktionen egentligen är tre olika delar som utför tre olika funktioner. Den första delen är en straffunktion som straffar de körbanor som involverar en krock. Den andra delen av funktionen sätter en övre gräns för svängningar och krökningar som en väg till målet kan ha men även så upprätthåller de icke-holonomiska egenskaper hos fordonet. Den tredje och sista delen av huvudfunktionen är ett mått på hur jämn vägen som valts är fram till målet. Detta skall förhindra att krockar skall ske men när en jämn körväg skall hittas så A*-hybridmetoden optimal, det är därför dessa metoder används som komplement. Ett exempel (se figur 3) som visar sig vara problematiskt är då fordonet närmar sig en smal öppning mellan två hinder. Den banan som då väljs kommer den bakre delen av bilen vara nära en sida av öppningen för att säkert kunna svänga in i mynningen. Det problem som då uppstår är att fordonets form inte tas med i uträkningen så resulterar detta i att en osäker handling kommer att utföras. Figur 3. Ursprungsartikelns exempel på ett problematiskt hinder. Det som görs då för att förhindra detta är att det väljs en metod som fungerar. Körbanan processernas (via CG) så att det finns en smidighet när den körs som resulterar i att den är krockfri, skulle det vara så att en osäker väg ändå tas fram så förankras denna med A*- 8
9 hybridmetoden som gör om hela sökprocessen. Detta på grund av att den CG inte kan ändra på de koordinaterna som A*-hybridmetodens resultat innehar och en jämförelse mellan dessa sker som leder till att en krockfri väg hittas. 3. En strukturerad värld. Det är en stor skillnad på att ta sig från punkt A till en punkt B i en strukturerad värld och en ostrukturerad värld. Det är därför det används olika metoder att ta sig fram till målet. Förutsättningarna för att detta ska kunna göras är att en topografisk karta över området som det ska köras i. Hur denna karta har gjort eller fåtts tas inte upp. Det som då kan åstadkommas i en strukturerad värld med en topografisk karta är att fordonet kan, exempelvis hålla sig inom en körbana eller inte köra över massa parkeringsrutor. Det behövs inga större förändringar på algoritmen, men då det handlar om körbanor, som representeras i grafer måste några förändringar ske. Figur 4. En karta där körbanorna representeras. Den markanta skillnaden är att det har tillkommit en funktion som räknar ut ytterligare en kostnad. Heuristikerna som användes, non-holonomic-without-obstacles, funkar lika väl här och behöver inte ändras. Den andra heuristiken, holonomic-withobstacles, funkar i semi-strukturerade vägar men kan bidra med en dålig lösning som heuristik. Det som kan göras är att den modifieras så den kan behandla grafsystemet som används i mer strukturerade världar. En fördel med att ha en grafiskrepresentation av omgivningen är att macro-handlingar. Detta används när barnnoder skall expanderas, såsom vid okända strukturerade miljöer, så genereras barnnoder med ett par förutbestämda handlingar(exempelvis svänga vänster). Detta görs även på de macro-handlingar men på dessa applicerad Reed-Sheep-funktionen. Skulle dessa noder visa sig vara krockfria så expanderas 9
10 det och adderas i sökträdet. Vad gäller smidighetsfunktionen(cg) har den med blivit anpassad efter den grafiskarepresentationen. 4. Diskussion Finns det då sätt som hade varit bättre lämpade för att utföra samma sorts uppgift men med en annan algoritm. Det finns alternativa sätt såsom Anytime Dynamic A* (AD*) utvecklas av Maxim Likhachev och Dave Ferguson (2009). Denna metod använder sig av heuristik och en inflationsfaktor E som inte är större än 1, som kommer generera en snabb lösning till målnoden. Kostanden kommer även resultera i E gånger kostanden för den optimala lösningen. Denna metod börjar, i skillnad av A*-hybridmetoden, från målnoden och söker baklänges till det nuvarande läget fordonet. Fast denna algoritm börjar i slutet måste heuristiken fortfarande hitta slutläget från fordonets nuvarande läge, det vill säga att den går från början till slut. (Likhachev & Ferguson, 2009) Gällande alla algoritmer så är det väldigt viktigt att ha en fungerande heuristik, för med en dålig heuristik skulle det kunna göra mer skada än nytta. Ytterligare en skillnad på dessa två metoder är att den ena tar med bilens hastighet medan den andra inte gör det utan den bibehåller en konstant hastighet under hela processen. Hastighet är en sådan ting som kan ha stor påverkan. Med en hastighet måste ting som bromssträcka tänkas på men det går även att räkna ut eventuell kraft vid möjlig kollision. Att ha en hastighet blir påverkande när det gäller större områden såsom att köra inom en stad, däremot något mindre relevant när det gäller en parkering eller liknanden miljöer då hastigheten inte är så hög. Ett större problem som skulle kunna uppstå med användningen av AD* istället för A*- hybrid är att den ena är mycket mer anpassad för strukturerade miljöer och genom att börja med målnoden och gå baklänges så skulle en modifiering av bägge heuristikerna. Att utgå från målläget innebär att hela processen måste ske baklänges vilket resulterar i en modifiering av algoritmen med. Det är uppenbart att den algoritmen som gjordes för just denna typ av uppgift är mycket mer lämplig än vad någon annan som är mer lämpad för en annan typ av uppgifter. Dock ska det inte alltid tas för givet att detaljer eller idéer kan tas från andra liknande studier. Det gäller att på ett kritiskt sätt se över arbeten och se om det är lämpligt att använda andras funktioner eller liknande. 10
11 5. Avslutning. I denna litteraturstudie har en algoritm presenteras som kan användas för att ta sig från punkt A till punkt B med hjälp av en autonom farkost. Denna algoritm är uppdelad i två delar och har två heuristiker som ska minska antal expanderade noder. Även problem som diskretisering av kontinuerliga värden löses med hjälp av Reed-Sheep-funktionen. 11
12 Litteraturförteckning Dolgov, D., Sebastian, T., Montemerlo, M., & Diebel, J. (2010). Path Planning for Autonomous Vehicles in Unknown Semi-structured Environments. The International Journal of Robotics Research, Hart, P. E., Nilsson, N. J., & Raphael, B. (1968). A Formal Basis for the Heuristic Determination of Minimum Cost Paths. IEEE TRANSACTIONS OF SYSTEMS SCIENCE AND CYBERNETICS, Likhachev, M., & Ferguson, D. (2009). Planning Long Dynamically Feasible Maneuvers for Autonomous Vehicles. The International Journal of Robotics Research,
Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition.
Eulercykel Definition En Eulercykel är en cykel som använder varje båge exakt en gång. Definition En nods valens är antalet bågar som ansluter till noden. Kinesiska brevbärarproblemet En brevbärartur är
Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen
1. Komplexiteten hos en agent beror mycket på vilken omgivning den skall verka i. Vad innebär det att en omgivning är stokastisk, episodisk och dynamisk? Ge exempel på en omgivning som är stokastisk, episodisk
Dynamisk programmering. Dynamisk programmering. Dynamisk programmering. Dynamisk programmering
Betrakta ett lagerhållningsproblem i flera tidsperioder. Vi har tillverkning och försäljning av produkter i varje tidsperiod. Dessutom kan vi lagra produkter mellan tidsperioder, för att utnyttja stordriftsfördelar
729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581
Fuzzy logic 880328-2535 Innehåll Fuzzy logic... 1 1. Inledning... 4 2. Jämförelse mellan fuzzy logic och tvåvärdeslogik.... 4 3. Fuzzy sets.... 4 4. Linvistiska variabler... 5 5. Operatorer... 5 6. If-
Föreläsning 13. Dynamisk programmering
Föreläsning 13 Dynamisk programmering Föreläsning 13 Dynamisk programmering Fibonacci Myntväxling Floyd-Warshall Kappsäck Handelsresandeproblemet Uppgifter Dynamisk programmering Dynamisk programmering
N = {i}: noder (hörn) Graf: G = (N, B) Definitioner. Väg: Sekvens av angränsande bågar. Cykel: Väg som startar och slutar i samma nod.
Polyeder 0 x, 0 x, 0 x, x + x + x, x + x + x Grafdefinitioner N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar
PROBLEMLÖSNING. ! GPS! Mål medel analys! Problemlösning i programmering. Lars-Erik Janlert 2007
PROBLEMLÖSNING! Problem & lösning! Sökträd, sökgraf! Automatisk problemlösning! Heuristik! Heuristisk sökning! GPS! Mål medel analys! Problemlösning i programmering 1 Problem (snäv mening)! Ett problem
Föreläsning 5: Grafer Del 1
2D1458, Problemlösning och programmering under press Föreläsning 5: Grafer Del 1 Datum: 2006-10-02 Skribent(er): Henrik Sjögren, Patrik Glas Föreläsare: Gunnar Kreitz Den här föreläsningen var den första
TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS Datum: januari 0 Tid: 8.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED
Matematiska institutionen Optimeringslära TENTAMEN TAOP8/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR Datum: januari 01 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering
Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition
Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, )}, i N, N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg innehåller
Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.
OS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet
Tentamensinstruktioner. När Du löser uppgifterna
Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER för M/EMM Datum: 8 januari 201 Tid: 8.00-13.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering
Speciell användning av heltalsvariabler. Heltalsprogrammering. Antingen-eller-villkor: Exempel. Speciell användning av heltalsvariabler
Heltalsprogrammering Speciell användning av heltalsvariabler max z = då c j x j j= a ij x j b i j= x j 0 x j heltal i =,..., m j =,..., n j =,..., n ofta x j u j j =,..., n Oftast c, A, b heltal. Ibland
TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS Datum: augusti 0 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
Manual för ett litet FEM-program i Matlab
KTH HÅLLFASTHETSLÄRA Manual för ett litet FEM-program i Matlab Programmet består av en m-fil med namn SMALL_FE_PROG.m och en hjälp-fil för att plotta resultat som heter PLOT_DEF.m. Input För att köra programmet
TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER
Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Datum: januari 01 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
Specifikation av kandidatexjobb
Specifikation av kandidatexjobb 3D-rekonstruktion av Rubiks kub André Gräsman Rasmus Göransson grasman@kth.se rasmusgo@kth.se 890430-3214 850908-8517 Introduktion Vi vill göra en förstudie om 3D rekonstruktion.
Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition
Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg
Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition
Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg
Linjärprogramming. EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin
Linjärprogramming EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin 1 Kursmål Formulera korttidsplaneringsproblem för vatten- och värmekraftsystem. 2 Tillämpad matematisk programming Korttidsplanering
Optimeringslära Kaj Holmberg. Lösningar/svar. Iteration 2: x 2 s
Tekniska Högskolan i Linköping Optimering av realistiska sammansatta s Matematiska Institutionen Lösning till tentamen Optimeringslära 2014-01-15 Kaj Holmberg Lösningar/svar Uppgift 1 1a: (Detta problem
TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED
Matematiska institutionen Optimeringslära TENTAMEN TAOP8/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR Datum: 9 augusti 01 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg:
Kvalificeringstävling den 30 september 2008
SKOLORNAS MATEMATIKTÄVLING Svenska Matematikersamfundet Kvalificeringstävling den 30 september 2008 Förslag till lösningar Problem 1 Tre rader med tal är skrivna på ett papper Varje rad innehåller tre
Optimeringslära 2013-11-01 Kaj Holmberg
Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 23-- Kaj Holmberg Uppgift a: Problemet skrivet i standardform är: Lösningar min
TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM
Matematiska institutionen Optimeringslära TENTAMEN TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Datum: 13 januari 2018 Tid: 8.00-13.00 Hjälpmedel: Miniräknare Kurslitteraturen: Kaj Holmberg:
Linjära ekvationssystem
Föreläsning 3 Linjära ekvationssystem Gausselimination Vanlig gausselimination för det linjära ekvationssystemet Ax = b utgår från den utökade matrisen [A b] och applicerar elementära radoperationer på
Föreläsning 4: Kombinatorisk sökning
DD2458, Problemlösning och programmering under press Föreläsning 4: Kombinatorisk sökning Datum: 2009-09-25 Skribent(er): Kristina Nylander, Dennis Ekblom, Marcus Öman Föreläsare: Fredrik Niemelä 1 Introduktion
Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,
Uppsala universitet Institutionen för informationsteknologi Avdelningen för beräkningsvetenskap Tentamen i Beräkningsvetenskap I och KF, 5.0 hp, 017-0-14 Skrivtid: 14 00 17 00 (OBS! Tre timmars skrivtid!)
TNSL05 Optimering, Modellering och Planering. Föreläsning 10
TNSL05 Optimering, Modellering och Planering Föreläsning 10 Agenda Kursens status Repetition Flödesnätverk Optimalitetsvillkor LP och Minkostandsflöde (MKF) Nätverkssimplex Känslighetsanalys Exempel: MKF
Kortaste Ledningsdragningen mellan Tre Städer
Kortaste Ledningsdragningen mellan Tre Städer Tre städer A, B och C, belägna som figuren till höger visar, ska förbindas med fiberoptiska kablar. En så kort ledningsdragning som möjligt vill uppnås för
Deadlocks. detektera och undvik
Deadlocks detektera och undvik Enkla exempel Smal bro med en fil En fyrvägskorsning Fyra vägkorsningar Två lås P: Lock A, Lock B.. Rel. A, Rel. B Q: Lock B, Lock A.. Rel. B, Rel. A Vad motsvarar Resurser?
1. Vad är optimering?
. Vad är optimering? Man vill hitta ett optimum, när något är bäst, men att definiera vad som är bäst är inte alltid så självklart. För att kunna jämföra olika fall samt avgöra vad som är bäst måste man
Hemuppgift 2, SF1861 Optimeringslära för T, VT-10
Hemuppgift 2, SF1861 Optimeringslära för T, VT-1 Kursansvarig: Per Enqvist, tel: 79 6298, penqvist@math.kth.se. Assistenter: Mikael Fallgren, werty@kth.se, Amol Sasane, sasane@math.kth.se. I denna uppgift
Tentamensinstruktioner. När Du löser uppgifterna
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 1 OPTIMERING FÖR INGENJÖRER för M/EMM Datum: januari 2013 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
Föreläsningsanteckningar F6
Föreläsningsanteckningar F6 Martin Andersson & Patrik Falkman Kortaste vägen mellan en nod och alla andra noder Detta problem innebär att givet en graf G = (E,V) hitta den kortaste vägen över E från en
Linjära ekvationssystem
Linjära ekvationssystem Gausselimination Vanlig gausselimination för det linjära ekvationssystemet Ax = b utgår från den utökade matrisen [A b] och applicerar elementära radoperationer på denna för att
TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C Datum: 2 augusti 2011 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering
Varseblivning i realtid - SLAM
LINKÖPINGS UNIVERSITY Varseblivning i realtid - SLAM Anton Romell 2012-09-16 Innehåll Bakgrund...1 Inledning...2 Varseblivning...3 2D-scanning...3 3D-scanning...4 Behandling av information...6 3D-information...6
Föreläsning Datastrukturer (DAT037)
Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-20 Idag Grafer: Terminologi. Datastrukturer. Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. (Vi får
Lektion 8: Konstruktion av semantiska tablåer för PTL-formler
Lektion 8: Konstruktion av semantiska tablåer för PTL-formler Till denna lektion hör uppgift 2, 6 och 0 i lärobokens avsnitt.6 (sid. 255). Lös uppgift 2 genom att konstruera en semantisk tablå. Följande
CREATING VALUE BY SHARING KNOWLEDGE
CREATING VALUE BY SHARING KNOWLEDGE PROJEKTLEDNING 101 Nidzara Dellien, Lund September 2017 PROJEKT En formell definition på projekt är följande (enligt Wikipedia): En temporär satsning för att framställa
TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER Datum: augusti 0 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i boken
Introduktion. Torsionspendel
Chalmers Tekniska Högskola och Göteborgs Universitet November 00 Fysik och teknisk fysik Kristian Gustafsson och Maj Hanson (Anpassat för I1 av Göran Niklasson) Svängningar Introduktion I mekanikkursen
Aalto-Universitetet Högskolan för ingenjörsvetenskaper. KON-C3004 Maskin- och byggnadsteknikens laboratoriearbeten DOPPLEREFFEKTEN.
Aalto-Universitetet Högskolan för ingenjörsvetenskaper KON-C3004 Maskin- och byggnadsteknikens laboratoriearbeten DOPPLEREFFEKTEN Försöksplan Grupp 8 Malin Emet, 525048 Vivi Dahlberg, 528524 Petter Selänniemi,
Programmeringsuppgift Game of Life
CTH/GU STUDIO TMV06a - 0/0 Matematiska vetenskaper Programmeringsuppgift Game of Life Analys och Linär Algebra, del A, K/Kf/Bt Inledning En cellulär automat är en dynamisk metod som beskriver hur komplicerade
!!!!!!!! Googles'självkörande'bil!
Googles'självkörande'bil AmandaJaber(amaja463) AI 279G43 2016901909 Innehållsförteckning 1.#INLEDNING#...#3 1.1 SYFTE#...#3 1.2 AVGRÄNSNING#...#3 2.#GOOGLE#SJÄLVKÖRANDE#BIL#...#4 2.1HURBILENFUNGERAROCHUPPBYGGNAD...4
Föreläsning 5: Dynamisk programmering
Föreläsning 5: Dynamisk programmering Vi betraktar en typ av problem vi tidigare sett: Indata: En uppsättning intervall [s i,f i ] med vikt w i. Mål: Att hitta en uppsättning icke överlappande intervall
Träd och koder. Anders Björner KTH
27 Träd och koder Anders Björner KTH 1. Inledning. Det är i flera sammanhang viktigt att representera information digitalt (d.v.s omvandla till sviter av nollor och ettor). Beroende på vilka villkor som
TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER Datum: 2 maj 20 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i boken får
TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM
Matematiska institutionen Optimeringslära TENTAMEN TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Datum: april 2018 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteraturen: Kaj Holmberg: Optimering
Sätt att skriva ut binärträd
Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer
TFEI02: Vågfysik. Tentamen : Svar och anvisningar. t s(x,t) =s 0 sin 2π T x. v = fλ =3 5 m/s = 15 m/s
140528: TFEI02 1 TFEI02: Vågfysik Tentamen 140528: Svar och anvisningar Uppgift 1 a) En fortskridande våg kan skrivas på formen: t s(x,t) =s 0 sin 2π T x λ Vi ser att periodtiden är T =1/3 s, vilket ger
Optimeringslära Kaj Holmberg
Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 28-5-3 Kaj Holmberg Lösningar Uppgift a: P: Grafisk lösning ger x = 2/7 = 2 6/7,
TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS Datum: augusti 0 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
Vinjett 1: Relationsdatabas för effektivaste vägen
Vinjetter Inledning I denna kurs kommer vi att utgå från transporter som tema för vinjetterna. Fokus för kursen blir vilken information som behöver vara tillgänglig och hur denna skulle kunna lagras. Man
Datastrukturer och algoritmer. Innehåll. Tabell. Tabell - exempel. Gränsyta till Tabell. Tabell. Modell. Hashtabell Relation, lexikon.
Datastrukturer och algoritmer Föreläsning 7 Tabell, hashtabell Relation & lexikon Innehåll Tabell Tabell Hashtabell Relation, lexikon Modell Uppslagsbok Organisation Ändlig avbildning av argument på värden
Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.
OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet
Föreläsning 11. Giriga algoritmer
Föreläsning 11 Giriga algoritmer Föreläsning 11 Giriga algoritmer Användning Växelproblemet Kappsäcksproblemet Schemaläggning Färgläggning Handelsresandeproblemet Giriga algoritmer (Greedy algorithms)
TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM
Matematiska institutionen Optimeringslära TENTAMEN TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Datum: 19 april 2017 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteraturen: Kaj Holmberg:
6 Derivata och grafer
6 Derivata och grafer 6.1 Dagens Teori När vi plottar funktionen f(x) = x + 1x 99x 8 med hjälp av dosan kan man få olika resultat beroende på vilka intervall man valt. 00000 100000-00 -100 100 00-100000
Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs
KTH Matematik Tentamen del 1 SF154, 1-3-3, 8.-11., Numeriska metoder, grundkurs Namn:... Bonuspoäng. Ange dina bonuspoäng från kursomgången läsåret HT15/VT1 här: Max antal poäng är. Gränsen för godkänt/betyg
Tentamensinstruktioner. När Du löser uppgifterna
Matematiska institutionen Optimeringslära TENTAMEN TAOP14/TEN 1 OPTIMERINGSLÄRA GRUNDKURS för I, Ii och TB Datum: 24 augusti 2009 Tid: 8.00-13.00 Hjälpmedel: Lundgren m fl: Optimeringslära och/eller Lundgren
Bästa skottläge på en fotbollsplan längs långsidan
Bästa skottläge på en fotbollsplan längs långsidan Frågeställningen lyder: Vad är det bästa skottläget? för en spelare som befinner sig på en rak linje på en fotbollsplan. Det är alltså en vinkel som söks,
5 Skapa ett vinnande koncept. 5.1 Skapa alternativa koncept med högre kundvärde
IKOTTME040 2009 03 01 GruppB6 5 Skapaettvinnandekoncept 5.1 Skapaalternativakonceptmedhögrekundvärde Förattfåutstörstamöjligakundvärdehosproduktenböralternativakoncepttasframsomärbättre änreferenslösningen.ettkonceptärvanligenenskiss,ettdokumentellerenenkelprototyp,somger
Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar
Skapa testfall Testing Köra testen Hitta fel Inspections and reviews Verifiera resultatet Formal methods Static analysis Completeness Verifiering Kvalitet Maintainability Validering Traceability Fault
LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr
Daniel Axehill 2006-01-19 Sida 1 Projektnamn Beställare Daniel Axehill, ISY Projektledare Student Projektbeslut Torbjörn Crona, Daniel Axehill Projekttid Läsperiod 3-4, vårterminen 2006. Projektet klart
Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,
Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Tentamen i Beräkningsvetenskap I/KF, 5. hp, 215-3-17 Skrivtid: 14 17 (OBS! Tre timmars skrivtid!) Hjälpmedel: Bifogat
PCP-satsen på kombinatoriskt manér
austrin@kth.se Teorigruppen Skolan för Datavetenskap och Kommunikation 2005-10-24 Agenda 1 Vad är ett bevis? Vad är ett PCP? PCP-satsen 2 Vad, hur och varför? Lite definitioner Huvudresultatet 3 Ännu mer
Digitalt lärande och programmering i klassrummet
2016-03-03 Digitalt lärande och programmering i klassrummet Blue-Bot Introduktion Vi kommer i denna övning att bekanta oss med små charmiga robotar som heter Blue-Bots. Dessa robotar är bra för att introducera
Optimering och simulering: Hur fungerar det och vad är skillnaden?
Optimering och simulering: Hur fungerar det och vad är skillnaden? Anders Peterson, Linköpings universitet Andreas Tapani, VTI med inspel från Sara Gestrelius, RIS-SIS n titt i KAJTs verktygslåda Agenda
Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
Jämförelse av skrivtekniker till cacheminne
Jämförelse av skrivtekniker till cacheminne 1 Innehåll 1. Sammanfattning 2. Inledning 3. Diskussion 4. Referenslista 1. Sammanfattning En rapport innehållande jämförelser av olika skrivtekniker till minnen
Här är två korta exempel på situationer då vi tillämpar den distributiva lagen:
Modul: Algebra Del 8: Avslutande reflektion och utvärdering Distributiva lagen Cecilia Kilhamn, Göteborgs Universitet Distributiva lagen a (b + c) = a b + a c Den distributiva lagen kallas den räknelag
Lösningar Datastrukturer TDA
Lösningar Datastrukturer TDA416 2016 12 21 roblem 1. roblem 2. a) Falskt. Urvalssortering gör alltid samma mängd av jobb. b) Sant. Genom att ha en referens till sista och första elementet, kan man nå både
Föreläsning Datastrukturer (DAT036)
Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-18 Idag Mer om grafer: Minsta uppspännande träd (för oriktade grafer). Prims algoritm. Kruskals algoritm. Djupet först-sökning. Cykel
Föreläsning 10. Grafer, Dijkstra och Prim
Föreläsning 10 Grafer, Dijkstra och Prim Föreläsning 10 Grafer Representation av grafer Dijkstras algoritm Implementation av Dijkstras algoritm Minimium spanning tree Broarna i Königsberg, Euler, 17 Grafer
Föreläsning Datastrukturer (DAT037)
Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-23 Idag Mer om grafer: Minsta uppspännande träd (för oriktade grafer). Djupet först-sökning. Minsta uppspännande träd Träd (utan rot)
TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS
Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS Datum: 9 april 0 Tid: 8.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
Föreläsning 10. Grafer, Dijkstra och Prim
Föreläsning 10 Grafer, Dijkstra och Prim Föreläsning 10 Grafer Representation av grafer Dijkstras algoritm Implementation av Dijkstras algoritm Minimium spanning tree Läsanvisning och uppgifter Broarna
Föreläsning 5. Approximationsteori
Föreläsning 5 Approximationsteori Låt f vara en kontinuerlig funktion som vi vill approximera med en enklare funktion f(x) Vi kommer använda två olika approximationsmetoder: interpolation och minstrakvadratanpassning
Lösning till fråga 5 kappa-06
Lösning till fråga 5 kappa-06 Figurer till uppgift a) ligger samlade efter uppgiften. Inledning Betrakta först N punkter som tillhör den slutna enhetskvadraten inlagd i ett koordinatsystem enligt figur
Aktivitetsschemaläggning för flerkärninga processorer
Lunds Tekniska Högskola Datorarkitekturer med Operativsystem EDT621 Aktivitetsschemaläggning för flerkärninga processorer Tobias Lilja 5 december 2016 Innehåll 1 Inledning 3 1.1 Syfte................................
Algoritmanalys. Inledning. Informationsteknologi Malin Källén, Tom Smedsaas 1 september 2016
Informationsteknologi Malin Källén, Tom Smedsaas 1 september 2016 Algoritmanalys Inledning Exempel 1: x n När vi talade om rekursion presenterade vi två olika sätt att beräkna x n, ett iterativt: x n =
Föreläsning 10. Grafer, Dijkstra och Prim
Föreläsning 10 Grafer, Dijkstra och Prim Föreläsning 10 Grafer Representation av grafer Dijkstras algoritm Implementation av Dijkstras algoritm Minimium spanning tree Läsanvisning och uppgifter Broarna
Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition
Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg
Tentamen: Programutveckling ht 2015
Tentamen: Programutveckling ht 2015 Datum: 2015-11-04 Tid: 09:00-13:00 Sal: Ansvarig: Resultat: Hjälpmedel: Maxpoäng: Betygsgränser: Anslås inom 3 veckor. Inga 40 p 20 p för G, 32 p för VG. Iakttag följande:
Föreläsning Datastrukturer (DAT036)
Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2012-11-13 Idag Mer om grafer: Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. Floyd-Warshall. Topologisk sortering
Linjärt minne. Sammanhängande minne är ej flexibelt. Effektivt
Binära träd (forts) Ett binärt träd kan lagras i ett enda sammanhängande minne Roten har index 1 Vänster barn till nod i har index 2*i Höger barn till nod i har index 2*i + 1 Föräldern till nod i har index
Tentamen Datastrukturer (DAT036)
Tentamen Datastrukturer (DAT036) Datum och tid för tentamen: 2013-12-16, 14:00 18:00. Ansvarig: Nils Anders Danielsson. Nås på 0700 620 602 eller anknytning 1680. Besöker tentamenssalarna ca 15:00 och
Olinjär optimering med bivillkor: KKT min f (x) då g i (x) 0 för alla i
Olinjär optimering med bivillkor min då f (x) g i (x) 0 för alla i Specialfall: Konvext problem. Linjära bivillkor: Ax b. Linjära likhetsbivillkor: Ax = b. Inga bivillkor: Hanterat tidigare. Metodprinciper:
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa
Objektorienterad programmering
Objektorienterad programmering Emil Ahlqvist (c10eat@cs.umu.se) Didrik Püschel (dv11dpl@cs.umu.se) Johan Hammarström (c08jhm@cs.umu.se) Hannes Frimmel Moström (c10hml@cs.umu.se) 1 1. Introduktion 1.1 Objektorienterad
Föreläsning Datastrukturer (DAT036)
Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-13 Idag Grafer: Terminologi. Datastrukturer. Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. (Vi får
Tentamensinstruktioner. När Du löser uppgifterna
Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER för EMM Datum: 2 augusti 2011 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar
729G04 Programmering och diskret matematik TEN kl 8-12
729G04 Programmering och diskret matematik TEN4 091120 kl 8-12 Examinator: Annika Silvervarg, telefonnummer 013-284068 Hjälpmedel: Dator, penna och suddgummi. Uppgifter: Tentamen består av 4 uppgifter
Konvexa höljet Laboration 6 GruDat, DD1344
Konvexa höljet Laboration 6 GruDat, DD1344 Örjan Ekeberg 10 december 2008 Målsättning Denna laboration ska ge dig övning i att implementera en algoritm utgående från en beskrivning av algoritmen. Du ska
Optimeringslära Kaj Holmberg
Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 2018-08-31 Kaj Holmberg Lösningar Uppgift 1 1a: Inför slackvariabler x 5, x 6 och
DEN RUNDA TUNNELN EN UNDERSKATTAD FIENDE
DEN RUNDA TUNNELN EN UNDERSKATTAD FIENDE Av Marie Hansson När man är nybörjare i agility, eller ser sporten utifrån, är det lätt att tro att just den runda tunneln är det allra lättaste hindret! Och det