From perception to action: World Foundation Models (WFMs) for autonomous robots and vehicles
Watch on YouTubeVideo summary
The video introduces the concept of "Autonomy 2.0," marking a significant shift in autonomous driving technology from traditional, modular software stacks to end-to-end AI models. Historically, autonomous vehicle systems relied on breaking down complex problems into smaller, manageable components like perception, localization, and planning, each handled by specific algorithms. While this approach worked for about eighty percent of standard scenarios, it struggled with the "long-tail" problem—rare, chaotic, and unpredictable situations such as accidents or unexpected road behaviors that current rule-based systems cannot anticipate. This limitation has led to a constant cycle of fixing individual issues without achieving true full autonomy, particularly in diverse environments like India where traffic patterns and obstacles differ significantly from those in the global north.
To overcome these challenges, the industry is moving toward World Foundation Models (WFMs), which replace the entire conventional stack with a unified AI model capable of learning and generalizing across vast ranges of scenarios. These models are trained on massive datasets, including visual data, LiDAR point clouds, and map information, often enhanced with text prompts that specify environmental conditions like weather, time of day, and geography. A key advantage of WFMs is their ability to generate synthetic data for edge cases that are impossible or dangerous to record in the real world, such as fire incidents or specific crash scenarios. By using simulators and generative AI, manufacturers can create high-fidelity training data for rare events without needing to physically drive through them, thereby reducing development costs and accelerating the validation process for new geographies.
However, implementing this vision comes with significant technical hurdles, particularly regarding data quality and generation fidelity. Current generative models often struggle with physics-based realism, making it difficult to accurately render small objects like traffic signs or maintain consistent lane structures over long video sequences. Additionally, there are challenges in managing the high computational costs required to run these models on powerful GPUs for thousands of variations. The speaker highlights that while metrics like FID and FCD provide some measure of quality, they do not yet fully capture autonomous driving-specific nuances such as heavy rain effects or collision risks. Despite these open problems, the integration of WFMs with end-to-end AI stacks creates a continuous feedback loop where failure scenarios identified in simulation are used to generate more training data, progressively reducing the need for physical data collection and enabling rapid over-the-air updates.
In conclusion, the transition to World Foundation Models represents a fundamental evolution toward a more robust and adaptable autonomous driving ecosystem. By leveraging synthetic data generation and end-to-end learning, companies can achieve better generalization across different regions and weather conditions without starting from scratch for every new geography. Although challenges remain in ensuring output fidelity, managing costs, and handling small object detection, the potential benefits of a unified AI approach are clear. This paradigm shift allows for the creation of comprehensive training suites that can quickly adapt to local nuances while retaining core behaviors, ultimately bringing the industry closer to its original goal: safely transporting passengers from point A to point B while strictly adhering to regulations.
Read the full video transcript
Okay? Hello everyone. Uh
I'm Abhishek. I work at KPIT as part of
the autonomous driving team.
And today I'm going to be talking about
a change a recent change that has been
happening in the autonomous driving
space and autonomy in general.
Uh
so
start.
Yep. So, the topic of today I'm going to
be talking about is autonomy 2.0. So, up
until now
uh
autonomous driving stacks
uh have had a
a conventional sort of piece-by-piece
architecture, whereas now that has been
replaced that is being replaced by uh
end-to-end AI models, right? So, to
start off with I just have a simple
prompt for everyone. I think every one
of us knows prompts. Um that I want you
to imagine
a futuristic autonomously driving car,
right? You think about it head.
And
can we define the objectives for such a
car?
What is an autonomous driving car is
really supposed to do?
Right?
So, I can put this into a like very um
simple context. One,
go from point A to point B safely.
And two,
follow regulations.
Right? So, it has to be as simple as
that.
Right? So,
keeping this in mind, I want to first
establish how the conventional or like
the today's autonomous driving stack
looks like. Right? So, you must have all
seen the typical autonomous driving car
where it it has all the different kinds
of sensors mounted on top of it,
different video sensors, radar, lidar,
all of that. Right? So, all of that
information is then passed on
to first the perception stack, which
establishes what objects are there in
the scene, and then the localization,
which establishes the 3D world around
the vehicle. And based on that,
uh
certain planning
uh rules are devised. Uh so, all of
these acronyms are some or the other uh
autonomous driving features. All of you
must have heard about the AEB in the new
Mahindra's, which is the auto emergency
braking.
ACC is the adaptive cruise control, lane
keep assist, lane change assist, uh
blind spot detection, traffic jam uh
assist, and intelligent speed assist.
All of these are like different
features.
Right? So, this follows the
uh normal software development
convention that a problem, a big
problem, should be broken down into
smaller and smaller pieces, and the
pieces should be solved one by one, so
that the
when you put them all back together, the
entire system makes sense and works
reliably without failures.
Right?
So,
but these, when applied to autonomous
driving,
uh pose a big problem. Right? And why
does it do that?
Because autonomous driving
is
a long-tail problem.
Right?
Um
all of these autonomous driving stacks
have been able to do
almost 80% of the work fairly well.
But they fail when they are not supposed
to fail.
Right? They fail when you are in an
accident, they fail when there is
uh a vehicle turned over and they're not
able to brake. They fail in these very
random and chaotic situations, which
don't happen very uh regularly. Right?
And situations that you cannot write
rules for all the time.
Right? So,
the current approach of trying to break
down into
uh smaller and smaller problem
statements,
when applied to long tail, it leads to a
game of whack-a-mole. You solve one
problem, another one pops up. You solve
that, third one pops up. Right? And this
keeps on going. Right? And because of
this
problem, we've not been able to achieve
the full autonomy. So, up until now,
like 10 years ago, people assumed that
yeah, we'll solve autonomous driving
like whatever
by 2025 or like things
like that. Timelines like that. But that
has not been the case because of this
approach, because
this long tail problem is
too difficult to solve with without any
generalization built into the stack.
Right? So, imagine you're on an Indian
road, for example.
Uh all of these features are there in
your like most advanced AD car.
Right?
So, you're driving. There's always
someone at your blind spot, some
two-wheeler guy trying to be in that one
space, right?
To avoid him, you slightly move towards
the left. Um so, you uh move out of your
lane.
So, the lane keeper start
start start spinning. The blind spot is
already pinging. Now, there is like a
lot of vehicles so that it the vehicle
assumes that there's a traffic jam. So,
that traffic jam assist also pings you.
The intelligent speed assist pings up
because
technically, the speed limit is 30. We
are doing 50.
Who knows what is the right thing to do?
So, intelligent speed assist also starts
pinging you. Right? And in all of this,
suddenly some guy comes in from the
wrong side and your vehicle
automatically brakes because it doesn't
know what to do do with that. Right? So,
the problem is there are just too many
features
and too many things, and I did not ask
for this.
I asked for a simple thing. Just get me
from point A to point B and follow
regulations. Why are you doing these 10
different things for me?
Right? So, just to quote a
uh just to quote a character from my
favorite video game, we are deep in
acronym hell right now. Right? There's
just too many things happening and it's
not coming together as it should.
Right?
And the next problem is the lack of
generalization. Right? The entire stack
needs customization and custom code to
be written every time it has to be moved
to a new geography.
Right? That is one of the biggest
reasons why
autonomous driving as a whole has not
moved beyond
the global north. Right? Only now we are
getting
autonomous driving solutions in India.
Even those are fairly basic,
well-tested, and well-defined problems
which are which they are solving. Not
the general autonomous driving problem.
Right? And that is because like there
are different types of traffic governing
objects in different geographies,
different obstacles, different driving
patterns. There are auto rickshaws in
India, tuk-tuks in Thailand. All So,
your object detection model or the
perception stack is always going to give
varying outputs in varying geographies.
Right? So, the cycle time is high, cost
is high. So, how do we solve that? Like,
what is
the replacement for this?
So,
a lot of the OEMs
particularly some companies what they
have done is just replace the entire
stack with an AI model. Right?
Of course, I'm putting it very simply in
a simplistic fashion. But, the idea
still remains the same that just you
replace the entire stack with an AI
model and
then once your AI once your entire stack
is just an AI model, you train with more
and more data.
Right?
So,
on paper this looks quite
straightforward. You know, this is
actually being used by a lot of
organizations. They are the
Tesla FSD that
your cousin from Bay Area keeps bragging
about. Right? That is end-to-end end
The So, in recently at CES, uh Nvidea
launched their open source stack for end
to end AI. Um even in
uh robotics,
this is the same uh idea that is being
used
uh that the end to end AI with end to
end AI, uh the robots will be able to
learn on their own, right? So,
this definitely is getting used,
right?
And so, what are the opportunities here?
As I mentioned earlier, your entire
stack is just an AI model now, right?
So, you can train it at scale.
You can generalize over a large range of
scenarios.
You can validate it virtually without
the without even ever putting it onto
any hardware or without the vehicle even
driving a mile,
right? It significantly reduces
development costs,
uh reduces uh porting to a porting to a
virtual geography, uh
the
It has It provides you robustness
against edge cases and long tail
scenarios.
Like um
and it brings us closer to the original
objective.
I do not want to have 10 different
things. I just want to get there where I
want to get to and get there safely
while following regulations, right? So,
this uh approach is theoretically at
least
the closer approach to the uh starting
objectives,
right?
But then, the main there is one problem
with this.
Um anybody want to guess what the
problem would be here in this case?
The
problem is simple. You need data.
You need a lot of data, right? You
require geo-specific and this is all
visual data to uh start with.
Visual data which is geo-specific,
thousand tens of thousands of hours in
run time.
Uh it has to fit something called as the
operational design domain. So, this
defines in which conditions you your
vehicle should work, like the time of
day, weather, geography, all these
things.
Right?
Um so so this includes variations of
different highway exits, all of this.
Um
right?
So, and along with that it also needs to
capture things which are out of
distribution.
Things that you cannot record, such as
accidents, such as somebody running a
stop sign.
Right? All of these things cannot be
orchestrated and recorded in physical
world.
And then finally it has to be high
fidelity, at least 720p, as high as 4K
in some of the cases that we've seen.
Right? So,
how do we generate this kind of data?
Right? The generative AI models that
we've seen today are really good at
generating cat videos for some reason.
But when you work for or work on
generating data for autonomous driving
part,
there are significant challenges uh in
um the diffusion back So, basically the
models which have diffusion backbones uh
right? Uh generative AI models, they
have significant
problems with that. So, what uh we are
working on is essentially developing a
world foundation model, particularly for
autonomous driving domain, right?
Um so,
you can text uh take a text prompt,
video, camera, point cloud. So, all of
these are like the typical inputs that
are available in autonomous driving. Um
your video recordings are there, your
lidar point cloud data is available, map
data is available. And along with that
we add a lot of context in the text
prompt as well with respect to what
environment and what time of day,
weather, geography, all of these things.
Uh scene details, traffic occupants, all
of these details we add in the text
prompt and we train the model to
generate data specific to these kinds of
conditions, right? And to generate data
which can
do scene generation, do uh
uh planning output generation, control
output generation, and map output
generation as well, right? So,
So, what So, the typical architecture of
a world from this model So, this is
something I've taken from Nvidia.
Um
but we also have our own in-house
um model that we're developing. The idea
is pretty simple.
You
try to put some or the other constraints
onto the diffusion backbone. The
diffusion backbone, as it is conditioned
on text, is not good enough to generate
realistic videos with the high amount of
control that is required for autonomous
driving.
Right? So, you take additional
domain-specific control inputs like 3D
bounding boxes.
Uh 3D bounding boxes are the boxes for
cars, but when you're driving, you don't
only perceive the vehicle as 2D, you
also have depth perception. Similar
thing has to be introduced when
you are doing uh annotation for
autonomous driving. So, that is why 3D
uh map layouts. So, you need lane lines,
road edges,
uh traffic signals, or pedestrian
crossings, all of that. And then
additionally, if required, depth map and
segmentation map of again the same
imagery.
Right? So, all of these control inputs
uh can be provided in addition to your
text prompt and then uh use uh that part
to generate very specific kind of
scenarios
uh which can orchestrate a particular
type of motion or scenario which you
need to test your AD stack on or train
your AD stack with.
Right? So, these provide much higher
control uh compared to the conventional
diffusion models.
They are They ensure physics-based
realism because we are providing the 3D
bounding box and map layout. So, they
will
put the lanes exactly where the lanes
are supposed to be, vehicles where the
3D bounding boxes are, and
they can be trained for geo-specific
outputs, right? So, I will show a
typical
output.
So,
okay.
Uh the GIF is running a little slowly,
but essentially, if you see here, there
is correlation between both the inputs
and the outputs. There are 3D bounding
boxes where of where the vehicles are,
and for traffic signals as well, there
are different These are the traffic
signals. These are the lane lines, and
these orange ones are the pedestrian
crossings, right? So, this is typically
how a scene is represented and the
output is generated. Uh
also follows that same
layout, right? So,
similarly,
autonomous driving and
like in general needs that doesn't just
work on one view. It works on six views
of data. So, the example that I that I
showed in the previous screen, that is
to be generated for six different views,
right? So, this is something that we've
done. We've trained
a world function model for India data,
and we've generated this So, this is
like an example video which where we
have generated like six view output,
right? You can see the highway barriers
look like the ones are in India, buses
fairly similar, the overpass,
everything. So, all of this geo-specific
effect is coming in because we've
trained this model with India data,
right?
Again, so the thing I was talking about
earlier,
you can change or create custom
variations with respect to weather, time
of day, even road conditions for that
example. All of these are
generated particularly
based on
like Indian scenarios, right? You will
see potholes in Indian roads
or you will see
So,
rainy time or fog essentially.
So, all of that parameters are
considered and all of these are based on
the ODD that has been defined
for the particular vehicle.
Now,
the advantage of having this is
the
OEM now doesn't need to go and
record monsoon data in monsoon.
Right? They can record the scenario in
daytime clear daytime and then create
these variations purely using a world
condition model. Right? Or if they know
that for this particular scenario their
model is failing for some reason,
they will want to validate it for all
different times of days,
the
the weather conditions, and road
conditions.
So, again, orchestrating the exact
scenario where your video fails is not
possible again. Right? You cannot do
that make that exact same thing happen
again. Right?
And to do that in different weather time
of day again is becomes a challenge. So,
you can do all of this using generated
data.
Right?
Additionally, as I mentioned, there are
certain scenarios which you just cannot
create by just driving around. You
cannot
create
or you cannot drive through a fire
situation on the road
or
you know, any other scenarios. So, these
things need to be generated using
synthetic data generation methods.
Okay? So, one more example I will show
is So, this is the typical
implementation that we do using
simulators.
So, the first row you will see is the
bounding boxes for the vehicles.
And the second row you will see is the
road layout. Okay? So, you see here the
first vehicle passes the ego vehicle and
second vehicle is the one that the ego
vehicle crashes into. If I want to
generate this exact scenario, I can do
that in a simulator first and then
extract these particular
intermediate representations of that
scenario and pass that on to the world
foundation model along with a text which
defines just the geography. I can say
this is like you know, North American
intersection which is not signalized and
there is this incident is happening.
Once I provide that information along
with this grounding, the model is able
to generate very realistic looking
outputs which show
the
first vehicle passing exactly the moment
I wanted to, second vehicle coming in
exactly at the moment I wanted it to and
the crash happening exactly in the way I
wanted it to. Right? So,
this is
the
capability that world foundation models
give us.
Um so,
if you have a world foundation model, if
you are able to generate data, how do
you measure
its quality, right? So, there are
certain video generation metrics that
are available. There is fresh air,
inception distance, video distance,
there is brisk which is based on
multiple things bringing coming
together. But, all of these metrics
again still lack autonomous driving
specific information which is again
coming back to the physics of it or real
world effects. How do you measure
how well that the model is generating a
particular weather scenario or like what
does heavy rain mean to the model and
what does it mean to you? All of these
kinds of
aspects are still
not have still not been considered or
sort of
coded into a
metric as of now. Right? So, there is
still some work that needs to be done on
this side, but there are certain ways
line things which we can use
to establish uh certain uh quality which
are like FID and FCD as I mentioned.
Right?
So, now that you have this uh huge
amount of data,
how do you validate your end-to-end AI
stack, right? So,
this is an example of an end-to-end AI
stack consuming this six views of
information
and certain CAN information. CAN is the
vehicle uh
uh sort of the odometry which is the uh
speed, acceleration, all of those
things. And uh
with that and with these two inputs, the
end-to-end AI model is able to predict,
first of all, the trajectories of all
the actors in the scene. So, if if you
see on this side,
uh all the blue blue to green
trajectories are for uh the
surrounding vehicles and the orange
trajectory is for the ego vehicle.
And if you see here, this is the
predicted trajectory that the vehicle
should take.
Uh that is being predicted for each and
every frame. And whenever there is a
vehicle that comes in, the trajectory
automatically shows the requirement for
braking.
Right? So,
this is how you can basically provide
this data as input to the end-to-end AI
model and calculate not only the uh
trajectory, but certain metrics that go
along with it.
So, you can calculate like average
displacement error between the ground
road trajectory and your predicted
trajectory. You can calculate road
completion percentage,
uh
infraction penalty based on if your
vehicle is running a red light, if it is
running a stop sign, all of these
things.
Uh typically in So, there is a simulator
called Carla. They have this leaderboard
that they run for end-to-end AI models.
So, they use the multiplication of uh
RCP and IP as the driving score. There's
also collision frequency per kilometer,
lane invasion per kilometer, how
frequently are you you know per
kilometer
for
certain set of driving kilometers, how
frequently are you
going into a different lane
automatically.
There are certain comfort metrics as
well which can be considered like
the longitudinal jerk is in terms of
moving forward or lateral acceleration
in terms of moving sideways. Are these
inconsistent or
uh
in or within the definition that is
acceptable. All of these metrics can be
generated
and you can essentially
uh
build a complete uh flywheel using two
components. One is the world foundation
model. The other one is the end-to-end
AI stack.
Essentially, it starts with gathering
data.
Once you gather more and more data, you
can use that data to train the world
foundation model.
Generate specific scenario data
and
uh train and validate your end-to-end AI
stack using this data.
And then identify the failure scenarios.
Identify where the uh stack is failing.
Identify where particularly you want
more data.
And then pass this information on. If
needed, gather more data. Again, train
the world foundation model and the cycle
keeps going, right? And as many of these
as many runs as you do of this cycle,
the requirement of gathered data or
physically recorded data progressively
goes down.
Right? Because you more of like more and
more you don't need recorded data
anymore. You have captured most of the
visual perspectives that you want to
capture. And whatever dynamic
perspectives you want to bring in, you
can always bring that in using a
simulator or
using a reference video.
Right? So, the core behaviors and
features are retained across
geographies. Uh like weather conditions.
All right? And the scene level features
can be fine-tuned with local data.
Right? So, if you want to do this again
for a new geography, you don't need to
gather as much amount of data as you did
for the first time.
You only need a certain set of data to
generalize over the geography,
generalize over certain objects that are
present in this particular geography as
compared to the base one. And on that,
you can still again do the same cycle
and get up and running quickly.
Right?
So, this essentially helps you build a
comprehensive training and validation
suite for these end-to-end AI models.
Right? And this is typically how your
Teslas of the world are able to rapidly
generalize to new geographies as well.
Right?
So, to summarize,
Autonomy 2.0 is here. It's being fueled
by end-to-end AI and world foundation
models.
The end-to-end AI
stack has the ability to generalize over
a wide range of highly variable driving
environments.
And synthetic data and world foundation
models are acting as the fuel to this
end-to-end engine.
And finally, the metrics are still
evolving. This is still as a whole,
the stack is still evolving.
And
there is lot more work to be done in
this space going forward. Right?
As an example, I would like to show some
open problems.
So,
first one I think I've already
mentioned,
how can we ensure the fidelity of the
output videos
So, while increasing the generation
length, so essentially, there is only a
certain length of video that you can
generate in one inference. Typically,
that can go as as high as 100, 120
frames, maybe. When you do an
autoregressive
implementation, the system breaks down
after maybe two or three
implementations, and the maximum you can
generate are like roughly 500 frames.
How can you go beyond that limit?
Right?
Uh
Then how do you manage generation costs?
Because these are visual generative AI
models and you have to run them for
thousands of scenarios for hundreds of
variations.
How can you
realistically manage this
cost when you're actually running this
on high GPUs, high compute GPUs, right?
Then generating data for other
modalities
like lidar or radar. This is still an
open problem. Um
then ensuring the eligibility of small
objects. Generative AI is not great on
you know
uh
generating very small objects. Like for
example, if I'm driving on a road and
there there's a traffic sign that I'm
supposed to see and from a certain
distance, the model will not be able to
generate that very small traffic traffic
sign, right? And it will only become
clearer when I'm very close to the
object or it won't even show up. Right?
So there are certain problems like that
which are still
there and that has that have to be
solved.
Right? So
this has been
my uh
uh sort of coverage on these open
end-to-end AI and world foundation
models.
Uh and I'm open for questions.
Thank you.
In the data privacy slide, you talked
about identifying the failure. So is
that failure also in simulation or
is it then is the model then deployed
again on the roads and then
So
the
deployment on the road has to happen at
a stage where the maturity is well
validated. Right?
Um but the flywheel still keep will keep
on going after deployment has also
happened. That is how FSD also keeps on
uh
uh updating their own stack. Uh even if
they have deployed a certain version of
stack, that will keep on updating over
certain periods of periods of time where
they've identified uh
certain problems and then fix them and
updated them. So, you can actually do an
OTA of your entire autonomous driving
stack now because it's just an AI model,
right?
So, that's how it's typically handled.