IEEE Robotics & Automation Magazine - December 2018 - 109

This has resulted in a segmentation,
with the developer community taking
either the camera-first approach (companies like Tesla, Mobileye, and
AImotive) or the lidar-first approach
(utilized by Waymo-Google, Uber, and
Drive.ai). Using cameras as primary
sensors allows one to mimic the human
driver in perception and localization
tasks, as drivers rely on vision 99% of
the time they spend driving. With a sufficient number of cameras and the
proper choice of algorithms, the type,
distance, size, and orientation of objects
and landmarks can be extracted, with
radar or ultrasonic sensors taking the
place of the still-expensive lidar sensors
in distance measurement. However,
cameras require large processing power
and are significantly exposed to light
conditions and environmental changes,
requiring diverse training data for
AI-based image processing algorithms.
Using lidars as primary sensors, the
task of localization becomes easier,
matching the point cloud of the raw
sensor output to a prerecorded, threedimensional, high-definition (HD) map
on multiple layers. This, however,
requires an up-to-date HD map of the
world, working reliably in environments
that lack quality landmarks or features
to be matched by the lidar (typically
highways or rural roads), which calls
into question the scalability of the lidarfirst approach. This explains Google's
and other companies' huge investments
into creating highly accurate maps. Furthermore, the high cost of current lidar
sensors slows down their deployment
into production vehicles, although solid-state lidars with no moving parts are
predicted to penetrate the market soon.

network (CAN) bus, which forwards
commands and receives actuator states.
The original role of the CAN bus standard was to allow communication
between distributed devices and microcontrollers on a message-based protocol.
Some organizations provide drive-bywire solutions only on specific platforms, and others can convert virtually
any car model into such a system, providing custom application programming
interfaces. However, due to standardized
message-based communication, it is not
unusual to convert nonstandard vehicles
to self-driving cars by reverse-engineering methods.
Once the software can send control
messages and receive the vehicle's state
from both external sensors (cameras,
radars, lidar, and so forth) and internal
devices through the CAN interface, the
desired trajectory can be executed.
Due to the wide range of speed and
acceleration values applied, the highly
nonlinear behavior during steering,
and the often unmodeled lateral
dynamics, a large variety of actuator
control approaches has been applied
both for steering and acceleration
control. These include finely tuned
proportional-integral-derivative controllers, model predictive control,
fuzzy control, and even neural control,
such as system dynamics identification
based on NNs. Generally speaking, the
overall robustness and performance of
trajectory tracking is a function of
detection accuracy and stability, decision making, and trajectory planning
smoothness; performance requirements, on the other hand, are usually
set for a specific use case by automotive standards [5].

Controlling the Vehicle
The prototype vehicle platform largely
influences the choice of sensor setup, the
computing hardware, and the actuator
control parameters. To some extent, a
recalibration of the sensors and on-thefly calibration methods can bridge these
challenges. However, a thorough testing
of the whole integrated system requires a
platform-agnostic, drive-by-wire solution that communicates with the selfdriving software and the controller area

Open-Source Platforms
The development of self-driving technology is undoubtedly a costly procedure: for a full prototype system, one
needs to account for vehicle platforms,
high-end processors, and quality sensors. However, L5 automation has not
yet reached the product development
stage, and there is room for research
activities from independent developers
and organizations on even the most
fundamental topics.

One of the most popular platforms
has been initiated by Udacity [16]:
building an open-source self-driving car,
breaking down the problem into multiple complex challenges, and offering a
competition to teams running their
solutions on this prototype vehicle. Furthermore, Udacity launched a self-driving car engineer nanodegree, covering
state-of-the-art topics in self-driving,
heavily aided by machine intelligence.
The Open Source Self-Driving Car
Initiative [17] is an active community of
software developers, sharing repositories
for solving subtasks of self-driving.
Advanced open-source frameworks for
complex software stacks have recently
been released (or announced) by former
and current competitors in the self-driving car development race, including
Comma.ai and Baidu, to help others in
the industry,
particularly car
manufacturers,
Real-world testing
develop autonoof self-driving
mous vehicles.
Real-world
platforms is often
testing of selfchallenging.
driving platforms is often
challenging due
to constantly developing testing regulations and the difficulty of scenario
generation and reproduction. Many
players in the field are developing a
virtual test environment in simulation
engines that satisfies the compatibility
requirements of software frameworks.
Computer games including diverse
scenarios and high-quality graphics
serve as an alternative development
platform. The DeepDrive project [18]
was recently open-sourced by OpenAI,
repurposing the popular computer
game Grand Theft Auto as a self-driving car simulator, providing pretrained
self-driving agents and data sets. Similarly, the Open Racing Car Simulator
[19] provides a highly customizable
research platform capable of integrating custom vehicle and object dynamics
with scenario generation.
On the algorithm level, open-source
libraries for C/C++ languages offer
robust algorithms, such as the ones
offered by OpenCV, addressing many

