När händelsen missionStart tas emot, initieras en räddnings- och sökoperation. Det är här den grundläggande täckningstillståndet för SAR-beteendet (Search and Rescue) aktiveras, vilket innebär att UAV (Unmanned Aerial Vehicle) påbörjar sin sökning efter möjliga mål. Under denna första fas söker UAV:n efter mål i det angivna området. Om ett mål upptäcks, utlöses händelsen targetFound, vilket triggar tillståndet TargetMonitoring. I detta tillstånd får UAV:n information om det upptäckta målet och börjar kommunicera med alla tillgängliga UGV (Unmanned Ground Vehicle). UAV:n väljer den närmaste UGV:n och dirigerar den mot målet.

Medan UGV:n rör sig mot målet, fortsätter UAV:n att spåra det genom att använda Tracking-beteendet, vilket innebär att UAV:n håller reda på målets position och uppdaterar informationen genom targetUpdate-händelsen. När UGV:n når målet och det är säkert, utlöses targetRescued-händelsen, vilket gör att UAV:n återgår till täckningsbeteendet för att söka efter andra mål. Om målet förloras innan det kan räddas, går UAV:n över till LocalCoverage-tillståndet, vilket innebär att UAV:n cirkulerar i området kring den sista kända positionen för att försöka hitta målet på nytt. Om målet hittas igen, väljs den mest lämpliga UGV:n på nytt för att fortsätta räddningsarbetet.

Dessa beteenden och funktioner för att hantera SAR-uppdrag är en del av en större ramverk där swarm-intelligens används för att möjliggöra autonoma beslut, där varje enhet (UAV eller UGV) agerar baserat på lokal information och interaktioner med andra enheter i systemet. När flera drönare och markfordon arbetar tillsammans för att lösa en komplex uppgift, som att lokalisera och rädda personer, krävs det en välkoordinerad användning av beteenden och funktioner som är specifika för swarm-teknologi.

Beteendebiblioteken, som används inom SAR-uppdraget, är exempel på sådana funktioner och kan hanteras via standardiserade plattformar som ROS (Robot Operating System). Genom dessa system kan både UAV och UGV kommunicera effektivt och snabbt anpassa sina handlingar baserat på den aktuella situationen. Beteenden som TargetMonitoring och SelectRover ser till att resurser allokeras där de behövs mest, och att drönare och markfordon kan samordnas för att snabbt och effektivt fullfölja sina uppdrag.

För att möjliggöra dessa funktioner finns även de grundläggande hårdvarufunktionerna som gör det möjligt för UAV och UGV att utföra grundläggande uppgifter som att lyfta, landa eller hantera aborterade uppdrag. Hårdvarufunktionerna som ingår i Abstraction Library hjälper till att standardisera och förenkla kontrollen av enheterna under operationer, vilket ger större tillförlitlighet och precision under komplexa räddningsuppdrag.

Det som är viktigt att förstå för läsaren är inte bara hur dessa beteenden och funktioner samverkar för att skapa effektiva räddningssystem, utan också hur de är en del av en större vision för framtida autonoma system. Swarm-teknologin möjliggör inte bara effektivisering av uppdrag som SAR, utan kan även användas för en mängd andra applikationer som kräver snabb, lokal beslutsfattande och samordning, till exempel autonom körning eller övervakning av smarta nät.

En annan aspekt som är central för att förstå denna teknologi är vikten av att hantera och analysera data i realtid. Swarm-intelligens bygger på ständiga interaktioner mellan enheter, vilket innebär att dataflöden måste hanteras och bearbetas effektivt. Detta kan innebära både utmaningar och möjligheter när det gäller hur information delas mellan olika enheter i systemet. I framtiden, när nätverk av drönare och robotar blir allt mer komplexa, kommer det att vara avgörande att dessa enheter kan hantera både lokala beslut och interaktioner med centraliserade system för att säkerställa effektivitet och säkerhet.

Endtext

Hur robusthet och kommunikation påverkar svärmintelligens i autonoma system

När autonoma agenter eller länkar i ett system tas bort eller skadas, förväntas systemets prestanda försämras, men detta sker gradvis. Denna typ av nedbrytning utan att hela systemets funktion förloras är ett av kännetecknen för robusta system. Robusta system innebär att de kan hantera defekter eller förändringar utan att hela systemet slutar fungera. I kontrast till detta står centraliserade system där ett enda fel, såsom en felaktig kontrollenhet, kan leda till systemets fullständiga kollaps. I många fall är robusthet en beskrivande egenskap som saknar formella mätmetoder, vilket innebär att det än så länge inte finns någon enhetlig teknik för att mäta eller säkerställa robustheten hos ett svärmsystem i relation till globalt eller lokalt beteende.

