본문 바로가기

잡담(雜談)

자율주행자동차에 적용되는 Ai의 기능은 무엇일까.

현대에서 일정한 거리를 이동하기 위해 떠올리는 기기들은 다양하게 존재합니다. 가장 먼저 사람의 힘을 원동력으로 하는 자전거, 보드 등의 이동수단이 있습니다. 다음으로 다른 에너지를 원동력으로 하는 이동수단이 있습니다. 많은 사람들이 이용하는 모터사이클, 자동차, 비행기, 배등이 있습니다. 여기서 모든 것을 사람이 조정하는 것과 일부 조정하는 것, 완전 자율로 조절되는 이동수단이 있습니다. 자동차는 대표적으로 모든 것을 사람이 조적 하게 되는 이동수단이며, 일정한 속도를 유지하는 크루즈 기능을 제외한 나머지 기능은 수동으로 조작되게 됩니다. 기술이 발달하여 컴퓨터가 출발지부터 목적지까지 자동으로 조작하여 탑승객의 이동을 도와주는 것이 바로 '자율주행 자동차'라 부르며, 앞으로 지속적으로 개발되어 사용화를 기대해볼 기술이기도 합니다.

이미 자율주행 자동차가 출시되어 사용되는 모습을 볼 수 있습니다. 혹자는 앞에서 언급한 내용을 보고 틀렸다고 생각할 수도 있습니다. 저의 의도는 기술의 완성도에 대한 언급이었습니다. 대다수의 상황에서 적용하여 자율주행 자동차 기술을 활용할 수 있지만, 자동차의 경우 작은 실수가 큰 사고로 이어지는 만큼 대중에 대한 신뢰도는 크게 높지 않을 수 있습니다. 물론, 이 부분은 개인의 견해 차이일 수 있습니다. 또한, 모든 곳에서 자율주행 자동차의 사용이 가능한 것은 아니므로 진정한 상용화가 이루어지기 위해서는 조금 더 시간이 필요하지 않을까 생각해 봅니다.

이런 첨단 기술인 자율주행 자동차의 핵심은 인공지능 Ai의 기술이 뒷받침되어야만 합니다. 사람이 직접 운전을 하는 경우를 생각해 보겠습니다. 우선 자동차의 시동을 켠 후, 운전대를 잡고 차량의 상태를 점검합니다. 그리고, 차량의 동력을 바퀴로 전달할 수 있는 기어를 조작하게 됩니다. 자동차 제동장치인 브레이크의 힘을 조절하면서 앞 또는 뒤, 좌우로 이동하게 됩니다. 점차 확실한 상황(도로, 길 등)을 맞이하면 차량의 가속장치를 이용해 일정한 속도 혹은 속도를 올려 목적지를 향해 주행하게 됩니다. 앞서 언급한 과정을 통해 자동차를 조작하고 원하는 목적지에 도달하게 됩니다.

여기서 한 가지 더 참고해야 할 사항이 있습니다. 운전 중 발생할 수 있는 돌 발상 황등이 있습니다. 앞에서 갑작스러운 장애물이 발생했을 시 대처하는 방법, 신호의 변화, 신호가 없는 곳에서 눈치껏 자동차를 이동해야 하는 경우 등의 다양한 상황들이 발생할 수 있습니다. 자칫 실수를 하면 사고로 이어질 수 있기 때문에 운전자는 차량이 움직이는 동안은 지속적으로 주의집중을 할 필요가 있습니다. 운전면허를 취득하기 위해 교육을 받을 때도 가장 중요하게 여기는 부분은 운전자의 넓은 시야 그리고 주의집중이라 할 수 있습니다.

만약, 자동차가 스스로 목적지를 찾아가기 위해서는 어떤 기능들이 필요할까요. 앞에서 언급한 모든 과정을 차량이 판단하고 선택하여 자동차를 제어해야만 합니다. 다시 말해, 돌발상황까지 고려한 모든 부분을 제어하는 기능이 마련되어야만 자율주행 자동차를 이용할 수 있게 됩니다. 자율주행 자동차가 아닌 일반차량의 운전자가 했던 모든 역할에 대해 컴퓨터가 판단하고 제어하는 기능들이 필요하게 됩니다.

