Tarkvaraarhitektuur kujutab endast süsteemi kõrgetasemelist struktuuri, kirjeldades selle komponentide korraldust, nende suhteid ning nende disaini ja arengut reguleerivaid juhtpõhimõtteid. Autonoomsetes süsteemides määratleb arhitektuur, kuidas taju-, planeerimis- ja juhtimismoodulid interakteeruvad, et saavutada autonoomia, säilitades samas ohutuse, töökindluse ja jõudluse 1). Autonoomse süsteemi tarkvaraarhitektuuri esmane eesmärk on tagada:
Autonoomsete süsteemide arhitektuurne projekteerimine järgib tavaliselt mitmeid universaalseid põhimõtteid:
===== Vahevara ja raamistikud =====Vahevara on selgroog, mis ühendab erinevaid mooduleid, tagades tõhusa andmevahetuse ja sünkroonimise. Autonoomsete sõidukite silmapaistvad vahevarasüsteemid hõlmavad järgmist:
| Kiht | Funktsioon | Näited |
|---|---|---|
| Riistvara abstraktsioon | Liides andurite, täiturmehhanismide ja madala taseme juhtimisega | Andurite draiverid, mootorikontrollerid |
| Taju | Anduri töötlemata andmete töötlemine tähenduslikeks keskkonnaesitlusteks | Objekti tuvastamine, SLAM |
| Otsuste tegemine / planeerimine | Eesmärkidel ja piirangutel põhinevate radade või tegevuste loomine | Teede planeerimine, käitumispuud |
| Kontroll / Täitmine | Tõlgi plaanid täiturmehhanismide käskudeks | PID, MPC, madala taseme juhtkontuurid |
| Suhtlemine / koordineerimine | Andmete jagamine süsteemide või autoparkide vahel | Sõiduk-sõiduk (V2V), sülemi koordineerimine |
Sõltuvalt funktsionaalsetest ülesannetest jagatakse süsteemi arhitektuur mitmeks kihiks abstraktseks funktsionaalsuseks ja tehniliseks teostuseks, nagu eespool kirjeldatud. Allpool on üldise arhitektuuri skeem, et saada paremini aru erinevate kihtide tüüpilistest ülesannetest.
===== AI ja masinõppe roll =====Kaasaegsed autonoomsed süsteemid integreerivad tajumiseks ja otsuste tegemiseks üha enam masinõppe (ML) tehnikaid. Sügavad närvivõrgud võimaldavad objektide reaalajas tuvastamist, semantilist segmenteerimist ja trajektoori ennustamist ((LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444)). Kuid need andmepõhised meetodid toovad kaasa ka arhitektuurilisi väljakutseid:
Seega kasutavad paljud süsteemid hübriidkujundusi, kombineerides traditsioonilist reeglipõhist või dünaamikapõhist juhtimist andmepõhiste järeldusmoodulitega, tasakaalustades tõlgendatavust ja kohandatavust.