I ett Edge-Cloud-system där cyberfysiska system och arbetsbelastningar samverkar på mikronivå är dynamisk resursallokering och optimering avgörande för att upprätthålla systemets prestanda och effektivitet. Ett av de mest effektiva sätten att hantera detta är genom användning av agenter som arbetar i svärmar, där både efterfråge- och försörjningsagenter samverkar för att säkerställa att resurser utnyttjas maximalt. Detta system är inspirerat av naturens egna mekanismer, där svärmade organisationer såsom myror optimerar sina aktiviteter genom kommunikation och gemensamt beslutsfattande. Denna inspiration ligger till grund för algoritmer som möjliggör autonoma beslut i resursallokering och arbetsbelastningshantering.

Svärmagenternas samarbete möjliggör att arbetsbelastningar fördelas effektivt mellan tillgängliga noder. Efterfrågeagenter fungerar på pod-nivå och tar beslut om var en viss arbetsbelastning ska köras baserat på de specifika krav som tjänsten ställer. Dessa krav kan inkludera faktorer som arbetsbelastningens typ, prestandakrav, datarelationer och latensbegränsningar. Samtidigt arbetar försörjningsagenter på nod-nivå och hanterar tilldelningen av resurser som CPU, FPGA, RAM och NVMe. Försörjningsagenterna säkerställer att arbetsbelastningarna processas optimalt baserat på varje nods resurser och kapacitet.

Svärmagenternas förmåga att organisera sig självständigt och anpassa sig till förändrade förhållanden är en viktig aspekt i dessa system. Genom att skapa en kontinuerlig återkoppling och interaktion mellan efterfråge- och försörjningsagenterna kan systemet dynamiskt fördela arbetsbelastningar till de mest lämpliga noderna. Detta inte bara optimerar behandlingen och resursanvändningen, utan minskar även latens och förbättrar systemets motståndskraft mot förändrade arbetsbelastningar och resurstillgång.

Ett viktigt inslag i dessa system är hanteringen av en resurspool som tillhandahåller individuella resurser för podbearbetning, åtskilt från traditionella nodbaserade processkapaciteter. Denna resurspool gör det möjligt att förbättra systemets stabilitet genom att förhindra resursutarmning och minska latens, samtidigt som den säkerställer att andra poddar inte påverkas negativt. Det görs genom att skydda resurser som redan är tilldelade specifika poddar från att tas i anspråk av andra arbetsbelastningar. För att detta ska vara effektivt måste resurspoolen integreras väl inom EMDC (Edge Multi-Data Centre) och vara åtkomlig för systemets edge- eller edge-cloud-hantering.

Samtidigt måste vi förstå att när komplexiteten i de tjänster som körs i dessa system ökar, så gör även komplexiteten i själva arbetsbelastningarna det. Arbetsbelastningar kan variera kraftigt beroende på typ, från långvariga applikationer (LRAs) som kräver ihållande beräkningar och realtidskommunikation, till batchbearbetningar och strömmande data som måste bearbetas i realtid. I framtiden kommer dessa olika typer av arbetsbelastningar att sammankopplas ännu mer, vilket kommer att ställa nya krav på hur systemet hanterar dessa interaktioner. Här kan till exempel "service clustering", dvs. att placera beroende tjänster nära varandra, avsevärt förbättra prestandan och minska svarstider.

En av de största utmaningarna i modellerna för dessa EMDC-system är att effektivt orkestrera resurspooler och garantera att resurser inte bara allokeras till arbetsbelastningar, utan också hanteras på ett sätt som bibehåller systemets övergripande stabilitet och prestanda. De nuvarande mekanismerna för orkestrering, ofta baserade på traditionella hub-and-spoke-modeller, är inte tillräckliga för att hantera den typ av ad-hoc-konfigurationer som krävs för dessa komplexa system.

Det är också avgörande att förstå hur dessa olika applikationstyper, med sina specifika krav på svarstid och resurstillgång, påverkar hela ekosystemet. Förutom att fördela arbetsbelastningar effektivt måste systemet också kunna reagera på förändrade krav, vilket kan innebära att systemet kontinuerligt behöver övervaka och justera sin resurstilldelning baserat på realtidsdata och prediktioner om framtida behov.

Hur och varför simulering är avgörande för utvecklingen av swarm-robotik och cyber-fysiska system

Sensorinmatningar i cyber-fysiska system (CPS) bearbetas via metoden getOutput i kandidatrepresentationen, vilken returnerar aktuatorernas respons. För att bedöma en implementering används en lämplig prestationsmåttsfunktion som räknar ut en fitnessvärdering för simuleringskörningen. När en komponent är färdigimplementerad måste den kompileras och automatiskt laddas vid FREVO:s uppstart, vilket gör att den blir tillgänglig i komponentvalsfönstret och kan användas i arbetsflödet. Detta förfarande är konsekvent för alla komponenter, där genererad kod anpassas för respektive funktion.