해당 기능은 크게 2가지로 나뉠 수 있습니다. 하나는 입력장치입니다. 외부에서 전해지는 모든 정보를 컴퓨터가 데이터로 받아들일 수 있는 입력장치가 필요합니다. 대표적으로 카메라와 센서가 있습니다. 외부에서 발생되는 상황을 카메라로 인식해 디지털화된 데이터를 통해 컴퓨는 외부 상황을 확인할 수 있습니다. 다음으로 센서입니다. 카메라의 영상을 디지털로 만들어도 정확한 정보(거리 등)를 얻기 위해서는 일정한 센서가 필요할 수 있습니다. 예를 들어, 후방 주차를 지원하는 거리 감지센서를 생각하면 도움이 될 수 있습니다.

다음은 출력장치입니다. 외부 상황, 길, 신호등의 정보를 입력받은 컴퓨터는 차량을 적절하게 제어해야만 합니다. 직진을 할 것인지, 회전을 할 것인지 혹은 후진을 할 것인지 멈출 것인지 등등의 모든 상황에 적절하게 대처하고, 그에 맞는 결괏값을 도출하여 차량을 제어하게 됩니다. 제어를 위해 일정한 신호를 보내게 될 것이며, 컴퓨터 신호에 맞게 연결된 조향장치, 엑셀, 브레이크등을 조작할 수 있게 됩니다.

여기서 핵심이 되는 것은 '적절한 판단'입니다. 사람은 외부에서 발생되는 정보를 눈과 귀등의 감각기관을 통해 얻고, 해당 내용을 뇌로 전달하게 됩니다. 뇌에서는 다양한 상황을 고려하여 빠르게 결론을 도출하게 되며, 해당 결론은 다시금 손 혹은 발등의 기관으로 전달하여 차량을 조작하게 됩니다. 만약, 뇌에서 잘못된 판단을 한다면 큰 사고가 날 수도 있습니다. 자율주행 자동차에는 사람의 뇌 역할을 해줄 수 있는 인공지능 Ai를 필요로 하게 됩니다.

앞에서 말한 입력장치와 출력장치를 잘 만들어진 인공지능 Ai에 연결하여 판단을 맞기는 것입니다. 정보를 분석하고, 길을 파악하여 가장 최선의 방법으로 탑승객을 안전하게 목적지로 이동시키는 역할을 수행하게 됩니다. 여기서 다양한 알고리즘 기술을 필요로 하게 됩니다.

가볍게 생각해보면 차량이 움직일 수 있는 차선을 인식하는 것, 신호를 인식할 수 있는 것, 사물을 구분하는 것, 차량의 속도를 확인하는 것 등에 대한 정확한 분석을 필요로 합니다. 또한, 차선 혹은 길에 맞춰 핸들 및 엑셀과 브레이크를 제어하는 강도를 조절하는 기능도 필요로 하게 됩니다. 이 모든 기능들은 각각의 Ai가 정보를 처리할 수 있어야 합니다. 물론, 주축이 되는 시스템에 맞춰 각 부분들은 계산 값을 도출하여 정보를 전달할 수도 있습니다.

Ai를 자세히 모르는 사람도 오픈소스를 통해 체험할 수 있는 알고리즘을 활용해 이미지 판독, 글씨 판독 등을 체험할 수 있습니다. 물론, 속도가 그리 높다고는 할 수 없습니다. 단순히 체험만을 기준으로 하기 때문이기도 하며 사용되는 컴퓨터 사양이 높지 않아서일 수도 있습니다. 반대로 차량의 경우는 보다 빠르게 정보를 처리하는 기술을 필요로 합니다. 실제 길 위에서 차량에 발생되는 돌 발상 황등은 상당히 급박한 경우가 많으며 바르게 대처해야만 사고를 예방할 수 있기 때문입니다. 즉, 하나의 메인 시스템 Ai를 이용할지 각각의 기능을 별도의 Ai를 이용해 정보를 처리할지에 대해서는 다양한 실험과 기술을 통해 결정될 문제일 수 있습니다.

이런 Ai시스템의 정착은 자동차뿐만 아닌 무인 드론에도 적용되고 있습니다. 일반적으로 생각하는 드론의 크기를 키워 사람이 탑승할 수 있을 정도의 크기로 만듭니다. 모든 조작은 컴퓨터가 하게 되며 탑승자는 목적지만 입력하면 된다고 합니다. 이 또한 아직까지 상용화되진 않았지만 멀지 않은 미래에 자율주행 자동차 및 무인 드론의 활용으로 인류의 이동수단에는 많은 변화가 생길 수 있을 것입니다.