BACKGROUND

Autonomous vehicles, such as vehicles that do not require a human driver, can be used to aid in the transport of passengers or items from one location to another. Such vehicles may operate in a fully autonomous mode where passengers may provide some initial input, such as a pick up or destination location, and the vehicle maneuvers itself to that location.

BRIEF SUMMARY

One aspect of the disclosure provides a system. The system may include memory storing detailed map information identifying a plurality of predetermined locations where a vehicle is able to pick up or drop off passengers. The system may also include one or more server computers each having one or more processors. The one or more server computers may be configured to: receive a request from a client computing device, the request identifying a first location; select a set of one or more suggested locations by comparing the predetermined locations to the first location; and provide the set of one or more suggested locations to the client computing device.

In one example, the one or more server computers are configured to select the set of one or more suggested locations by determining whether the first location corresponds to a predetermined location, and when the first location corresponds to the predetermined location, including the predetermined location in the set. In another example, the one or more server computers are configured to select the set of one or more suggested locations by identifying predetermined locations of the plurality of predetermined location that are within a threshold distance of the first location. In another example, the threshold distance is defined as a walking distance. Alternatively, the threshold distance is defined as a radial distance. In addition, the one or more server computers are configured to select the set of one or more suggested locations by scoring each given one of the identified predetermined locations based on a first plurality of factors related to the difficulty in a person reaching that given one of the identified predetermined locations from the first location and the set of one or more suggested locations is also selected based upon the scoring of the identified predetermined locations.

In another example, the one or more server computers are configured to conduct the scoring of each given one of the identified predetermined locations also based on a second plurality of factors related to the difficulty in an autonomous vehicle reaching and stopping at that given one of the identified predetermined locations. In this example, the one or more server computers are also configured to determine at least one of the second plurality of factors based on a current location of the autonomous vehicle. In another example, the one or more server computers are configured to select the set of one or more suggested locations by identifying a set number of predetermined locations of the plurality of predetermined locations that are within a threshold distance of the first location and closest to the first location. In this example, the system also includes one or more autonomous vehicles, and wherein the one or more server computers are also configured to receive, from the client computing device, a selection of a suggested location of the set of one or more suggested locations and dispatch a vehicle of the one or more autonomous vehicles to the selected suggested location. In another example, the first location is a destination location and the one or more server computing devices are also configured to receive, from the client computing device, information confirming the first location as the destination location and provide instructions to a vehicle to drop off a passenger at the first location. In another example, the first location is a pick up location and the one or more server computing devices are also configured to receive, from the client computing device, information confirming the first location as the pickup location and dispatch a vehicle to the first location.

Another aspect of the disclosure provides a computer-implemented method. The method includes accessing, by one or more processors of one or more server computing devices, detailed map information identifying a plurality of predetermined locations where a vehicle is able to pick up or drop off passengers; receiving, by the one or more processors, a request from a client computing device, the request identifying a first location; selecting, by the one or more processors, a set of one or more suggested locations by comparing the predetermined locations to the first location and identifying predetermined locations of the plurality of predetermined locations that are within a threshold distance of the first location and closest to the first location; and providing, by the one or more processors, the set of one or more suggested locations to the client computing device.

In one example, selecting the set of one or more suggested locations includes determining whether the first location corresponds to a predetermined location, and when the first location corresponds to the predetermined location, including the predetermined location in the set. In another example, selecting the set includes selecting a predetermined number of predetermined locations of the plurality of predetermined locations that are within a threshold distance of the first location and closest to the first location. In this example, the threshold distance is defined as a walking distance. Alternatively, the threshold distance is defined as a radial distance. In addition, selecting the set of one or more suggested locations includes scoring each given one of the identified predetermined locations based on a first plurality of factors related to the difficulty in a person reaching that given one of the identified predetermined locations from the first location and using the scoring of the identified predetermined locations to select the set of one or more suggested locations. In this example, the scoring of each given one of the identified predetermined locations is conducted based on a second plurality of factors related to the difficulty in an autonomous vehicle reaching and stopping at that given one of the identified predetermined locations.

A further aspect of the disclosure provides a non-transitory, tangible, computer readable medium on which instructions are stored. The instructions, when executed by one or more processors, cause the one or more processors to perform a method. The method includes accessing detailed map information identifying a plurality of predetermined locations where a vehicle is able to pick up or drop off passengers; receiving a request from a client computing device, the request identifying a first location; selecting a set of one or more suggested locations by comparing the predetermined locations to the first location; scoring given ones of the plurality predetermined locations based on a first plurality of factors related to the difficulty in a person reaching a respective given one of the identified predetermined locations from the first location; providing the set of one or more suggested locations to the client computing device; and provide instructions to a vehicle to drop off a passenger at the first location.