I svärmsystem spelar kommunikationen en central roll. För att upprätthålla autonomi och koordinering måste varje agent ständigt utbyta information med sina grannar. Denna kommunikation kan ske både direkt och indirekt. Direkt kommunikation innebär att agenter använder någon form av kommunikationsmedium, som Wi-Fi eller infraröd strålning, för att överföra information till sina närmaste grannar. Detta kan vara ett meddelande till en enskild granne eller till flera grannar samtidigt. Indirekt kommunikation, å andra sidan, innebär att en agent skapar ett meddelande och delar det med omgivningen. Andra agenter kan då samla upp meddelandet antingen slumpmässigt eller med avsikt. Ett exempel på detta är feromonbaserad kommunikation, som ses hos sociala insekter som myror och bin, där agenter lämnar spår av feromoner i sin omgivning. Dessa kemiska signaler bär på information och påverkar andra agenter inom samma art, vilket kan styra deras beteende och utveckling.

Feromonbaserad kommunikation har använts för att efterlikna den naturliga kommunikationen hos djur i artificiella system, som i svärmsystem för robotar. I ett sådant system kan en "ledare" släppa ut feromoner som följs av andra agenter, vilket skapar en "feromonstig". Denna väg förlorar sin styrka över tid, men hjälper agenter att koordinera sina handlingar på ett effektivt sätt, liknande hur myror och andra sociala djur samordnar sig för att utföra gemensamma uppgifter.

Vidare är ett av de mest intressanta fenomenen inom svärmintelligens superlinjäritet, som innebär att prestandan för en svärm kan öka mer än proportionellt i relation till antalet agenter. När agenter samarbetar på ett koordinerat sätt, kan de uppnå resultat som överstiger summan av deras individuella kapabiliteter. Detta fenomen ses ofta vid uppgifter som kräver uppdelning av arbete, där varje agent kan specialisera sig på en del av uppgiften och därmed öka effektiviteten. Förutom synergi genom samarbete och uppgiftspecialisering, spelar också parallell bearbetning en stor roll: genom att distribuera arbetsuppgifter mellan flera agenter kan uppgifter lösas mycket snabbare än om de utfördes av en enda agent.

Superlinjäritet manifesterar sig också i exempel där enskilda agenter inte kan utföra uppgiften på egen hand. Ett exempel är en situation där flera robotar måste arbeta tillsammans för att flytta ett hinder som en ensam robot inte kan hantera. I sådana fall ökar gruppens förmåga att utföra uppgiften exponentiellt jämfört med vad som vore möjligt för en enskild robot. Detta illustrerar hur ett svärmsystem, där flera enheter samverkar, kan öka den totala prestandan långt över det som skulle vara möjligt om enskilda agenter arbetade oberoende av varandra.

Denna typ av superlinjär effekt är eftertraktad i system som efterliknar svärmintelligens, eftersom det innebär att systemet som helhet fungerar bättre än summan av sina delar. För att en svärm ska uppnå denna typ av effektivitet måste interaktionen mellan medlemmarna vara väl genomtänkt och bidra till varje individs förbättrade prestanda, vilket gör att hela systemet blir mer effektivt.

I praktiken innebär detta att svärmens storlek inte bara påverkar den övergripande effektiviteten utan även de enskilda agenterna. För att optimera svärmintelligens är det avgörande att varje enskild agent kan bidra effektivt till gruppens mål. Ett välutvecklat svärmsystem är därför ett system där både varje individuell agent och hela gruppen når högre effektivitet genom samarbete och gemensam anpassning till förändrade omständigheter.

Hur påverkar svärmstorlek och prestanda varandra i cyber-fysiska system?

Prestanda och storlek i ett svärmsystem är två grundläggande faktorer som påverkar varandra, särskilt när det gäller antalet medlemmar i svärmen. Formeln som representerar detta samband visar att den genomsnittliga prestandan per agent i svärmen ökar när svärmstorleken växer, förutsatt att svärmen är effektiv i sitt arbete. Detta samband kan visualiseras i Figur 2.3, som visar de förväntade skalningsegenskaperna för tre olika system:

För det första har vi en hypotetisk algoritm eller svärmmodell som skalar linjärt med O(n) där n representerar antalet medlemmar i svärmen. Detta är illustrerat av den streckade linjen i figur 2.3. Dock är denna typ av skala inte praktisk i den verkliga världen, eftersom fysiska begränsningar och systemresurser inte beaktas här. För det andra har vi en algoritm som tar hänsyn till delning av resurser mellan olika instanser av algoritmen eller svärmmodellen, vilket leder till en logaritmisk skalning, O(log n), som visas med en prickad linje i samma figur. Detta sker eftersom den ökade kommunikations- och samordningsöverlagringen mellan medlemmarna gör att svärmen skalar långsammare när antalet medlemmar ökar. För det tredje visar den solida linjen den typiska skalningen av fysiskt inbäddade svärmar i verkligheten, där prestandan vid en låg svärmstorlek (N < C1) är nästan obefintlig. Detta beror på att agenterna har för låg sammanlänkning för att samarbeta och interagera effektivt. När svärmstorleken ökar, förbättras systemets prestanda genom svärm-effekten, där samverkan mellan medlemmarna leder till ökad effektivitet.

Men det finns en gräns för detta. När svärmen når en viss storlek (N > C1), kan den dra nytta av dessa interaktioner för att skala upp på ett överlinjärt sätt. Prestandan förblir på denna höga nivå inom ett visst intervall (C1 > N ≥ C3), men när svärmen växer ytterligare och passerar en kritisk gräns (N > C4), kommer prestandan att försämras kraftigt och slutligen förloras helt.

Det finns flera faktorer som bidrar till detta fenomen av minskad prestanda när svärmstorleken ökar:

  1. Ökad kommunikation: Ju fler agenter som finns, desto mer information måste utbytas mellan dem. Om kommunikationsinfrastrukturen inte är optimerad för skalbarhet, kan detta skapa flaskhalsar och öka latensen.

  2. Koordinering av rörelser: För att säkerställa att alla agenter rör sig och agerar i samklang krävs komplexa algoritmer. Detta kan skapa förseningar om det finns problem med timing eller riktning, vilket minskar svärmens effektivitet.

  3. Resurskonflikter: Många agenter kan behöva dela på samma resurser, såsom data eller fysiskt utrymme, vilket kan leda till ineffektivitet om inte resursallokeringen hanteras korrekt.

  4. Komplexitet i beslutsfattande: Med fler agenter ökar komplexiteten i beslutsprocessen, eftersom det finns fler möjliga interaktioner och beroenden att beakta, vilket kan förlänga svarstiden och minska den totala effektiviteten.

Det är också viktigt att notera att en svärm inte alltid bildas för att uppnå maximal prestanda. I vissa fall kan det vara acceptabelt att prestationen minskar med ökat antal agenter om andra egenskaper prioriteras, som till exempel:

  • Robusthet och pålitlighet: Ett svärmsystem är mindre benäget att misslyckas helt om de individuella agenterna kan ta över uppgifter från misslyckade medlemmar och på så sätt säkerställa fortsatt funktion.

  • Underhållbarhet: Med en modulär design kan enskilda komponenter eller agenter bytas ut eller repareras utan att påverka hela systemet.

  • Utbyggbarhet: Om det uppstår ett framtida behov kan systemets prestanda förbättras genom att lägga till fler agenter, vilket möjliggör skalbara lösningar när problem uppstår.

För att maximera nyttan av svärmsystemets förmåga är det viktigt att också förstå dynamiken mellan utforskning och utnyttjande av resurser. Svärmmedlemmar fungerar ofta i två olika lägen: i utforskningsläge sprider de sig för att utforska omgivningen eller söka efter optimala lösningar, medan de i utnyttjandeläge använder den insamlade informationen för att maximera sin belöning, såsom att hitta mat eller hitta den bästa lösningen på ett problem.

Det krävs en balans mellan dessa två lägen för att uppnå optimala resultat. Om svärmen alltför mycket betonar utforskning, kan den gå vilse i ett alltför stort sökområde utan att leverera användbar information. Å andra sidan, om svärmen fokuserar för mycket på utnyttjande, kan den missa mer lönsamma områden. Konflikten mellan utforskning och utnyttjande är ett vanligt problem inte bara för svärmar, utan för alla system som behöver utforska en osäker miljö på ett kostnadseffektivt sätt. Ett känt exempel på detta är det så kallade "multi-armed bandit"-problemet, där olika "spelslots" måste utforskas för att maximera vinsten, men belöningsfördelningen är okänd och måste läras över tid.

Slutligen är det också viktigt att förstå att svärmssystem inte är isolerade fenomen utan finns i ett större sammanhang av optimeringsproblem och systemdynamik, där de kan vara en lösning på specifika problem men samtidigt möta egna inneboende utmaningar som måste beaktas för att skapa effektiva och hållbara system.