Machine learning brengt BMW naar ‘next level quality assurance’

Het zijn voor autofabrikanten spannende tijden waarin veel gebeurt. Ontwikkelingen als elektrisch rijden en autonome auto’s zetten de markt op zijn kop. Hoe kun je al die nieuwe typen auto’s op één lijn fabriceren zonder daarbij fouten te maken? Het is een vraag die BMW al langer bezighoudt. Het begin van het antwoord hebben ze gevonden: het optimaliseren van processen door toepassing van machine learning.

In 2015 richtte BMW een afdeling op voor big data. Het team begeleidt diverse initiatieven om slimmer met data om te gaan. Want data heeft BMW in overvloed: over het productieproces, over klantwensen, over autogebruik en ga zo maar door. Over het eerste onderwerp sprak Markus Bönisch van BMW Group IT op Splunk Conf2017 in Washington DC, de gebruikersconferentie van deze leverancier van een analytics platform voor machine data. “Ons fabricageproces is in de loop der jaren niet wezenlijk veranderd”, steekt Bönisch van wal. “Het wordt steeds wat slimmer, maar als we in de toekomst flexibel op klantvragen willen kunnen inspelen, dan moeten we in staat zijn om ieder type auto op iedere productielijn te produceren. Zo ver is BMW nog niet. Omdat ieder type nu nog zijn eigen productielijn heeft, kunnen we niet snel genoeg de productie van het ene type afbouwen en van een ander type opbouwen. We moeten flexibeler worden omdat de klantvraag sneller verandert dan in het verleden.”

 

Geen integrale kwaliteitsmonitoring

Het is zaak om de huidige complexe productieprocessen eerst te vereenvoudigen, zodat de volgende stap straks eenvoudiger kan worden gezet. Dat is de reden waarom BMW het quality assurance-proces onderhanden nam. Bönisch vertelt: “In iedere fabriek werken ongeveer 80 mensen die zich bezighouden met kwaliteit. Voorheen monitorden zij processen in Excel. Dat was best omslachtig en bovendien geven allemaal losse Excel-sheets geen integraal beeld.” BMW werkte al jaren met Splunk, een platform om ‘machine data’ die wordt gegenereerd door een diversiteit aan onderliggende systemen in samenhang te analyseren. Bönisch heeft deze software nu ook geïntroduceerd op de kwaliteitsafdeling. “We gebruiken twee soorten bronsystemen”, vertelt hij. “In de eerste plaats testsystemen die auto’s die van de band rollen op allerlei aspecten testen. Daarnaast systemen waarin rework wordt bijgehouden. Voorheen waren dit twee volledig gescheiden werelden waardoor we weinig zicht hadden op de kwaliteit van het rework. Natuurlijk ondergingen de auto’s na het rework de tests opnieuw. Maar de testers hadden geen zicht op welk rework precies was uitgevoerd en de kwaliteitsmensen hadden geen makkelijke manier om te analyseren of bij een bepaalde fout herstelmethode A beter werkt dan methode B.”

 

Clusters maken met machine learning

De eerste stap in het project was het identificeren van gelijkaardige fouten. De data uit de testsystemen laten zich eenvoudig vergelijken. “We hebben met behulp van machine learning (ML) clusters gemaakt van veelvoorkomende fouten. Als je die foutcategorieën eenmaal hebt, kun je op zoek gaan naar correlaties daartussen, zodat je weet welke fouten vaak in samenhang voorkomen. Deze foutpatronen vertellen vaak meer over waar een fout ontstaat dan enkel en alleen de wetenschap dat een bepaalde fout veel voorkomt.” Je zou kunnen proberen om deze categorieën handmatig te maken, maar daarmee blijven sommige patronen onontdekt, weet Bönisch nu. “We hebben nieuwe inzichten opgedaan. En dat komt doordat ML-algoritmen nu eenmaal veel beter zijn in het vergelijken van zulke grote hoeveelheden complexe data.”