december 2018

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

109


http://www.Drive.ai http://www.Comma.ai

IEEE Robotics & Automation Magazine - December 2018

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - December 2018

Contents
IEEE Robotics & Automation Magazine - December 2018 - Cover1
IEEE Robotics & Automation Magazine - December 2018 - Cover2
IEEE Robotics & Automation Magazine - December 2018 - Contents
IEEE Robotics & Automation Magazine - December 2018 - 2
IEEE Robotics & Automation Magazine - December 2018 - 3
IEEE Robotics & Automation Magazine - December 2018 - 4
IEEE Robotics & Automation Magazine - December 2018 - 5
IEEE Robotics & Automation Magazine - December 2018 - 6
IEEE Robotics & Automation Magazine - December 2018 - 7
IEEE Robotics & Automation Magazine - December 2018 - 8
IEEE Robotics & Automation Magazine - December 2018 - 9
IEEE Robotics & Automation Magazine - December 2018 - 10
IEEE Robotics & Automation Magazine - December 2018 - 11
IEEE Robotics & Automation Magazine - December 2018 - 12
IEEE Robotics & Automation Magazine - December 2018 - 13
IEEE Robotics & Automation Magazine - December 2018 - 14
IEEE Robotics & Automation Magazine - December 2018 - 15
IEEE Robotics & Automation Magazine - December 2018 - 16
IEEE Robotics & Automation Magazine - December 2018 - 17
IEEE Robotics & Automation Magazine - December 2018 - 18
IEEE Robotics & Automation Magazine - December 2018 - 19
IEEE Robotics & Automation Magazine - December 2018 - 20
IEEE Robotics & Automation Magazine - December 2018 - 21
IEEE Robotics & Automation Magazine - December 2018 - 22
IEEE Robotics & Automation Magazine - December 2018 - 23
IEEE Robotics & Automation Magazine - December 2018 - 24
IEEE Robotics & Automation Magazine - December 2018 - 25
IEEE Robotics & Automation Magazine - December 2018 - 26
IEEE Robotics & Automation Magazine - December 2018 - 27
IEEE Robotics & Automation Magazine - December 2018 - 28
IEEE Robotics & Automation Magazine - December 2018 - 29
IEEE Robotics & Automation Magazine - December 2018 - 30
IEEE Robotics & Automation Magazine - December 2018 - 31
IEEE Robotics & Automation Magazine - December 2018 - 32
IEEE Robotics & Automation Magazine - December 2018 - 33
IEEE Robotics & Automation Magazine - December 2018 - 34
IEEE Robotics & Automation Magazine - December 2018 - 35
IEEE Robotics & Automation Magazine - December 2018 - 36
IEEE Robotics & Automation Magazine - December 2018 - 37
IEEE Robotics & Automation Magazine - December 2018 - 38
IEEE Robotics & Automation Magazine - December 2018 - 39
IEEE Robotics & Automation Magazine - December 2018 - 40
IEEE Robotics & Automation Magazine - December 2018 - 41
IEEE Robotics & Automation Magazine - December 2018 - 42
IEEE Robotics & Automation Magazine - December 2018 - 43
IEEE Robotics & Automation Magazine - December 2018 - 44
IEEE Robotics & Automation Magazine - December 2018 - 45
IEEE Robotics & Automation Magazine - December 2018 - 46
IEEE Robotics & Automation Magazine - December 2018 - 47
IEEE Robotics & Automation Magazine - December 2018 - 48
IEEE Robotics & Automation Magazine - December 2018 - 49
IEEE Robotics & Automation Magazine - December 2018 - 50
IEEE Robotics & Automation Magazine - December 2018 - 51
IEEE Robotics & Automation Magazine - December 2018 - 52
IEEE Robotics & Automation Magazine - December 2018 - 53
IEEE Robotics & Automation Magazine - December 2018 - 54
IEEE Robotics & Automation Magazine - December 2018 - 55
IEEE Robotics & Automation Magazine - December 2018 - 56
IEEE Robotics & Automation Magazine - December 2018 - 57
IEEE Robotics & Automation Magazine - December 2018 - 58
IEEE Robotics & Automation Magazine - December 2018 - 59
IEEE Robotics & Automation Magazine - December 2018 - 60
IEEE Robotics & Automation Magazine - December 2018 - 61
IEEE Robotics & Automation Magazine - December 2018 - 62
IEEE Robotics & Automation Magazine - December 2018 - 63
IEEE Robotics & Automation Magazine - December 2018 - 64
IEEE Robotics & Automation Magazine - December 2018 - 65
IEEE Robotics & Automation Magazine - December 2018 - 66
IEEE Robotics & Automation Magazine - December 2018 - 67
IEEE Robotics & Automation Magazine - December 2018 - 68
IEEE Robotics & Automation Magazine - December 2018 - 69
IEEE Robotics & Automation Magazine - December 2018 - 70
IEEE Robotics & Automation Magazine - December 2018 - 71
IEEE Robotics & Automation Magazine - December 2018 - 72
IEEE Robotics & Automation Magazine - December 2018 - 73
IEEE Robotics & Automation Magazine - December 2018 - 74
IEEE Robotics & Automation Magazine - December 2018 - 75
IEEE Robotics & Automation Magazine - December 2018 - 76
IEEE Robotics & Automation Magazine - December 2018 - 77
IEEE Robotics & Automation Magazine - December 2018 - 78
IEEE Robotics & Automation Magazine - December 2018 - 79
IEEE Robotics & Automation Magazine - December 2018 - 80
IEEE Robotics & Automation Magazine - December 2018 - 81
IEEE Robotics & Automation Magazine - December 2018 - 82
IEEE Robotics & Automation Magazine - December 2018 - 83
IEEE Robotics & Automation Magazine - December 2018 - 84
IEEE Robotics & Automation Magazine - December 2018 - 85
IEEE Robotics & Automation Magazine - December 2018 - 86
IEEE Robotics & Automation Magazine - December 2018 - 87
IEEE Robotics & Automation Magazine - December 2018 - 88
IEEE Robotics & Automation Magazine - December 2018 - 89
IEEE Robotics & Automation Magazine - December 2018 - 90
IEEE Robotics & Automation Magazine - December 2018 - 91
IEEE Robotics & Automation Magazine - December 2018 - 92
IEEE Robotics & Automation Magazine - December 2018 - 93
IEEE Robotics & Automation Magazine - December 2018 - 94
IEEE Robotics & Automation Magazine - December 2018 - 95
IEEE Robotics & Automation Magazine - December 2018 - 96
IEEE Robotics & Automation Magazine - December 2018 - 97
IEEE Robotics & Automation Magazine - December 2018 - 98
IEEE Robotics & Automation Magazine - December 2018 - 99
IEEE Robotics & Automation Magazine - December 2018 - 100
IEEE Robotics & Automation Magazine - December 2018 - 101
IEEE Robotics & Automation Magazine - December 2018 - 102
IEEE Robotics & Automation Magazine - December 2018 - 103
IEEE Robotics & Automation Magazine - December 2018 - 104
IEEE Robotics & Automation Magazine - December 2018 - 105
IEEE Robotics & Automation Magazine - December 2018 - 106
IEEE Robotics & Automation Magazine - December 2018 - 107
IEEE Robotics & Automation Magazine - December 2018 - 108
IEEE Robotics & Automation Magazine - December 2018 - 109
IEEE Robotics & Automation Magazine - December 2018 - 110
IEEE Robotics & Automation Magazine - December 2018 - 111
IEEE Robotics & Automation Magazine - December 2018 - 112
IEEE Robotics & Automation Magazine - December 2018 - 113
IEEE Robotics & Automation Magazine - December 2018 - 114
IEEE Robotics & Automation Magazine - December 2018 - 115
IEEE Robotics & Automation Magazine - December 2018 - 116
IEEE Robotics & Automation Magazine - December 2018 - 117
IEEE Robotics & Automation Magazine - December 2018 - 118
IEEE Robotics & Automation Magazine - December 2018 - 119
IEEE Robotics & Automation Magazine - December 2018 - 120
IEEE Robotics & Automation Magazine - December 2018 - 121
IEEE Robotics & Automation Magazine - December 2018 - 122
IEEE Robotics & Automation Magazine - December 2018 - 123
IEEE Robotics & Automation Magazine - December 2018 - 124
IEEE Robotics & Automation Magazine - December 2018 - 125
IEEE Robotics & Automation Magazine - December 2018 - 126
IEEE Robotics & Automation Magazine - December 2018 - 127
IEEE Robotics & Automation Magazine - December 2018 - 128
IEEE Robotics & Automation Magazine - December 2018 - 129
IEEE Robotics & Automation Magazine - December 2018 - 130
IEEE Robotics & Automation Magazine - December 2018 - 131
IEEE Robotics & Automation Magazine - December 2018 - 132
IEEE Robotics & Automation Magazine - December 2018 - 133
IEEE Robotics & Automation Magazine - December 2018 - 134
IEEE Robotics & Automation Magazine - December 2018 - 135
IEEE Robotics & Automation Magazine - December 2018 - 136
IEEE Robotics & Automation Magazine - December 2018 - Cover3
IEEE Robotics & Automation Magazine - December 2018 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com