Self-driving cars may face no-win situations where a crash is unavoidable. Programmers will have to determine how the car should decide who to protect - the passengers or pedestrians. There are no easy answers to this problem as any choice could end lives.