20171220

General Theory Of Auto-driving

Today there are many companies working on autonomous cars/vehicles/drones/aircraft/ships/submarines. I have no idea how their software actually work. I also do not know, if there is a general theory for how auto-driving/piloting software should work.

Why we would need a general theory for it, right at the beginning?

I think a good example is the history of computer programming languages. What were their state, before and after, development of the general theory of computer programming language design?

I think the general theory of auto-driving/piloting, could be based on Game Theory in Computer Science.

For example, when a computer is playing Chess, to decide each next move, it generates as many as possible future moves for itself, and the other player. It evaluates the board states in those future moves from a winning/losing score point of view. Then it chooses the best move for max winning and min losing scores.

Now imagine we have a self-driving car:

It keeps track of all moving vehicles, people, animals, objects around. (Each could be represented as a moving box in a 3d non-moving world of boxes/surfaces.)

Every millisecond (or less), the software creates future possible moves, for the car itself, and all other moving objects. (So the car itself and each moving object is like the players of the same game.)
And it also evaluates those future possibilities for:
How close it is to the future navigation goals of the car?
How high is the chance of an unavoidable collision?
How high is the chance of an avoidable collision?
Even if a collision is certain, how the damage to the car itself can be minimized?
Even if a collision is certain, how the damage to the another vehicle can be minimized?
Even if a collision is certain, how the damage to the another person/animal can be minimized?

To generate future possibilities, it would need to consider things like, the car itself, each of all other vehicles around, each of all people/animals around slowing/accelerating/turning in many different (and physically possible) ways/directions.

Of course, the general method described above can be modified for piloting, instead of driving (just like the general algorithms known in Game Theory can be modified for playing different games).

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.