Inom domänspecifika simuleringar används externa simulatorer, vilka integreras via problemkomponentens evaluateCandidate-funktion. Denna funktion anropar simulatorn och levererar kandidatrepresentationen, det vill säga CPS-kontrollern. Simulatorn måste därför innehålla exakt samma representation som FREVO utvecklar för att möjliggöra en optimal lösning. Detta kan ske på två sätt: antingen kompakt via kodgenerering som körs i simuleringen, eller modulärt genom överföring av in- och utdata mellan FREVO och simulatorn. Den kompakta metoden kräver att simulatorns kod kompileras om varje generation, varefter den körs direkt från FREVO och returnerar fitnessvärdet. Den är fördelaktig för CPS utan filsystem eller nätverkskommunikation. Alternativt kan en modulär ansats användas där parametrar för representationen överförs via filer eller nätverk efter att en önskad kandidat uppnåtts. Simulatorns beteende bestäms fullt ut av kandidatrepresentationen, vars parametrar FREVO optimerar. Simulatorn loggar sedan prestationsmåttet, som evaluateCandidate utvärderar för att fastställa fitness.

Evolutionär optimering bygger på simulering som ett fundamentalt verktyg, särskilt inom swarm-robotik och cyber-fysiska system. Genom att tillämpa evolutionära metoder, som FREVO-ramverket, kan komplexa beslutsprocesser och hårdvaru-mjukvaru-kodesign utvecklas på ett modulärt och anpassningsbart sätt. FREVO möjliggör konfiguration, komponentval och optimering genom ett användarvänligt gränssnitt.

Utvärdering av fitnessfunktioner kräver ofta många experiment där swarm-medlemmarna samverkar i en miljö lik den operativa. Att utföra dessa experiment med verklig hårdvara är teoretiskt möjligt, men praktiskt omöjligt i stor skala på grund av logistiska och ekonomiska hinder. Särskilt när det gäller svärmar av robotar som inte är massproducerade kan kostnaderna bli orimligt höga. Simulering framstår därför som en oumbärlig metod för att möjliggöra omfattande tester och finjusteringar utan de praktiska begränsningarna av fysiska experiment.

Simulering gör det möjligt att analysera och förstå dynamiken i svärmsystem under realistiska, men kontrollerade förhållanden, och ger samtidigt forskare möjlighet att experimentera med olika strategier och parametrar kostnadseffektivt. Genom agentbaserade och multi-agent modeller kan stora och komplexa svärmar studeras i detalj, och olika simulatorer och plattformar erbjuder olika möjligheter och begränsningar vad gäller skalbarhet, exakthet och tidsåtgång. Praktiska aspekter, såsom att hantera stora simuleringar med begränsade resurser, gör simulering särskilt värdefull för forskare med små budgetar.

Det är emellertid viktigt att inse att simulering inte är en fullständig ersättning för verkliga tester. Modellernas begränsningar i att exakt återskapa verkliga miljöer, såväl som oförutsedda fysiska faktorer, kan påverka resultaten. Därför bör simulering ses som ett komplement till fysisk hårdvaruutveckling och experiment. Integration av simulering med experiment möjliggör en verifiering av resultaten och en förbättrad förståelse av systemens beteenden. Framväxande teknologier som artificiell intelligens och maskininlärning bidrar också till att revolutionera simulering, både genom att förbättra modellernas realism och genom att möjliggöra snabbare och mer träffsäkra optimeringar.

Att förstå denna balans mellan simulering och verkliga experiment är avgörande för att kunna driva utvecklingen av cyber-fysiska svärmsystem framåt på ett kostnadseffektivt och innovativt sätt. Exempel som bioinspirerade aggregationstekniker såsom BEECLUST visar hur olika simuleringsramverk kan användas för att fördjupa kunskapen om svärmbeteenden och skapa robusta system trots tekniska och ekonomiska begränsningar.

Det är väsentligt att inse att simulering också ställer krav på noggrann modellering och kalibrering för att resultat ska bli relevanta. Den vetenskapliga processen kräver kritisk granskning av simuleringsantaganden, kontinuerlig validering mot experimentella data och en medvetenhet om vilka aspekter av verkligheten som kan vara svåra att fånga. Det är också viktigt att integrera simulering i en iterativ utvecklingsprocess där lärdomar från fysiska experiment återkopplas och förbättrar simuleringsmodellerna.

Slutligen bör man förstå att utvecklingen av svärmsystem ofta rör sig i ett komplext samspel mellan hårdvara, mjukvara och miljö, där simuleringsverktyg spelar en avgörande roll för att hantera denna komplexitet och för att påskynda innovationer i fältet.

Vilka typer av svärmrobotplattformar finns det och hur används de?

