BRIAN Scassellati: Welcome till CS50 AI videoserien. Mitt namn är SCAs. Och idag, vi kommer att vara talar om själv köra bil. Nu är jag lite pinsamt att erkänna att när Jag var ett barn en stor del av min barndom kretsat kring David Hasselhoff. Nu, detta var innan han var inblandad i något som USA: s Got Talent, eller deltar som en livräddare i Baywatch, eller redan innan han hade sorts historia som en popstjärna i Tyskland. I min barndom, David Hasselhoff var manliga biroll på en välkänd tv serie som kallas Knight Rider. Och jag säger att han var manliga biroll, eftersom verkligen stjärnan i denna show var en bil, en Trans Am namngiven Kit, som kunde köra av sig själv. Kit var fantastisk. Det kan prata med dig. Det skulle kunna lösa problem. Det kunde köra överallt. Den hade också lasrar och raketer. Så det var en fantastisk fordonet att starta med. Men det var vetenskapen fiktion av tiden, autonoma bilar som kan fatta beslut, som kunde köra längs vägen. Och vid varje punkt i en av dessa episoder, David Hasselhoff skulle hamnar i trubbel och bilen skulle börja köra och gå och rädda honom. Det var vår science fiction. Även i bara de senaste 30 år, som science fiction har gått från på TV och på skärmen till verklighet, till kommersiella produkter. Idag ska vi prata om hur det är att autonoma fordon är verkligen kunna gå och köra och helt otroliga saker. Men låt oss börja med historien. Eftersom dessa själv köra bil kom inte från ingenstans. Och faktiskt, själva första själv köra bil, det verkligen första inflytelserika forskningsprojekt, kom ut ur ett projekt som kallas Navlab. Navlab var ett projekt som sträckte sig nästan två decennier vid Carnegie Mellon Universitet. Och de byggde en mängd av olika fordon som började titta som små minibussar, som var Humvees, som var till slut bara sedaner, och minibussar, även stadsbussar. Och dessa olika enheter har sensorer i dem, hade beräknings system tas i dem, så att de kunde styra och bromsa, och påskynda autonomt allt på egen hand. Nu, var dessa system mycket primitiv i början. Och de åberopas mycket specifika körfältsmarkeringar. Så det mest imponerande system som de hade byggt var en del av Navlab fem. Och 1995, detta fordon, var det minibuss, körde från Pittsburgh till San Diego, nästan 3.000 miles. Och 98% av tiden, det enda sak att styra styr var datorn. 98% av tiden, var det helt autonom eftersom det körde nästan från kust till kust. Nu är det otroligt imponerande. Och när vi tänker på det, det finns mycket för oss att fundera över. Vilka typer av sensorer var det med? Vilken typ av beslut var det verkligen gör? Vad var det andra 2% av tiden? Vi ska försöka få till några av dessa frågor i dag. Och när vi tittar på dem, Vi ska försöka att avslöja vad det är som strukturen under och hur beräkningen är direkt köra dessa program. Nu, Navlab var en enorm framgång. Och det var grunden för alla våra moderna tankar om autonom fordon. Men själv köra bil inte riktigt blivit kända och populära tills 2005 DARPA, som en del av deras stora utmaning ansträngning, sätta ihop ett program för att försöka att bygga ett självstyrande fordon. Och de gjorde detta en utmaning. De satte en $ 2 miljoner pris ute med tanken att några riktigt smarta forskning laget skulle komma och vara kan göra anspråk på detta $ 2.000.000 pris. Nu, priset var inte kommer att bli lätt att få. För att få den pris, skulle du ha att bygga ett fordon som utan någon mänsklig inblandning kunde köra 150 mil kurs genom svår terräng i öknen. Och det var en hel del arbete. Och på den tiden trodde folk att de var verkligen galen i att göra detta. Så det första mötet i den stor utmaning var 2004. Och ur den 150 mil naturligtvis längst, det bästa laget att de hade, gick omkring 11 miles innan systemet misslyckades helt. Nu, för att ge dig en idé om hur svårt det är, att 11 miles sågs som en absolut fenomenala framgång. Men DARPA ville ha mer. Och så de erbjöd samma Priset följande år. Och bara ett år senare, tekniken hade avancerat till den punkt där inte bara en systemet kunde slutföra kursen, men fem olika roboten bilar slutade den kursen. Den snabbaste en färdig 132 miles i enlighet med sju timmar. Det var en robot som heter Stanley. Stanley byggdes av Stanford racing team. Och som ni kan se på toppen, hade ett antal olika sensorer upp på huv, upp på toppen av fordonet, och alla i hela. Med en kombination av kameror, infraröd och vanlig ljus, med hjälp av radar och sonarsystem ombord, med hjälp av laseravståndsmätare för att detektera hinder, detta fordon kunde att navigera över mycket ojämn terräng självständigt styrning, självständigt bryta, autonomt applicering gasen. Det var en verklig bedrift. Idag ser vi att detta händer även som en större skala. Många av er har hört talas om Googles själv kör bil. Och dessa fordon har loggat över 1,2 miljon miles i de senaste åren, ingen mänsklig inblandning som helst. Faktum är att varje gång att Google bilen har varit inblandad i någon form av olycka, det antingen varit eftersom det var parkerad, eller eftersom vissa människa var så intresserade av vad det gjorde att de körde in i bilen. Så med alla dessa system, Vi ser denna komplexitet växer fram. Och i detta mycket kort tid, vi har borta från sfären av vetenskapen fiktion till kommersiell verklighet. Så låt oss börja ta dessa system mellanrum. Låt oss försöka förstå hur det är att de arbetar, vad gör de egentligen gör. För att göra det, ska vi använder samma typer av kompetens att vi har pratat om i klassen. När du ser ett problem, vad vi ska försöka göra är att försöka att sönderdela den. Börja med den enklaste form som vi kan. Och sedan bygga utåt från den enkla formen. Så som leder oss till frågan, vad är den enklaste formen av autonoma körning? Vid vilken tidpunkt är en dator faktiskt har kontroll över min bil? Nu, kan svaret överraska dig dit. Eftersom nästan alla fordon som säljs idag i USA eller Europa eller någonstans faktiskt är delvis ett autonomt åkdon. Använda system som låsningsfria bromsar, dessa system är riktigt autonoma. Det vill säga när jag kliver på paus, vad jag gör är jag ber bilen vänligen bryta nu. Jag är faktiskt inte direkt trampa på något som applicerar bromsbelägget till rotorn. Och hela poängen med låsningsfria bromsar är att vid någon tidpunkt längs vägen Jag kommer att kunna trycka ned på rasten. Men bilen kommer att känna igen att hjulet slirar. Och det kommer att strypa att break-signal, så att bromsen inte låser upp. Dessa låsningsfria bromssystem är på ett sätt, fatta beslut för dig. Och egentligen, det är de som är ansvarig för bromssystemet. Du gör en förfrågan. Men du är faktiskt inte har kontroll. Så vi kan prova att erkänna detta och dela upp det i de ingående delarna. Och vi kunde tänka på det som lite pseudokod kod. Det vill säga, medan jag är trampa på bromsen, medan jag sätta press till bromspedalen, låsningsfria bromssystem kontrollerar kontinuerligt att se är var och en av dessa hjul halka. Och med hjälp av några inre sensorer i bilen, de är detektera huruvida eller inte hjulet är faktiskt stoppa eller om det glider. Och om det är glidande, antilåsnings bromssystem frigör bromsarna, och sedan låter det gå. Och när hjulen stannar glidande, ånyo det dem. Det vill säga, jag gör en förfrågan. Jag trampa på bromsen. Men själva brytningen är att beslutas av denna lilla bit av programvara. Så egentligen, alla våra bilar är redan autonoma fordon. Nu, det är inte vad vi tycker om när vi tänker på autonoma fordon. Vi tänker på bilar där jag kan ta mina händer ifrån ratten, och vi kan bara låta det gå. Nu, som inte händer på en stor skala överallt ännu idag. Men det finns bitar av att det börjar att komma in i den kommersiella sektorn. Sedan 2003, Toyota, och efter att många andra tillverkare, alla från Ford och Lincoln till Mercedes Benz, har att erbjuda någon typ intelligenta parkeringsassistans. Det vill säga, det finns sensorer i bilen, typiskt ultraljudsgivare för korta detektionsområde av hinder, som kan känna igen där Det finns bilar, fordon, människor, någon typ av hinder runt fordonet. Du trycker på en knapp på instrumentbrädan och be bilen, vänligen parkera nu. Du utfärda en begäran. Den autonoma system tar sedan över och använda dessa sensorer är i stånd att vägleda bilen in en särskild parkeringsläge. I vissa av dessa modeller, det finns en fickparkering version och stöd till en plats version. Och var och en av dessa olika tillämpningar väcker en annan mjukvara. Nu, mjukvara som är inte något konstigt eller är inte något som du kan inte förstå på denna punkt. Det är bara efter dessa sensorsignaler. Om det finns något att nära på vänster sida och jag har utrymme till höger, då jag ska styra en liten bit, så att jag kan gå över till höger. Många av de tidiga parkeringssystem skulle kontrollera styrvinkeln, men kräver att användaren, den mänskliga föraren, att faktiskt trampa på gaspedalen eller trampa på rasten. Modernare system faktiskt styr som helt av sig själva. Så t ex i en Mercedes S Class fordons höger Nu kan du dra tillsammans där du vill parkera, tryck på en knapp, och det kommer att parallellt park för dig utan händerna på ratten eller fötterna på pedalerna. Nu alla dessa system lita på sensorerna att de bygger i dessa fordon idag. Och om vi använder dessa sensorer för att upptäcka eventuella hinder och varna användaren eller om vi använder dessa sensorer för att upptäcka ett hinder, och sedan automatiskt styra bort, det är bara en fråga om programvara. I själva verket bara ett fåtal veckor sedan, Tesla, som är byggt fantastiska fordon med alla dessa sensorer i dem i flera år nu, utfärdade en programuppdatering. Och det programuppdatering tillåts fordonen för första gången att ange en automatisk körning mer, en autopilot de kallade det. Detta auto pilot får fordonet för att upptäcka kollisioner och automatiskt bryta, för att följa ett annat fordon det är framför den, matcha hastighet, att hålla sig inom körfält, att se med kameror, både infraröd och synlig ljus, och för att kunna att säga om eller inte du driver ut från körfältet eller inte, justera styrningen på lämpligt sätt, och till och med att byta fil när användarsignaler. Alla dessa olika funktioner var bara en fråga om en programuppdatering. Det vill säga, alla dessa användare vaknade en morgon att hitta denna nya programvara tillgängliga i sina fordon. Eftersom givarsystemen var redan där. Nu, i alla dessa fall, vi ser dessa program baserade system blir mer och mer utbrett. De är ute i kommersiella produkter redan. Och framtiden är att vi är kommer att se mer av det. I själva verket, just detta år, var Freightliner kunna presentera en autonom lastbil, en autonom traktor, att de testar lagligt på väg i Nevada. Dessa fordon, återigen, följa en förutbestämd rutt. De stannar inom sitt körfält. De accelerera och bromsa in svar hinder eller trafikförhållanden. Och de även lyda några av de andra utsmyckningar av vägen. Alla dessa system är blir mer och mer komplexa. Men de är fortfarande inte helt självständiga. De är fortfarande inte ganska gör allt. Det vill säga, de är fortfarande kräver en mänsklig förare att vara närvarande för att göra vissa beslut på hög nivå. Och en av de saker som vi är kommer att se under de kommande fem åren finns en mängd juridiska och etiska frågor som kretsar kring programvaran byggs för dessa förarlösa bilar. Hur kommer det sig att en förarlös bil ska reagera om det är omgiven av en grupp människor? Vad händer om förar bil sladd på väg och du kan styra mot en folkmassa 10 personer eller en folkmassa av 7 personer? Vad ska bilen göra? I samtliga dessa fall finns det en rik olika frågor som ska ställas. Och de är inte bara programvara frågor, juridiska frågor, etiska frågor, filosofiska frågor. Och de är sådana som vi som en samfundet måste ta itu med. Så jag lämnar er med en sista tänkte, detta från Randall Munroe, av XKCD, en av mina favorit serier. Det är inte bara det att vi kommer att se dessa fordon byggs och att utformad med programvara. Men vi kommer att se människor försöker utnyttja dem också. Hur kommer det att bli när någon kan, via Wi-Fi, ladda ner en patch eller överföra virus till din bil? Vilka typer av saker kommer att hända då? Den här är lite mer lekfull ett exempel. Men det är dessa frågor vi kommer att ta itu med snart. Tack för att gå med mig. Jag hoppas att du har haft det. Och vi ses nästa gång.