Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial Internet of Things >> Sensor

Kunstmatige intelligentie in auto's — Inside the Brains

Autonome voertuigen (AV's), of zelfs voertuigen met geavanceerde rijhulpsystemen (ADAS), vertrouwen op gegevens van veel sensoren - meerdere camera's, lidar, radar en soms zelfs sonar. Omgaan met de datastromen die afkomstig zijn van deze reeks sensoren, is een enorme en tegelijkertijd kritieke taak. Al die gegevens moeten in realtime worden omgezet in informatie om te worden gebruikt om de auto veilig te besturen, minstens zo goed als wanneer een perfecte menselijke bestuurder de controle zou hebben. “Op de weg moeten menselijke chauffeurs op hun hoede zijn voor hun huidige omgeving, interactie hebben met andere chauffeurs en beslissingen nemen. Net als menselijke bestuurders moeten AV's ook waarnemen, communiceren en beslissingen nemen. Verder moeten AV's een goede relatie opbouwen met hun passagiers.” 1

Deze functies zijn afhankelijk van kunstmatige intelligentie (AI) om de gegevens van de verschillende sensoren te assimileren en te combineren voor een onmiddellijk beeld van het voertuig en zijn dynamische omgeving - het proces dat sensorfusie wordt genoemd. Optimaal voor gebruik in de auto-industrie, maakt de AI gebruik van diepe neurale netwerken (DNN's). Gemodelleerd naar de manier waarop informatie wordt verwerkt door het menselijk brein, leren DNN's hoe ze de echte wereld van autorijden kunnen doorkruisen door te leren van ervaring, in plaats van door een programmeur te vertellen wat ze moeten doen. De DNN werkt door meerdere invoer te accepteren, er verschillende gewichten aan toe te kennen en gevolgtrekkingen te trekken. Het vereist een extreem goed presterend en toch energiezuinig computerplatform om dat allemaal in "realtime" te kunnen doen. Dit kan worden versneld door een verwerkingsversneller te gebruiken.

AI in actie brengen

Om erachter te komen wat er nodig is voor een goed presterend platform voor AI in de auto-industrie, heb ik Gil Abraham van CEVA, Inc. geïnterviewd over hun tools om het te implementeren.

CEVA's Vision and AI Business unit heeft wat Abraham drie pijlers noemde:NeuPro-M, de AI-processor; SensPro, een hoogwaardige digitale signaalprocessor (DSP) met sensorhub; en CDNN-Invite-software. Met CDNN-Invite kunnen fabrikanten beide hun eigen gepatenteerde DNN-versnellers invoeren om samen te werken met CEVA's NeuPro-M AI-processor en de SensPro DSP en te genieten van één uniform systeem dat centraal kan worden beheerd door dezelfde geheugen- en stroomsoftware-ontwikkelingskit ( SDK).

De SensPro DSP kan signaalverwerking uitvoeren op inputs van veel verschillende sensoren, waaronder meerdere lidars, radars en camera's, en ze convolueren - een proces dat sensorfusie wordt genoemd en dat de input van vele sensoren verzamelt. Dit is van cruciaal belang voor gebruik in de auto-industrie, omdat elke sensor zijn eigen beperkingen heeft.

Bijvoorbeeld:

  • Camera's kunnen een zeer hoge resolutie hebben, zodat ze fijne details kunnen waarnemen. Maar u hebt er meestal meer dan één nodig om dode hoeken van voertuigen, achteraanzicht, surroundweergave en verschillende camera's aan de voorzijde met verschillende brandpuntsafstanden te dekken. Elke camera levert een aparte datastroom. Er kan ook niet op worden vertrouwd dat camera's 's nachts of als ze in de zon staan, goed functioneren.

  • Radar functioneert 's nachts goed en kan afstandsmetingen leveren. Maar het heeft niet voldoende resolutie om de precieze locatie van een object waar te nemen of onderscheid te maken tussen meerdere objecten die dicht bij elkaar staan. Het kan stilstaande of langzaam bewegende objecten niet detecteren en kan ook de "semantiek" van de scène niet detecteren:kleur en vorm van objecten - daarvoor heb je camera's nodig.

  • Lidar fungeert als zijn eigen lichtbron, zodat hij zowel in het donker als bij daglicht goed presteert. Het biedt ook snelle en nauwkeurige meetgegevens met een resolutie die hoog genoeg is voor nauwkeurige realtime detectie van vrije ruimte terwijl meerdere objecten binnen een scène worden gevolgd. Maar om genoeg lidar-datapunten te hebben, heb je vijf of zes van deze dure apparaten nodig die op een voertuig zijn gemonteerd.

De SensPro DSP kan hier input van ontvangen, evenals time of flight (ToF) sensoren, traagheidsmeeteenheden (IMU's), efficiënt verwerkende algoritmen voor gelijktijdige lokalisatie en mapping (SLAM) en ze allemaal gebruiken, kan "contextueel bewustzijn" creëren - een volledig beeld van de situatie van de auto en zijn omgeving. U kunt ook een speciale instructieset in de hardware toevoegen om indien nodig extra versnelling van andere specifieke verwerkingen te krijgen.

Het systeem integreren

NeuPro-M pakt veel van de belangrijkste uitdagingen van autonome voertuigfuncties aan, waaronder schaalbare bediening met hoge snelheid en lage latentie, laag bedrijfsvermogen, hoge beveiliging en het vermogen om te voldoen aan de functionele vereisten van de ISO 26262-norm voor veiligheidsgerelateerde elektrische/elektronische systemen in productievoertuigen voor de weg. Het is ook schaalbaar, dus het kan bijvoorbeeld worden gebruikt voor afzonderlijke sensoren, clusters van sensoren in een zone, of het kan zelfs worden ingebouwd als onderdeel van de motorregeleenheid (ECU) van de auto.

De architectuur van een hoogwaardig automotive AI-platform

De functie van de CEVA NeuPro-M AI-processor is het nemen van rijbeslissingen op hoog niveau. Deze beslissingen zijn gebaseerd op de DNN-inputs die situationele informatie geven, zoals:Zijn er tegenliggers; blijft de auto in de rijstrook; wat is de absolute locatie (SLAM)?

De NeuPro-M AI-processor is de beslisser over welke acties moeten worden ondernomen, gezien de informatie die hij ontvangt. AI vereist een enorm aantal berekeningen om beslissingen te nemen, en deze moeten bijna in realtime worden gedaan. Er is dus een krachtige processor voor nodig. Voor automobieltoepassingen is het ook noodzakelijk om het stroomverbruik te minimaliseren - naarmate het aantal berekeningen toeneemt en de tijd om ze uit te voeren afneemt, neemt het verbruikte vermogen toe. De maatstaf voor de prestaties van de processor kan in één getal worden samengevat:tera-bewerkingen per seconde per watt (TOPS/watt) — hoe hoger het getal, hoe beter de prestaties. De energie-efficiëntie van de NeuPro-M is 24 TOPS/watt, wat aanzienlijk hoger is dan de meeste andere AI-processors in de auto-industrie.

Beveiliging is van het grootste belang - je kunt zelfs zeggen dat beveiliging en veiligheid de belangrijkste vereisten zijn voor automobieltoepassingen. De AI-processor in een autonoom voertuig is de verantwoordelijke bestuurder. De neurale netwerken die de AI-verwerking uitvoeren, kennen gewichten toe aan elk van hun invoer, en die gewichten zijn kwetsbaar voor kwaadwillige manipulatie. Beveiligingssystemen zijn daarom een ​​integraal onderdeel van de processor om zich tegen die aanvallen te beschermen.

Prestaties optimaliseren

Voor het optimaliseren van de prestaties is het belangrijk om te beseffen dat hoe snel de processor ook is, het systeem in een bottleneck kan komen vanwege bandbreedtebeperkingen op de verplaatsing van informatie naar de processor, voornamelijk vanwege systeeminterfacebeperkingen in termen van geheugen. De rekeneenheden werken veel sneller dan de tijd die nodig is om de enorme hoeveelheden gegevens op te slaan en op te halen om het geheugen te informeren. Dit kan onder andere worden aangepakt door een continue stroom gegevens naar de processor te sturen in plaats van te wachten op voldoende informatie om een ​​bepaalde berekening uit te voeren.

Een andere manier waarop de prestaties kunnen worden geoptimaliseerd, is door adaptief te zijn - door een modulaire adaptieve topologie te gebruiken. De processortopologieën kunnen worden geoptimaliseerd voor het verwerken van verschillende soorten sensoren en het uitvoeren van verschillende soorten bewerkingen. Een functie kan bijvoorbeeld zijn om de efficiëntie van de aandrijflijn te optimaliseren, wat veel wiskunde vereist, of aan de andere kant kan het slechts een enkele sensor verwerken.

Als u iets heel nauwkeurig moet berekenen, kunt u rekenen met drijvende komma gebruiken in plaats van vaste punten in een vectorprocessor. Een andere manier om bandbreedtevermindering aan te pakken, is door de gegevens te comprimeren, zodat u niet alles in het systeem hoeft te verplaatsen. Dit zijn softwareoplossingen, maar je moet ook kijken naar het optimaliseren van de DSP's en de AI-processor, door een diepe duik te nemen om alle knelpunten in elk van deze gebieden aan te pakken.

Parallelle verwerking

De NeuPro-M (NPM)-processor bestaat uit drie delen (zie afbeelding 2):de hoofdcontroller; het gemeenschappelijke NPM-subsysteem; en de NPM-motor. De processor kan één tot acht motoren bevatten, die kunnen worden geselecteerd om aan de behoeften van een bepaalde toepassing te voldoen. De processorwerking kan worden geschaald door het aantal engines te kiezen. "Zo krijg je steeds meer pk's", zei Abraham.

Het gemeenschappelijke NPM-subsysteem staat voortdurend in verbinding met de NPM-engine. Dat kanaal wordt gecontroleerd om ervoor te zorgen dat het geen bottleneck wordt - om ervoor te zorgen dat gegevens het systeem binnen blijven stromen. De inferencing AI werkt met twee datasets:de data zelf, misschien een afbeelding; en het gewicht dat op de gegevens wordt toegepast om de gevolgtrekking uit te voeren. Het gemeenschappelijke subsysteem houdt het kanaal open door compressie toe te passen op zowel de gegevens als de gewichten.

Parallelle verwerking kan zowel worden geïmplementeerd door meerdere engines te gebruiken als door gebruik te maken van de coprocessors binnen de engines, die elk vijf coprocessors en een gedeeld intern geheugen bevatten.

Voorbeeld — Een voertuig besturen met een viermotorige NPM

Figuur 3 illustreert een eenvoudige automotive toepassing van parallelle verwerking. De linkerkant van de afbeelding toont een afbeelding van de weg, die is vastgelegd door een camera aan de voorzijde. Een processor in het voertuig blokkeert de tegenoverliggende rijstrook om de berekeningen te vereenvoudigen die nodig zijn om het voertuig gecentreerd op zijn kant van de weg te houden en de afbeelding in het geheugen op te slaan. Het opgeslagen beeld wordt vanuit het geheugen van het voertuig ingevoerd in het gemeenschappelijke NPM-subsysteem, dat in dit voorbeeld vier motoren bedient. De software bepaalt vervolgens wat de use case is - wat nodig is - en hoe het beeld moet worden verdeeld om maximale prestaties te bereiken met minimaal vermogen (hoog gebruik) voor de gewenste functie. In dit geval verdeelt de NPM het beeld in vier delen, met enige overlap, en elk deel wordt naar een andere engine gestuurd. De AI-inferentie wordt vervolgens uitgevoerd op elk van de vier segmenten van de weg. De vier segmenten worden vervolgens weer aan elkaar genaaid in het subsysteemgeheugen, van waaruit het wordt uitgevoerd naar de perceptielaag elders in de SoC, voor het uitvoeren van de gewenste taken.

Dit voorbeeld illustreert de twee niveaus van parallelle verwerking, één door de vier engines te gebruiken om aan verschillende segmenten van het beeld te werken en binnen elke engine, parallelle verwerking door de berekeningen te delen met de vijf interne coprocessors.

Optimalisatie via software

AI functioneert voornamelijk door convolutie, wat een wiskundige bewerking is op twee functies die een derde functie produceert die uitdrukt hoe de vorm van de ene wordt gewijzigd door de andere. De wiskundige Shmuel Winograd innoveerde een nieuwe methode om convolutie uit te voeren in de helft van het gebruikelijke aantal stappen. CEVA implementeerde dit theoretische idee in hun processors om dezelfde precisie te bereiken als zou zijn bereikt met normale convolutie, maar met een versnelling van bijna 2x - een prestatiewinst met een vermindering van het vermogen. Dit kan in elk van de vijf coprocessors in de engine.

Een andere truc is om verschillend te werken met verschillende datatypes, afhankelijk van welke optimaal is voor een bepaalde toepassing. Simultane lokalisatie en mapping (SLAM) vereist bijvoorbeeld een zeer hoge nauwkeurigheid, dus u moet rekenkunde met drijvende komma gebruiken. Voor andere toepassingen zou een vast aantal bits perfect zijn. Op deze manier kan de autofabrikant de rekenmethode kiezen die het beste werkt voor elke functie binnen het voertuig.

Door zowel softwaremanipulatie als hardware-optimalisatie te gebruiken, kunt u een aanzienlijke versnelling krijgen - tot 16x met NeuPro-M volgens Abraham.

Samenvattend

Dit was een overzicht van de interne werking van een bepaalde AI-processor, aangezien deze de gegevens van een verscheidenheid aan sensoren verwerkt - radar, lidar, sonar, camera's - en beslissingen neemt. De NPM is een heterogene processor — hij kan op verschillende datatypes werken en zijn werking optimaliseren zoals gemeten door TOPS/watt door gebruik te maken van twee niveaus van parallelle verwerking en een gericht ontwerp van de software.

  1. Fang Chen, PhD, SAE Edge Research Report — Onopgeloste problemen op het gebied van voertuigautonomie, kunstmatige intelligentie en mens-machine-interactie.

Dit artikel is geschreven door Ed Brown, redacteur van Sensor Technology. Neem voor meer informatie contact op met Ed via Dit e-mailadres wordt beveiligd tegen spambots. U heeft Javascript nodig om het te kunnen zien. of bezoek hier .


Sensor

  1. Is kunstmatige intelligentie fictie of rage?
  2. Waarom het internet der dingen kunstmatige intelligentie nodig heeft
  3. Kunstmatige intelligentie speelt een grote rol in het IoT
  4. Kunstmatige intelligentie versus machinaal leren versus diep leren | Het verschil
  5. AI:vind het juiste gebruik voor kunstmatige intelligentie
  6. Video:de impact van kunstmatige intelligentie (AI) op productie en bewerking
  7. Kunstmatige Intelligentie Robots
  8. AI-assistent:de toekomst van de reisindustrie met de toename van kunstmatige intelligentie
  9. De impact van sensoren in de productie
  10. Kunstmatige intelligentie, de beste verdediging in cyberbeveiliging
  11. Big data versus kunstmatige intelligentie