Svärmrobotik är ett snabbt växande forskningsområde som fokuserar på användning av många små robotar som samarbetar för att utföra komplexa uppgifter. De olika typerna av svärmrobotplattformar inkluderar markbaserade robotar (UGV), luftburna robotar (UAV), obemannade ytfartyg (USV) och obemannade undervattensfartyg (UUV). Här presenteras en uppdaterad översikt över några av de mest använda plattformarna för forskning och utbildning inom svärmrobotik.

En av de mest kända plattformarna är Kilobot-svärmen, som består av små robotar med en diameter på endast 33 mm. Dessa robotar använder vibrationsmotorer för rörelse och kommunicerar via IR-ljus, som reflekteras från marken. Kilobots har använts för att genomföra självsammansättningsuppgifter, där robotarna samlas i olika former för att simulera en enklare form av svärmintelligens. Plattformen är tillgänglig både som öppen källkod och kommersiellt. Ett annat exempel är Jasmine, en plattform som utvecklades för att genomföra storskaliga experiment med svärmrobotik. Jasmine är utrustad med sensorer för beröring, avstånd och färg, vilket möjliggör komplexa interaktioner mellan robotarna.

Alice är en annan plattform som har liknande mål, men med ännu fler sensorer, såsom linjära kameror, som gör det möjligt att genomföra mer avancerade experiment. Därutöver har en rad andra plattformar, såsom AMiR, Colias och Mona, utvecklats för att bygga vidare på varandras funktionalitet och erbjuda olika forskningsmöjligheter. Dessa plattformar kan vara tillgängliga både som öppen källkod och kommersiellt beroende på användarens behov.

En annan intressant plattform är R-One, som är designad för att användas i experiment kring svärmintelligens. Den använder ett kamerasystem för att möjliggöra exakt lokaliseringsspårning av robotarna i en svärm och kan kopplas till servrar för att utföra experiment. Elisa-3-plattformen erbjuder också autonom laddning via en laddstation, vilket gör det möjligt för robotarna att arbeta under längre perioder utan mänsklig inblandning.

Khepera IV är en plattform som är särskilt lämplig för inomhusapplikationer och erbjuder en rad avancerade tekniska funktioner som en Linux-kärna, färgkamera och trådlös kommunikation via WLAN och Bluetooth. Den är även utrustad med sensorer för accelerometer, gyroskop, mikrofon och RGB-LED-lampor. Denna mångsidighet gör den till en idealisk plattform för forskning i olika svärmrobotikscenarier.

För de som vill experimentera med svärmrobotik på distans erbjuder Georgia Tech:s Robotarium en innovativ lösning där användare kan ladda upp kod och styra en stor svärm robotar från vilken plats som helst. Robotarna är utrustade med olika sensorer för att utföra uppgifter som att navigera och samla data. Denna plattform är ett exempel på hur fjärrstyrning av robotar kan möjliggöra mer tillgänglig forskning för en bredare publik.

De mindre, mer utbildningsinriktade plattformarna, såsom e-puck och Thymio II, erbjuder en bra introduktion till robotik genom att vara både programmerbara och utrustade med olika sensorer för att förstå och reagera på omvärlden. E-puck och dess efterföljare, e-puck2, används ofta i utbildningssyfte, medan Thymio II är ett utmärkt verktyg för att lära sig grundläggande programmering och robotbeteenden.

En mer avancerad plattform är Xpuck, som bygger på e-puckens design men har mycket högre processorkapacitet, vilket gör den mer lämpad för uppgifter som bildbehandling och spårning med ArUco-markörer. Pheeno är en annan plattform som är både öppen källkod och anpassningsbar för specifika forskningsbehov. Plattformen använder IR-sensorer för att interagera med miljön och kan utvidgas med olika moduler för att passa användarens krav.

Spiderino är en sexbenad robot som härmar en spindels rörelsemönster. Den är baserad på en leksaksmodell, som har modifierats för att inkludera en Arduino-mikrokontroller och flera sensorer för att styra roboten. Denna plattform ger en intressant inblick i hur insektsliknande robotar kan användas i svärmrobotik, där olika beteenden och interaktioner mellan robotarna är viktiga.

Slutligen, I-Swarm-projektet har som mål att utveckla mikroskopiska robotar för svärmbruk. Dessa robotar är mycket små (endast 3 × 3 × 3 mm) och drivs av solenergi, vilket gör dem lämpliga för mikromanipulationer i svärmformat. För att uppnå detta har forskare försökt bygga upp till 1000 sådana robotar för att kunna genomföra experiment i mycket små skala.

Utöver de tekniska specifikationerna är det också viktigt att förstå att svärmrobotik handlar om att efterlikna naturens fenomen, där stora grupper av enheter kan samarbeta för att lösa problem utan att behöva central styrning. Detta skapar nya möjligheter för autonomi och effektivitet i robotens beteenden. För forskare och ingenjörer är det viktigt att kunna balansera mellan individuella robotars autonomi och kollektivt samarbete för att skapa robusta svärmar.