De volgende stap, het vergelijken van herstelwerkzaamheden, is een stuk lastiger. Bönisch: “In die systemen werken we namelijk voornamelijk met vrije-tekstvelden. Monteurs schrijven op wat ze precies hebben gedaan om de fout te herstellen. We moesten hier dus met tekstanalyse aan de slag.” Dat hebben ze zo eenvoudig mogelijk aangepakt. Eerst zijn alle voorzetsels en hulpwerkwoorden weggehaald, zodat de zelfstandige naamwoorden en werkwoorden overbleven. Daarna is bekeken welke synoniemen van bepaalde woorden worden gebruikt, zodat de software die woorden eenvoudig kan clusteren. Bönisch: “Het ML-algoritme is nu in staat om verhaaltjes zelfstandig in de juiste klasse in te delen. Als het algoritme twijfelt, dan legt het de tekst voor aan een van de medewerkers. Op deze manier trainen we het algoritme en wordt het steeds slimmer.”

 

Correlaties vinden

Door het combineren van deze beide vormen van data ontstaat voor het eerst inzicht in welke fouten welke achterliggende oorzaken kunnen hebben en hoe zo’n oorzaak het best kan worden weggenomen. “Voorheen wisten we alleen hoeveel auto’s een bepaalde test niet haalden”, vertelt Bönisch. “Die gingen dan terug voor rework, maar we konden niet goed analyseren wat precies de oorzaak was waarom die auto faalde op de test. Dat was iets wat de monteur bekeek en wat in vrije tekst werd vastgelegd in het rework-systeem. Daardoor konden onze kwaliteitsmedewerkers die informatie niet makkelijk analyseren.”

De monteurs hadden veel vrijheid in hoe ze een fout herstelden. Zo konden ze een haperend onderdeel bijvoorbeeld vervangen of repareren. Bönisch: “Nu beschikken we over harde data en die gebruiken we in aanbevelingen aan de monteur. Zij kunnen hun ervaring en buikgevoel combineren met evidence based-gegevens.” Als zij een auto terugkrijgen die een test niet heeft gehaald, zien ze in het scherm wat de meest waarschijnlijke oorzaak hiervan is, de op een na meest waarschijnlijke oorzaak enzovoort. Vervolgens krijgt hij een aanbeveling voor de reparatiemethode, wederom gepresenteerd op volgorde van meest veelbelovend. “We verlangen van monteurs niet dat ze de aanbevolen methode een-op-een kopiëren. Maar als ze daarvan afwijken, dan moeten ze wel aangeven waarom ze die keus maken. Met die informatie kunnen we het algoritme namelijk trainen.”

Samenvattend zegt Bönisch: “Inzet van ML heeft gezorgd voor nieuwe inzichten. Inzichten die we nooit hadden opgedaan als we data handmatig waren blijven analyseren, ook niet als we er honderden studenten tegenaan hadden gegooid.”

 

Advies

Voor wie met machine learning aan de slag wil, heeft Bönisch een aantal adviezen:

  • er is steeds meer data over productieprocessen. Wees niet te selectief in welke databronnen je toevoegt, gebruik gewoon zoveel mogelijk data, want dan is de kans groot dat je nieuwe verbanden vindt. Als je data indexeert met de functionaliteit Virtual Index dan hoef je ze niet in te laden in Splunk en kost het geen extra storageruimte;
  • focus op het resultaat dat je aan de gebruikers wilt bieden. Dat bepaalt waar je verder moet finetunen;
  • gebruik visualisaties die je helpen om de data beter te begrijpen;
  • probeer verschillende ML-algoritmen uit en kijk welke het beste voorspelt. Wees niet te snel tevreden. Kijk ook continu of je je model al moet vernieuwen, zeker als je nieuwe data toevoegt of nieuwe foutklassen ontdekt;
  • buy-in krijgen is makkelijk als je toegevoegde waarde levert. Onze kwaliteitsmanagers werkten veel met schaduw-it. Dat is nu allemaal vervangen door één centraal platform, simpelweg omdat dit ze van veel meer informatie voorziet.