Autonomna vozila kod mnogih i dalje izazivaju osjećaj nesigurnosti. No, ovaj tekst mogao bi pomoći da se rasvijetli proces iza razvoja i testiranja sigurnosno-kritičnih sustava u vozilima budućnosti.
Autoindustrija se danas nalazi na pragu jednog od najvećih tehnoloških napredaka u području transporta – razvitku autonomnih vozila. Koliko je taj napredak značajan, pokazuje i činjenica da u njemu, osim same autoindustrije, sudjeluju i predstavnici iz drugih industrija kao što su Waymo, Apple, Baidu, Uber, Mobileye, Nvidia te mnoge druge manje, specijalizirane tvrtke.
Uz tehnološku, vrlo je opsežna i društvena dimenzija razvoja autonomnih vozila – od samog stupnja prihvaćenosti tehnologije u društvu pa sve do promjena u zakonodavstvu koje su nužne da bi se autonomna vozila mogla staviti u upotrebu.
Moderna vozila već su kompleksna
Elektronički sustav modernih automobila izuzetno je kompleksan, a s ciljem razvoja autonomnog vozila ta kompleksnost i dalje raste. Broj elektroničkih komponenti u automobilu kao što su senzori, mikrokontroleri i razni aktuatori, povećava se u svakoj idućoj generaciji, a to nužno znači da se povećava i složenost softvera koji kontrolira i upravlja tim komponentama.
Automobili u sklopu projekta „Robotaxi“, na kojem zajednički rade Daimler i Bosch, a kojem je cilj razviti autonomno taksi vozilo, opremljeni su s više od 40 senzora koji se direktno koriste u svrhu autonomnog upravljanja. To uključuje višestruke mono i stereo kamere, radare, ultrazvučne senzore, LiDAR te razne druge senzore koji služe za određivanje pozicije, brzine te smjera kretanja vozila.
Kako se određuje razina rizičnosti sustava?
Kvarovi ili otkazivanje pojedinih sustava u automobilu mogu imati teške posljedice po život i zdravlje ljudi. Takvi sustavi nazivaju se sigurnosno-kritični sustavi (safety-critical system). Primjeri takvih sustava su: zračni jastuci, ABS sustav, parkirna kočnica, sustav svjetala, sustav za zakretanje prednjih kotača. U tu kategoriju ubraja se i sustav autonomnog upravljanja vozilom.
Sigurnosno-kritični sustavi kategoriziraju se u četiri ASIL (Automotive Safety Integrity Level) razine (A, B, C i D). Najmanje rizični sustavi su oni razine ASIL-A, a sustavi razine ASIL-D su sustavi najvišeg rizika. Razina rizičnosti sustava određuje se na temelju tri parametra:
- Vjerojatnost s kojom kvar ili otkazivanje sustava uzrokuje štetu
- Mogućnost kontrole vozila u slučaju kvara ili otkazivanja sustava
- Intenzitet potencijalne štete nastale zbog kvara ili otkazivanja sustava
Tipičan primjer sustava najvišeg rizika (ASIL-D) je sustav zračnih jastuka – intenzitet potencijalne štete u slučaju otkazivanja sustava zračnih jastuka je vrlo visok. Stražnja kamera može se smatrati sustavom razine ASIL-B – iako u slučaju otkazivanja stražnje kamere također može nastati šteta zbog nedostatka uvida u situaciju iza vozila, brzine kretanja vozila unatrag su niske i intenzitet potencijalne štete je nizak.
Kategorizacija sigurnosno-kritičnih sustava omogućuje definiranje različitih pristupa i metodologija za razvoj sustava različitih razina rizika. Što je viša razina rizičnosti sustava, to je proces razvoja rigorozniji, a time i dugotrajniji i skuplji.
Razvoj sustava, ali i testiranje prema V-modelu
Proces razvoja sustava podijeljen je u manje faze prema V-modelu. U početnoj fazi definira se skup zahtjeva koje sustav u cjelini mora zadovoljiti iz perspektive korisnika, bez razmatranja same implementacije sustava. U drugoj fazi specificira se arhitektura sustava, definiraju se pojedine komponente sustava, njihova sučelja i međusobna interakcija. Treća faza uključuje dizajn pojedinih komponenti odnosno jediničnih elemenata sustava.
Svaka od navedenih faza uključuje i definiranje skupa testova kojima će se u kasnijoj fazi razvoja moći provjeriti jesu li specificirani zahtjevi zadovoljeni. Nakon dizajniranja pojedinih komponenti sustava slijedi njihova implementacija.
Po završetku implementacije prelazi se na drugi dio V-modela – testiranje. Proces testiranja vrši se u obrnutom smjeru: najprije se testiraju komponente kao zasebni elementi (jedinični testovi), nakon toga slijedi testiranje interakcije između više komponenata (integracijski testovi) i u konačnici se testira sustav u cjelini (sistemski testovi).
Kod razvoja sigurnosno-kritičnih sustava, standardom su propisane obavezne i preporučene metode za svaku pojedinu fazu V-modela. Na primjer, u implementacijskoj fazi sustava razine ASIL-D zabranjeno je korištenje rekurzije i implicitne konverzije tipa podataka. Kod implementacije sustava razine ASIL-A njihovo korištenje nije zabranjeno, ali je preporuka da se izbjegava.
Kako se definira kriterij prihvatljivosti?
Kod testiranja sustava prvi korak je definiranje kriterija prihvatljivosti. S obzirom na to da se radi o sustavu u kojem se koriste algoritmi umjetne inteligencije te u kojem je nemoguće predvidjeti sve moguće kombinacije vrijednosti ulaznih signala, najviše smisla ima definirati kriterij prihvatljivosti u statističkom obliku.
Uzmimo za primjer flotu od milijun vozila koja je operabilna sat vremena dnevno. Pretpostavimo da je u 1000 dana rada takve flote dozvoljen najviše jedan kvar u sigurnosno-kritičnim sustavima (usporedivo sa stopom grešaka u zrakoplovnim sustavima). Dakle, radi se o maksimalno jednom dozvoljenom kvaru tijekom milijardu sati rada sustava. Uzmemo li u obzir da se tijekom razvoja sustava testovi ponavljaju više puta, postaje jasno da je testiranje sustava na samim vozilima neizvedivo.
Simulacije značajno ubrzavaju testiranje
Jedan od načina kako ubrzati proces testiranja je korištenje simulacija. Cjelokupno simulacijsko okruženje može se podijeliti na više dijelova: modeli za simulaciju okoliša (vrijeme, osvjetljenje…), 3D reprezentacija okoline, modeli ponašanja ostalih sudionika u prometu (automobili, biciklisti, pješaci…), cestovna mreža i infrastruktura, modeli senzora na automobilu, komponente sustava koji se testira te model dinamike automobila.
U primjeru testiranja sustava na stvarnim vozilima tijekom dovoljno dugog perioda može se pretpostaviti da distribucija vrijednosti ulaznih signala sustava odgovara stvarnim situacijama. Kod korištenja simulacijskih okruženja potrebno je definirati skup situacija u kojima se sustav želi testirati te njihovu distribuciju. Ovo su neki primjeri:
- Vrsta prometnice: autocesta, brza cesta, gradske ulice
- Doba dana: dan, noć, sumrak
- Vremenske prilike: snijeg, kiša, magla
- Prometna situacija: raskrižje, spora kolona vozila, parkiranje u garaži
Kad simulacija nije dovoljna
Korištenje simulacijskih okruženja omogućava brža testiranja i otkrivanje grešaka u pojedinim dijelovima sustava tijekom njegovog razvoja, ali takav način testiranja nije dovoljan. Idući korak je korištenje stvarnog hardvera na kojem se izvršavaju algoritmi umjetne inteligencije (Hardware in the Loop, HiL). Okolina vozila i samo vozilo pri tome i dalje ostaju simulirani.
Takav način testiranja omogućuje otkrivanje grešaka u komunikaciji između različitih dijelova hardvera (mikrokontroler, FPGA, DSP…) kao i greške vezane uz predugo izvođenje algoritama i nemogućnosti rada u realnom vremenu.
Sljedeći korak je korištenje stvarnog vozila pri čemu se okolina i dalje simulira te sustav umjesto signala sa stvarnih senzora dobiva signale iz simuliranog okruženja. U ovoj fazi naglasak je na testiranju algoritama koji upravljaju vozilom te na promatranju odziva stvarnog vozila.
Kako tvrtke prikupljaju podatke nužne za treniranje?
Napredak u razvoju simulacijskih alata i modela senzora omogućuje njihovo korištenje i u fazi treniranja algoritama umjetne inteligencije. Podaci za treniranje, kao i podaci za testiranje, trebaju imati odgovarajuću distribuciju raznih prometnih situacija. Sustavi senzora mogu generirati i do 8GB/s te je cijeli proces prikupljanja i upravljanja podacima vrlo kompleksan. Dodatna prednost korištenja simuliranih podataka za treniranje je mogućnost automatske anotacije objekata. Različite firme imaju različite strategije prikupljanja i korištenja podataka.
Tesla se oslanja na preko 300.000 vozila koja kruže po raznim dijelovima svijeta, dok Waymo ima svega nekoliko stotina vozila u ograničenoj regiji pa se zbog toga značajno oslanja na korištenje simulacijskih alata za generiranje podataka.
Uz što veće korištenje autonomne tehnologije, tako će rasti i broj prikupljenih podataka, a time posljedično i sigurnost sustava.
Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.
Pravila ponašanja
Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:
Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.
Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.