기술칼럼및뉴스레터

머신러닝을통한宝马의오버스티어링감지하기

作者:Tobias Freudling,宝马集团


오버스티어링은차량의후륜타이어가회전구간을운행하는동안그립을잃는안전하지않은상태입니다(그림1)。오버스티어링은타이어마모,미끄러운도로상태,너무빠른회전,갑작스러운제동또는이들요인의조합으로인해발생할수있습니다。

그림테스트트랙에서宝马m4오버스티어링。

그림테스트트랙에서宝马m4오버스티어링。

오늘날의안정성제어시스템은오버스티어가감지되면자동으로시정조치를하도록설계되어있습니다。이론적으로,이러한시스템은첫번째원칙에기반한수학적모델을사용하여오버스티어링을식별할수있습니다。예를들어,온보드센서의측정값이모델의매개변수에대해설정된임계값을초과하면시스템에서자동차가오버스티어링인것으로판단합니다。그러나실제로,이접근법은관련된많은요인의상호작용때문에구현하기어렵다고판명되었습니다。얼음이많은도로에서충분하게공기가들어가지않은타이어가있는자동차는건조한표면에적절히팽창된타이어로작동하는동일한차량과는크게다른임계값이필요할수있습니다。

宝马에서는오버스티어링을감지하는머신러닝접근법을모색하고있습니다。MATLAB®에서작업하면서개념명으로지도학습머신러닝모델을개발했습니다。이전에머신러닝에대한경험이거의없었음에도,3주만에가98%넘는정확성으로오버스티어링을감지할수있는작동ECU프로토타입을완성했습니다。

데이터수집및특징추출

우리는오버스티어링,전도중및후에차량의실제데이터를수집하는것으로시작했습니다。전문운전자의도움을받아프랑스미라마(Miramas)의성宝马능시험장에서宝马M4로실제주행테스트를했습니다(그림2)。

그림2。프랑스미라마의宝马성능시험장。

그림2。프랑스미라마의宝马성능시험장。

테스트동안오버스티어감지알고리즘에일반적으로사용되는신호,즉차량의전진가속도,측면가속도,조향각및요레이트(偏航率)를포착했습니다。또한,우리는오버스티어링에대한운전자의marketing식을기록했습니다。운전자가자동차가오버스티어링중임을인식했을때승객으로차에타고있던내동료가노트북의버튼을눌렀습니다。운전자가차가정상적조작으로돌아왔음을식했을때그동료는버튼을놓았습니다。이버튼누름을통해지도학습모델을훈련하는데필요한지상실측자료의레이블이만들어졌습니다。43분전체적으로동안기록된데이터에서약259000개의데이터포인트를수집했습니다。

뮌헨사무실로돌아가서,수집한데이터를MATLAB에로드하고统计和机器学习工具箱™의분류학습기(分类学习者)앱으로다양한분류프로그램을사용하여머신러닝모델을학습했습니다。이원시데이터에대해훈련받은모델에서얻은결과는뛰어나지않았습니다。정확도는75%에서80%사이였습니다。보다정확한결과를얻기위해원시데이터를정리하고줄였습니다。먼저신호데이터의노이즈를줄이기위해필터를적용했습니다(그림3)。

그림3。원래조향각신호(파란색)와필터링후같은신호(주황색)。

그림3。원래조향각신호(파란색)와필터링후같은신호(주황색)。

다음으로피크분석을사용하여필터링된입력신호의피크로(컬최대값)를확인했습니다(그림4)。

그림4。피크가확된조향각신호。

그림4。피크가확된조향각신호。

머신러닝접근법평가

수집된데이터를필터링및축소한후에우리는지도머신러닝접근법을평가할수있는보다나은위치에있었습니다。분류학습기(分类学习者)앱을사용하여k -최근접이웃(资讯)분류기,SVM(서포트벡터머신),2차판별분석및의사결정트리를시도했습니다。또한,앱을사용하여PCA(주성분분석)를통해과잉피팅을방지하는데도움이되는특징을변형시키는효과를보았습니다。

평가한분류기에의해생성된결과는1에약되어있습니다。모든분류기는오버스티어를식별하는데탁월한성과를보였으나3개가는98%넘는진짜양성률을보였습니다。결정요인은진짜음성률,즉분류기가차량이오버스티어링이아닐때를얼마나정확하게결정할수있는가였습니다。여기서의사결정트리는다른분류기보다성능이좋았으며거의의96%진짜음성률을보였습니다。

진짜양성(%)
진짜음성(%)
거짓양성(%)
거짓음성(%)
Pca와k -최근접이웃
94.74 90.35 5.26 9.65
Svm(서포트벡터머신)
98.92 73.07 1.08 26.93
2차판별분석
98.83 82.73 1.17 17.27
의사결정트리
98.16 95.86 1.84 4.14
표1。네가지의서로다른지도머신러닝분류기에대한결과약。

차량내테스트용생성코드

의사결정트리에의해생성된결과는유망했지만,진정한테스트는분류기가실제자동차의ECU에서얼마나잘수행되는가였습니다。우리는MATLAB编码器™를사용하여모델로부터코드를생성하시고宝马5리즈세단에설치된타겟ECU에대한코드를컴파일했습니다。이번에는아슈하임(阿什海姆)근처의宝马시설에서테스트를했습니다。내가운전하면서동료가데이터를수집하여자동차가오버스티어링중임을나타내는정확한시간을기록했습니다。

ECU에서실시간으로작동하는분류기는놀라울정도로잘수행되었으며정확도는약95%입니다。테스트에들어가서우리는다른차량(M4대신宝马5시리즈),다른운전자및다른트랙을사용했기때문에무엇을기대해야하는지알지못했습니다。데이터를면밀히살펴보면모델과운전자가감지한오버스티어링간불일치의대부분이오버스티어링상태의시작과끝부분에서발생했음을알수있습니다。이불일치는이해할수있습니다。운전자가오버스티어가언제시작되고멈추었는지정확하게판단하는것조차어려울수있습니다。

오버스티어링감지를위한머신러닝모델을성공적으로개발하고이를프로토타입ECU에배치한결과,宝马에서머신러닝을위한수많은다른잠재적인응용프로그램을현재구상중입니다。수십년동안수집된많은양의데이터를사용할수있으며,오늘날에는단일차량으로하루에1테라바이트의측정데이터를생성할수있습니다。머신러닝은가용데이터를사용하여운전자의행동을학습하고운전경험을향상하는소프트웨어를개발할기회를제공합니다。

발행2018

관련기능에대한기사보기

관련산업에대한기사보기