Patent Description:
The term autonomous vehicle may refer to a self-driving or driverless mode in which no passengers are required to operate the vehicle. An autonomous vehicle may be referred to as a robot vehicle or an automated vehicle. The autonomous vehicle may include passengers, but no driver is necessary. These autonomous vehicles may park themselves or move cargo between locations without a human operator.

A mixed mode vehicle may include some autonomous features combined with some manual features. However, many challenges have arisen in the determination of how to determine that manual features are compatible with certain autonomous features.

US patent application Pub. No. "<CIT>" discloses a method, which includes: determining, by a computer device, conditions along a predefined driving route of a vehicle; determining, by the computer device and based on the conditions, risk factors of segments of the driving route; determining, by the computer device, an optimal one of the segments for switching the vehicle from autonomous driving mode to manual driving mode; and outputting, by the computer device, data defining the determined optimal one of the segments.

US patent application Pub. No. "<CIT>" discloses generating and providing route options for an autonomous vehicle. For example, a user may identify a destination, and in response the vehicle's computer may provide routing options to the user. The routing options may be based on typical navigating considerations such as the total travel time, travel distance, fuel economy, etc. Each routing option may include not only an estimated total time, but also information regarding whether and which portions of the route may be maneuvered under the control of the vehicle alone (fully autonomous), a combination of the vehicle and the driver (semiautonomous), or the driver alone. The time of the longest stretch of driving associated with the autonomous mode as well as map information indicating portions of the routes associated with the type of maneuvering control may also be provided.

US patent application Pub. No. "<CIT>" discloses a method for operating a navigation system for a motor vehicle with autopilot is disclosed, wherein the autopilot is designed to automatically carry out longitudinal and lateral guidance of the motor vehicle in the activated state during a piloted journey without assistance from a driver. The navigation system determines, for a destination prescribed by the user, a route to the destination on the basis of navigation data. The roads on which the activation of the autopilot is likely to be possible is determined using traffic data and on the basis of a predetermined activation condition for the autopilot.

US patent application Pub. No. "<CIT>" discloses A route searching system, a route searching method, and computer program are provided that enable selection of an appropriate recommended route for a user in consideration of interruption of automated driving control. The route searching system is configured to: when a recommended route from a departure point to a destination including an automated driving section where automated driving control of a vehicle is performed is searched for, acquire a plurality of candidate routes as candidates for the recommended route (S4); for each candidate route, specify an interruption section where the automated driving control is interrupted in the automated driving section in the candidate route (S8, S9); based on the interruption section, for each candidate route, acquire interruption information indicating that the automated driving control is interrupted in the automated driving section in the candidate route (S10); and, based on the interruption information, select the recommended route from the candidate routes.

<CIT> discloses a collaborative system for providing collaborative control of a vehicle. Manual inputs and autonomous inputs for controlling the vehicle are blended together into collaborative controls.

According to a first aspect of the invention, a method comprising the features of claim <NUM> is provided.

According to a second aspect of the invention, an apparatus comprising the features of claim <NUM> is provided.

According to a third aspect of the invention, a non-transitory computer readable medium comprising the features of claim <NUM> is provided.

Exemplary embodiments of the present invention are described herein with reference to the following drawings.

A simultaneous mix mode vehicle is a vehicle that a human driver and a computer driver operate at the same time. For example, in one driving session, the computer operates the steering while the driver operates the brake. These and other driving operations may be assigned to either the computer or the human driver. The following embodiments include apparatus for the selection of driving operations, generation of recommendations for the assignment of driving operations, and application of the assignment of driving operations to either the computer or the human driver simultaneously.

A list of possible driving operations may be provided in a user interface (Ul), which may be a vehicle-integrated navigation display or on a mobile device (e.g., phone) that is connected to the vehicle or otherwise associated with the vehicle. The driver, or a passenger, may operate the Ul to select one or more driving operations to be performed automatically by the vehicle and/or one or more driving operations that the driver or user would like to perform.

In one example, the driving operations includes steering, braking, acceleration, horn, left turn signal, and right turn signal. Other driving operations are possible and listed below. The human operator may select the driving operation that they desire to perform. For one example, the human operator could choose steering and left turn signal. This selection causes both the steering and left turn signal to be under human operation as the vehicle drives. The other operations such as braking, acceleration, horn and right turn signal would be under the operation of the machine/computer. If none of the driving operations are selected by the human operator, the vehicle drives in fully autonomous mode. If all of the operations are selected by the human operator, the vehicle drives in manual mode.

The user may make selections for the driving operations on a trip basis or in real time. In real time, the user may want to take over certain driving operations and subsequently relinquish control. For example, the user may change operation when driving past aa point of interest (POI). The autonomous vehicle may default to drive at the speed limit in autonomous mode. For this case, the user may select to control of the braking and acceleration in order to drive more slowly and explore the POI.

Many other driver assistance features aid drivers in driving and parking a vehicle. Various subsets of these features may sometimes be referred to as "automated driving," "highly assisted driving," "advanced driving assistance systems," or "autonomous driving," but driver assistance features may have different levels of sophistication, ranging from simple warning to complex systems that may drive a car without user input. The driver assistance features may be enabled by an engine control management (ECM) system on a vehicle. The driver assistance features may rely on different sensor technologies and high definition (HD) MAP or dynamic backend content, including traffic information services, to aid the in-vehicle ECM system for the right decision strategy as how to drive along the road network.

The driving operations may also be selected, recommended, and/or displayed according to hierarchies or levels. That is, rather than recommending and selecting individual driving operations, set of driving operations may be recommended or selected. The society of automotive engineers (SAE) sorts driver assistance features into different levels, ranging from <NUM> to <NUM>. In Level <NUM>, an automated system may issue warnings and may momentarily intervene, but has no sustained vehicle control. In level <NUM>, the driver and the automated system share control of the vehicle. Examples of level <NUM> include adaptive cruise control (ACC), where the driver controls steering and the automated system controls speed, and parking assistance, where steering is automated while speed is manual. Level <NUM> may be referred to as "hands off" because the driver should be prepared to retake full control of the vehicle at any time. Lane keeping assistance (LKA) Type II is a further example of level <NUM> driver assistance.

In level <NUM>, the automated system takes full control of the vehicle (accelerating, braking, and steering). The driver monitors the driving and be prepared to intervene immediately at any time if the automated system fails to respond properly. Though level <NUM> driver assistance may be referred to as "hands off" because the automated system has full control of acceleration braking and steering, in some cases, contact between hand and steering wheel is often required to confirm that the driver is ready to intervene. In this way, the driver supervises the actions of the driver assistance features.

In level <NUM>, the driver can safely turn their attention away from the driving tasks, e.g. the driver can text or watch a movie. Level <NUM> may be referred to as "eyes off. " The vehicle may handle situations that call for an immediate response, such as emergency braking. The driver should still be prepared to intervene within some limited period of time, often specified by the manufacturer, when called upon by the vehicle to do so. The car has a so-called "traffic jam pilot" that, when activated by a human driver, allows the car to take full control of all aspects of driving in slow-moving traffic at up to <NUM> kilometers per hour (<NUM> miles per hour). However, the function works only on highways with a physical barrier separating one stream of traffic from oncoming traffic.

In level <NUM>, similar automated control as in level <NUM>, but no driver attention is required for safety. For example, the driver may safely go to sleep or leave the driver's seat. Level <NUM> may be referred to as "mind off" or "driverless. " Self-driving in level <NUM> may be supported only in limited spatial areas (e.g. within geofenced areas) or under special circumstances, like traffic jams. Outside of these areas or circumstances, the vehicle may safely abort the trip (e.g. park the car) if the driver does not retake control.

In level <NUM>, no human intervention is required to drive the vehicle. As a result, a vehicle with level <NUM> driver assistance features may not require or have a steering wheel installed. An example would be a robotic taxi. Level <NUM> driver assistance may be referred to as "autonomous driving" because the vehicle may drive on a road without human intervention. In many cases, it is used as the same term as a driverless car, or a robotic car.

The following embodiments also relate to several technological fields including but not limited to navigation, autonomous driving, assisted driving, traffic applications, and other location-based systems. The following embodiments achieve advantages in each of these technologies because improved data for driving or navigation improves the accuracy of each of these technologies by allowing fine-tuned selections of the control of driving operations in different situations. In each of the technologies of navigation, autonomous driving, assisted driving, traffic applications, and other location-based systems, the number of users that can be adequately served is increased. In addition, users of navigation, autonomous driving, assisted driving, traffic applications, and other location-based systems are more willing to adopt these systems given the technological advances in accuracy.

<FIG> illustrates an example system for automated driving analysis and application including a mobile device <NUM>, a server <NUM>, and a network <NUM>. Additional, different, or fewer components may be included in the system. The following embodiments may be entirely or substantially performed at the server <NUM>, or the following embodiments may be entirely or substantially performed at the mobile device <NUM>. In some examples, some aspects are performed at the mobile device <NUM> and other aspects are performed at the server <NUM>.

The mobile device <NUM> may include a probe <NUM> or position circuitry such as one or more processors or circuits for generating probe data. The probe points are based on sequences of sensor measurements of the probe devices collected in the geographic region. The probe data may be generated by receiving global navigation satellite system (GNSS) signals and comparing the GNSS signals to a clock to determine the absolute or relative position of the mobile device <NUM>. The probe data may be generated by receiving radio signals or wireless signals (e.g., cellular signals, the family of protocols known as WiFi or IEEE <NUM>, the family of protocols known as Bluetooth, or another protocol) and comparing the signals to a pre-stored pattern of signals (e.g., radio map). The mobile device <NUM> may act as the probe <NUM> for determining the position or the mobile device <NUM> and the probe <NUM> may be separate devices.

The probe data may include a geographic location such as a longitude value and a latitude value. In addition, the probe data may include a height or altitude. The probe data may be collected over time and include timestamps. In some examples, the probe data is collected at a predetermined time interval (e.g., every second, every <NUM> milliseconds, or another interval). In this case, there are additional fields like speed and heading based on the movement (i.e., the probe reports location information when the probe <NUM> moves a threshold distance). The predetermined time interval for generating the probe data may be specified by an application or by the user. The interval for providing the probe data from the mobile device <NUM> to the server <NUM> may be the same or different than the interval for collecting the probe data. The interval may be specified by an application or by the user.

Communication between the mobile device <NUM> and the server <NUM> through the network <NUM> may use a variety of types of wireless networks. Some of the wireless networks may include radio frequency communication. Example wireless networks include cellular networks, the family of protocols known as WiFi or IEEE <NUM>, the family of protocols known as Bluetooth, or another protocol. The cellular technologies may be analog advanced mobile phone system (AMPS), the global system for mobile communication (GSM), third generation partnership project (3GPP), code division multiple access (CDMA), personal handy-phone system (PHS), and <NUM> or long term evolution (LTE) standards, <NUM>, DSRC (dedicated short range communication), or another protocol.

Communication between multiple vehicles or multiple mobile devices <NUM> through the network <NUM> may also be implemented by any of these wireless networks. In some examples, the multiple vehicles or multiple mobile devices <NUM> exchange the mixed mode status of their respective vehicles. The mixed mode status may indicate whether or not a vehicle is performing a mixed mode where operation of the vehicle is shared between manual control and computer control. The mixed mode status may indicate the individual driving operations and whether each is applied to manual control or computer control. When the configuration of human versus operation is shared with nearby vehicles, other vehicles in the vicinity are aware that this candidate vehicles is partially operated by human and partially by machine. Nearby vehicles could then plan for known inconsistencies with simultaneous mix mode vehicles. For example, nearby vehicles may keep a greater distance when certain driving operations are performed by manual control and shorter distance when certain driving operations are performed by computer control.

<FIG> illustrates a first embodiment of a mix mode driving controller <NUM> for the system of <FIG>. While <FIG> illustrates the mix mode driving controller <NUM> at server <NUM>, the mobile device <NUM> may also implement the mix mode driving controller <NUM>. The mix mode driving controller <NUM> may include a profile comparator <NUM>, a recommendation module <NUM>, and a driving module <NUM>. Additional, different, or fewer components may be included.

The mix mode driving controller <NUM> may include a memory that includes profile data <NUM>. The profile data <NUM> includes one or more characteristics of the users and/or entities involved with an automated driving trip. The term "automated driving trip" includes autonomous driving trips or assisted driving trips and other degrees therebetween. The profile comparator <NUM> accesses the profile data <NUM> associated with the automated driving trip. The profile data <NUM> may be accessed from memory or be requested from an external source. The profile comparator <NUM> may filter the profile data and identify one or more characteristics or properties described below for defining the list of driving operations that will be analyzed according to the profile data <NUM>.

The recommendation module <NUM> receives the profile data <NUM> and provides a recommendation for the automated driving trip based on the profile data <NUM>. That is, the one or more characteristics of the users and/or entities involved with the automated driving trip may impact whether a particular driving operation is recommended to have computer control or manual control. In some instances, the driver's characteristic in the profile data <NUM> may indicate that the driver is skilled at braking (e.g., the driver has a low reaction time and high eye-hand coordination), which causes the recommendation to include manual operation for braking. In some instances, the vehicle's characteristic may include a particular quantity or type of sensors, which causes the recommendation to include computer operation for braking. For example, when the vehicle includes proximity sensors, the recommendation module <NUM> may recommend that the vehicle perform braking.

In some instances, the driver's characteristic in the profile data <NUM> may indicate that the driver prefers to drive at a speed different than the posted speed limits, which causes the recommendation to include manual operation for acceleration. In some instance, the profile data <NUM> may indicate that the vehicle is configured to follow the posted speed limits or a percentage thereof, which causes the recommendation to include computer operation for acceleration. It may be a requirement of an insurance policy on the vehicle, an employment agreement of the driver of the vehicle, or a lease/sale of the vehicle that the computer operation be used for acceleration, or another specified driving operation. Various characteristics in the profile data <NUM> may impact the recommendation for various driving operations.

The recommendation module <NUM> may determine a list of driving operations for the automated driving trip. The list of possible driving operations may be a predetermined list or the list may be determined according to the trip. The predetermined list of driving operations may be specific to the vehicle or the user. The predetermined list of driving operations may be those driving operations that could be performed by a computer depending on the trip. For example, certain types of roads may not be suitable for autonomous driving. Downtown, congested, or other types of driving may not be included in certain locations. Similarly, certain road geometries may not be suitable for autonomous driving. For example, certain curvatures, tunnels, may not be accurately traversed using fully autonomous driving.

The profile data <NUM> includes compatibility data or corresponding profile for the first driving operation and the second driving operation. The compatibility data defines certain driving operations that are designated as manual operation or computer operation in groups. For example, the left turn signal and right turn signal may be grouped together so that both driving operations are either manual control or computer control. As another example, acceleration and braking may be grouped together so that both driving operations are either manual control or computer control. The recommendation module <NUM> determines a list of driving operations for the automated driving trip based on the compatibility data.

The mix mode driving controller <NUM> may interact with one or more users using the mixed mode interface <NUM>. The mixed mode interface <NUM> may be included in a mobile device such as a phone or a device integrated with the vehicle. <FIG> illustrates an example mixed mode recommendation on an example mixed mode interface <NUM>, which may be a recommendation and selection interface. The mixed mode interface <NUM> may include multiple driving operation indicators (Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, etc.), where each "Function" includes a textual or graphical symbol that indicates the driving operation. Each driving operation may be paired or otherwise associated with a selector <NUM>. The selector may be configurable with a first value (e.g., checked) for manual operation and a second value (e.g., unchecked) for computer operation.

The mixed mode interface <NUM> allows the user to select one or more driving operations from the list to be applied to computer control and one or more driving operations from the list to be applied to manual control. The mix mode driving controller <NUM> may send the list to a mobile device with one or more selectable indicators for the one or more driving operations. The recommendations defined by the recommendation module <NUM> may be presented with the list. For example, the recommendation may be a pre-filled selection on the one or more selectable indicators.

The user may provide input to the mixed mode interface <NUM> to either accept or modify the recommendations presented by the mix mode driving controller <NUM>. For example, when the recommendation includes manual operation for braking and computer operation for steering, the user may de-select either setting. The user may switch both operations to manual control or switch both operations to computer control.

The driving module <NUM> receives the selections provided to the mixed mode interface <NUM> and implements the computer controlled operations as modified or approved by the user. The driving module <NUM> may generate commands for the vehicle (e.g., steering commands, braking commands) according to the operations assigned to computer operation. The driving module <NUM> may also provide indicators to the user for manual operation. For example, the driving module <NUM> may activate manual control in response to confirmations made outside of the mixed mode interface <NUM> (e.g., audible commands, mechanical switches on the vehicle).

In addition to the mixed mode interface <NUM>, the vehicle may provide recommendations or reminders to the user through one or more indicators or lights (e.g., green lights) on or near the instruments or controls of the vehicle. For example, a light may be placed to illuminate the steering wheel, the brake, the accelerator, or others. The lights may communicate the recommendation to the user. That is, the recommendations on the mixed mode interface <NUM> may be paired with lights illuminating the corresponding devices in the vehicle. The lights may communicate reminders to the user. That is, after the selections for mixed mode operation have been made by the user, the lights may illuminate the devices in the vehicle corresponding to the one or more driving operations selected by the user for manual operation. In one example, the devices for driving operations selected for manual operation are illuminated with a first color (e.g., green) and the devices for driving operations selected for computer operation are illuminated with a second color (e.g., red).

The mix mode driving controller <NUM> may be configured to adjust reaction times according to the recommendation for the driving operations or selections of the driving operation. In order for the computer and the human user to cooperate, one or more reaction times may be adjusted. For the simultaneous mix mode vehicles to drive normally, the reaction time of the human operator and the reaction time of vehicle should be aligned. Consider an example where the steering operation is performed by computer control and the braking operation is performed by the user. When an obstacle is detected, and both the computer control and the user should react, it could be problematic if the steering operation is performed immediately (e.g., in a few milliseconds) and the braking operation is not performed for a longer period of time (e.g., hundreds of milliseconds to <NUM> or <NUM> seconds), which is typical or appropriate for the user. In this situation, a skid could result. The reaction time of the human operator is ascertained by allowing the driver to manually enter the reaction time, determined from an online driving profile of the human operator, or determined automatically via a series of action/reaction evaluations onboard the vehicle when the human operator boards the vehicle. The mix mode driving controller <NUM> may also determine and confirm that the agreed reaction times are below the legal threshold.

The recommendation module <NUM> may update the profile data <NUM> based on user inputs received at the mixed mode interface <NUM>. For example, the recommendation module <NUM> may recommend a set of operations for the user to perform based on historical selections. The user may override the recommended operations and the recommendation module <NUM> would self-learn and use this information to make better recommendations the next time. That is, the recommendation module <NUM> may receiver user inputs that override a recommendation and store those user inputs as user inputs. Alternatively, the recommendation module <NUM> may update the profile data <NUM> in light of the user inputs that override the recommendation.

In an example, the recommendation module <NUM> recommends that the user controls steering, acceleration, and the left turn signal. The user may override and unselect the left turn signal. Thus, the user agrees to perform only two operations, which are steering and acceleration while the computer operation operates the brake, horn, left and right turn signal. The recommendation module <NUM> modifies the profile data <NUM> to indicate that the user prefers to not to operate the left turn signal or prefers only to operate steering and acceleration.

<FIG> illustrates a second embodiment of a mixed mode driving controller for the system of <FIG>. The second embodiment includes additional inputs for providing recommendation for the automated driving trip. For example, the profile data <NUM> may have multiple components including, but not limited to, a user profile 202A, a vehicle profile 202B, and an environmental profile 202C. In addition or in the alternative to the profile data <NUM>, inputs to the recommendation process may include position data <NUM> and/or map data from the geographic database <NUM>. Additional, different, or fewer components may be included.

The user profile 202A may include one or more of a historical component, a performance component, and/or a dynamic component. The historical component of the user profile 202A may include historic selections of the user. The mix mode driving controller <NUM> may record how often the user selects to retain control of each driving operation over time. The mix mode driving controller <NUM> may determine, for future automated trips, whether each of the driving operations are more often or not (or more often than a certain threshold) performed by the user. The mix mode driving controller <NUM> may compare the historical component of the user profile 202A to determine whether certain operations are recommended to be performed by the user.

The performance component of the user profile 202A may include a rating of how well the user has performed with specific driving operations in the past. For example, the mix mode driving controller <NUM> may record the operations performed by the user. The mix mode driving controller <NUM> may compare operations performed by manual operations to what would have been performed by computer operation. For example, the sensors of the vehicle may detect obstacles and the driving module <NUM> calculate steering corrections in response to those detections even those the user is performing steering. The mix mode driving controller <NUM> may compare the steering adjustment that would have been made by the driving module <NUM> to the steering adjustment performed by the user. The mix mode driving controller <NUM> may compare the time delay before the steering adjustment is made to the time delay that would have been required by the driving module <NUM>. The mix mode driving controller <NUM> may rate the difference determined by one or more of these types of comparison as the performance component of the user profile 202A. The mix mode driving controller <NUM> may compare the performance component of the user profile 202A to determine whether certain operations are recommended to be performed by the user.

The dynamic component of the user profile 202A may include one or more other individual factors of the user. The dynamic component may indicate whether the user has been awake for a certain amount of time. The dynamic component may indicate whether the user has visited certain risky locations (e.g., a bar where alcohol is served). The dynamic component may indicate whether the user's calendar indicates any distractions such as phone calls or meetings. The mix mode driving controller <NUM> may rate these types of indicators to a value for the dynamic component of the user profile 202A. The mix mode driving controller <NUM> may compare the dynamic component of the user profile 202A to determine whether certain operations are recommended to be performed by the user.

The vehicle profile 202B may include any one or a combination of a historical component, a performance component, and/or an organizational component. The historical component of the vehicle profile 202B may include a value derived from past selections made for a specific vehicle or mobile device. The mix mode driving controller <NUM> may record how often particular selections for manual control or computer control have been made for the vehicle or mobile device over time. The mix mode driving controller <NUM> may determine, for future automated trips, whether each of the driving operations are more often or not (or more often than a certain threshold) performed by the user. The mix mode driving controller <NUM> may compare the historical component of the vehicle profile 202B to determine whether certain operations are recommended to be performed by the user or automatically by the vehicle.

The performance component of the vehicle profile 202B may include a rating of how well the vehicle systems have performed with specific driving operations in the past. For example, the mix mode driving controller <NUM> may record the operations performed by the driving module <NUM>. The mix mode driving controller <NUM> may log when the user has intervened for the driving module <NUM>. The mix mode driving controller <NUM> may log when the DM <NUM> has identified an error or malfunction with a driving operation. The mix mode driving controller <NUM> may calculate the performance component of the vehicle profile 202B based on one or more of these logs. The mix mode driving controller <NUM> may compare the performance component of the user profile 202A to determine whether certain operations are recommended to be performed by the user or by the driving module <NUM>.

The organizational component of the vehicle profile 202B may include one or more data values that indicate pre-selected recommendation for an organization. The organization may be a manufacturer of the vehicle. The manufacturer may indicate certain driving operations that are recommended to be performed by the driving module <NUM> and vehicle systems. The organization may be a fleet enterprise (e.g., shipping delivery network of vehicles, taxi service network of vehicles). Through policies or settings specified by the fleet enterprise, certain driving operations may be required or preferred to be performed by the driving module <NUM> and vehicle systems.

The organizational component of the vehicle profile 202B may include one or more data values that indicate rules or regulations by a municipality or other government. For example, certain governments may only allow fully autonomous control or certain types of roads and/or restrict certain driving operations to specific areas. The mix mode driving controller <NUM> may receive regulation data from an external service (e.g., regulation server) in response to the location of the vehicle or an upcoming calculated route. The mix mode driving controller <NUM> may compare the regulations of the vehicle profile 202B to determine whether certain operations are recommended to be performed by the user or automatically by the vehicle.

The government rules may also dictate where the mixed mode vehicle can drive. To be allowed in a lane on the road designated for autonomous driving, a threshold of operations should be performed by the driving module <NUM>. For example, the mix mode driving controller <NUM> may select a route according to the number of driving operations, or which driving operations are selected for computer control. The mix mode driving controller <NUM> may select a route that includes a road segment or lane of a road segment designated for autonomous control when the number of driving operations assigned for computer control exceeds a threshold. The threshold could be a percentage (e.g., <NUM>% of the driving operations must be performed by the machine in order to select the preferred route). For another example, it could be based on core features where the braking and steering is controlled by the driving module <NUM>. In another example, the mixed mode vehicles may be designated to a separate lane or route because of a potential for driving inconsistencies.

The environmental profile 202C may include a weather component. The weather component may include values that are weights applied to one or more driving operations in certain weather conditions. For example, braking may better be applied by the driving module <NUM> during rain or other precipitation. The mix mode driving controller <NUM> may compare the weather component of the vehicle profile 202B to a weather condition to determine whether certain operations are recommended to be performed by the user. The weather conditions may be sensed by the vehicle. Direct sensing for the weather condition may include a rain sensor or a camera that collects images that are analyzed to determine the weather. Indirect sensing for the weather condition may infer the weather condition based on a windshield wiper setting or a headlight sensor.

The environmental profile 202C may be accessed according to position data <NUM> and/or map data from the geographic database <NUM>. The mix mode driving controller <NUM> may send a request to a weather service (e.g., weather server) based on the position data <NUM> detected by the probe <NUM>. The mix mode driving controller <NUM> may first determine a current road segment or upcoming road segment from the geographic database <NUM>. The mix mode driving controller <NUM> may send a request to the weather service based on the road segment. The weather service returns the current or upcoming weather condition.

In other examples, the mix mode driving controller <NUM> may determine the environment profile 202C for a route or a portion of the route. The mix mode driving controller <NUM> or otherwise at server <NUM> receives a routing request including at least a destination and calculates a route to the destination. The mix mode driving controller <NUM> accesses the profile data <NUM> in response to the calculated route according to any of the examples herein. The recommendation module <NUM> receives the profile data <NUM> and provides a recommendation for the automated driving trip based on the profile data <NUM>.

<FIG> illustrates another example for the mixed mode interface <NUM> including a mixed mode recommendation for multiple passengers or drivers. In this example, the mixed mode interface <NUM> includes multiple driving operation indicators (Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, etc.), where each "function" includes a textual or graphical symbol that indicates the driving operation. Each driving operation may be paired or otherwise associated with a selector <NUM>. In this case, the selector <NUM> may be configurable with three or more values including a first value for manual operation for a first user (e.g., P1), a second value for manual operation for a second user (e.g., P2), and a third value (e.g., A) for computer operation.

Any of the examples for profile data <NUM> described herein may be applicable to multiple users. The recommendation module <NUM> may analyze profile data for multiple users to determine which user is recommended for each driving operation recommended for manual operation. Some users may be more skilled at certain operations than others. Some users may prefer to perform some driving operations. The driving operations may be applied according to seat in the vehicle. Steering or braking may be better performed by a passenger in the front see where visibility is higher. Turn signals may be better operated by users in the back seats where blind spots can be avoided.

For example, the user profile 202A may include properties for multiple user. The profile 202A may include a property of a primary user (e.g., driver seat passenger) and a property of a secondary user (e.g., any other passenger). The recommendation module <NUM> assigns one or more driving operations to the primary user and one or more driving operations to the secondary user based on the user profile 202A.

The driving operations may be assigned to specific users according to other factors. One factor may be schedule or calendar. The braking or steering operations may be switched from one user to another as their schedules permit them to provide attention to the driving operation. Another factor may be age. Non-critical operations such as turn signals or sunroof control may be assigned to children. Critical operations such as steering or braking may be assigned to primary passengers such as adults.

<FIG> illustrates an example cost analysis for mixed mode driving. The mix mode driving controller <NUM> may also manage driving as a service for the vehicle. In driving as a service, one or more driving operations are available to passengers of the vehicle according to a cost schedule or a subscription service including a predetermined amount of services for a predetermined time period. In these systems, different driving operations may not be weighted equally. That is, certain driving operations may cost more or be designated a greater proportion of the amount of the available service through the subscription.

As shown in the mixed mode interface <NUM> of <FIG>, multiple driving operation indicators (Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, Function <NUM><NUM>, etc.) may be displayed paired with a cost field <NUM>. The cost field <NUM> may include a numeric value for each of the driving operation indicators for a cost of the driving operation. The cost field <NUM> may be combined the selector <NUM>. For example, the selector may be configurable with a first value (e.g., zero or empty) for manual operation and a second value (e.g., the cost of the driving operation) for computer operation.

The mix mode driving controller <NUM> may be configured to calculate a first cost associated with the first driving operation designated to autonomous control. The cost may be a function of the types of roads on the trip (e.g., highways versus local roads) or the geometry of the trip (e.g., curvy roads versus straight roads). The cost may be a function of the weather. In other examples, each driving operation is associated with a predetermined cost, which is determined according to a lookup table accessed by the mix mode driving controller <NUM>.

The cost to use the vehicle could be based on the cost per AV driving operation over a distance or duration. If the users selects only the steering operation and drove for <NUM> miles. Then the cost for using this simultaneous mix mode vehicle is a first cost. On the other hand, if the human operator selects steering and braking, then the cost of vehicle usage for <NUM> miles of travel is a second cost. The second cost is less than the first cost.

<FIG> illustrates an example server <NUM> for the system of <FIG>. The server <NUM> may include a bus <NUM> that facilitates communication between a controller (e.g., the mixed mode driving controller <NUM>) that may be implemented by a processor <NUM> and/or an application specific controller <NUM>, which may be referred to individually or collectively as controller <NUM>, and one or more other components including a database <NUM>, a memory <NUM>, a computer readable medium <NUM>, a display <NUM>, a user input device <NUM>, and a communication interface <NUM> connected to the internet and/or other networks <NUM>. The contents of database <NUM> are described with respect to database <NUM>. The server-side database <NUM> may be a master database that provides data in portions to the database <NUM> of the mobile device <NUM>. Additional, different, or fewer components may be included.

The memory <NUM> and/or the computer readable medium <NUM> may include a set of instructions that can be executed to cause the server <NUM> to perform any one or more of the methods or computer-based functions disclosed herein. In a networked deployment, the system of <FIG> may alternatively operate or as a client user computer in a client-server user network environment, or as a peer computer system in a peer-to-peer (or distributed) network environment. It can also be implemented as or incorporated into various devices, such as a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile device, a palmtop computer, a laptop computer, a desktop computer, a communications device, a wireless telephone, a land-line telephone, a control system, a camera, a scanner, a facsimile machine, a printer, a pager, a personal trusted device, a web appliance, a network router, switch or bridge, or any other machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. While a single computer system is illustrated, the term "system" shall also be taken to include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions.

The server <NUM> may be in communication through the network <NUM> with a content provider server <NUM> and/or a service provider server <NUM>. The server <NUM> may provide the point cloud to the content provider server <NUM> and/or the service provider server <NUM>. The content provider may include device manufacturers that provide location-based services associated with different locations POIs that users may access.

<FIG> illustrates an example mobile device <NUM> for the system of <FIG>. The mobile device <NUM> may include a bus <NUM> that facilitates communication between a controller (e.g., the mix mode driving controller <NUM>) that may be implemented by a processor <NUM> and/or an application specific controller <NUM>, which may be referred to individually or collectively as controller <NUM>, and one or more other components including a database <NUM>, a memory <NUM>, a computer readable medium <NUM>, a communication interface <NUM>, a radio <NUM>, a display <NUM>, a camera <NUM>, a user input device <NUM>, position circuitry <NUM>, ranging circuitry <NUM>, and vehicle circuitry <NUM>. The contents of the database <NUM> are described with respect to database <NUM>. The device-side database <NUM> may be a user database that receives data in portions from the database <NUM> of the mobile device <NUM>. The communication interface <NUM> connected to the internet and/or other networks (e.g., network <NUM> shown in <FIG>). The vehicle circuitry <NUM> may include any of the circuitry and/or devices described with respect to <FIG>. Additional, different, or fewer components may be included.

<FIG> illustrates an example flow chart for the mobile device of <FIG>. Additional, different, or fewer acts may be included.

At act S101, the controller <NUM> accesses a profile. As described herein various profiles are possible. The profile may be a user profile. The controller <NUM> may determine a user identity, such as entry in the user input device <NUM> or a connection and handshake with a device of the user. The controller <NUM> may access the profile from the memory <NUM> based on the user identity.

The profile may be a vehicle profile. The controller <NUM> may determine a vehicle identity, such as entry in the user input device <NUM> or a connection and handshake with the vehicle. The vehicle identity may be stored for example by the memory <NUM>. The controller <NUM> may access the profile from the memory <NUM> based on the vehicle identity.

The profile may be a trip profile. The controller <NUM> may receive position information determined by the position circuitry <NUM> or the ranging circuitry <NUM>. The controller <NUM> may calculate a route based on position data for the current location and a destination received from the user input device <NUM>. The controller <NUM> may determine the trip profile based on the route from the current location to the destination.

The profile may be an environment profile such as a weather profile. The controller <NUM> may request weather information, for example, from service provider server <NUM>. The controller <NUM> may determine the environment profile in response to the weather information.

At act S103, the controller <NUM> receives a list of driving operations for an automated driving trip. The default list of possible driving operations may be specific to the type of driver or type of vehicle. The default list may be configurable by an administrator.

At act S105, the controller <NUM> determines at least one recommended driving operation included in the list of possible operations based on a profile. The at least one recommended driving operation includes a first driving operation designated to autonomous control and a second driving operation designated to manual control. At act S107, the controller <NUM> and/or the display <NUM>, which may be combined with the user input device <NUM>, provides the recommended driving operation to the user.

At act S109, the controller <NUM> receives a selection at the display <NUM>, which may be combined with the user input device <NUM>. The selection indicates whether each driving operation should be performed by computer control or manual control.

At act S111, the controller <NUM> performs a driving operation in response to the selection at the display <NUM> and/or the user input device <NUM>. Examples of possible driving operations are described with respect to <FIG>.

<FIG> illustrates an exemplary vehicle <NUM> associated with the system of <FIG> for providing mixed mode automated driving systems. The vehicles <NUM> may include a variety of devices that collect position data as well as other related sensor data for the surroundings of the vehicle <NUM>. The position data may be generated by a global positioning system, a dead reckoning-type system, cellular location system, or combinations of these or other systems, which may be referred to as position circuitry or a position detector. The positioning circuitry may include suitable sensing devices that measure the traveling distance, speed, direction, and so on, of the vehicle <NUM>. The positioning system may also include a receiver and correlation chip to obtain a GPS or GNSS signal. Alternatively or additionally, the one or more detectors or sensors may include an accelerometer built or embedded into or within the interior of the vehicle <NUM>. The vehicle <NUM> may include one or more distance data detection device or sensor, such as a LIDAR device. The distance data detection sensor may generate point cloud data. The distance data detection sensor may include a laser range finder that rotates a mirror directing a laser to the surroundings or vicinity of the collection vehicle on a roadway or another collection device on any type of pathway. The distance data detection device may generate the trajectory data. Other types of pathways may be substituted for the roadway in any embodiment described herein.

A connected vehicle includes a communication device and an environment sensor array for reporting the surroundings of the vehicle <NUM> to the server <NUM>. The connected vehicle may include an integrated communication device coupled with an in-dash navigation system. The connected vehicle may include an ad-hoc communication device such as a mobile device <NUM> or smartphone in communication with a vehicle system. The communication device connects the vehicle to a network including at least one other vehicle and at least one server. The network may be the Internet or connected to the internet.

The sensor array may include one or more sensors configured to detect surroundings of the vehicle <NUM>. The sensor array may include multiple sensors. Example sensors include an optical distance system such as LiDAR <NUM>, an image capture system <NUM> such as a camera, a sound distance system such as sound navigation and ranging (SONAR), a radio distancing system such as radio detection and ranging (RADAR) or another sensor. The camera may be a visible spectrum camera, an infrared camera, an ultraviolet camera, or another camera.

In some alternatives, additional sensors may be included in the vehicle <NUM>. An engine sensor <NUM> may include a throttle sensor that measures a position of a throttle of the engine or a position of an accelerator pedal, a brake senor that measures a position of a braking mechanism or a brake pedal, or a speed sensor that measures a speed of the engine or a speed of the vehicle wheels. Another additional example, vehicle sensor <NUM>, may include a steering wheel angle sensor, a speedometer sensor, or a tachometer sensor.

A mobile device <NUM> may be integrated in the vehicle <NUM>, which may include assisted driving vehicles such as autonomous vehicles, highly assisted driving (HAD), and advanced driving assistance systems (ADAS). Any of these assisted driving systems may be incorporated into mobile device <NUM>. Alternatively, an assisted driving device may be included in the vehicle <NUM>. The assisted driving device may include memory, a processor, and systems to communicate with the mobile device <NUM>. The assisted driving vehicles may respond to the driving commands from the driving module <NUM> and based on map data received from geographic database <NUM> and the server <NUM>.

<FIG> illustrates components of a road segment data record <NUM> contained in the geographic database <NUM> according to one embodiment. The road segment data record <NUM> may include a segment ID <NUM>(<NUM>) by which the data record can be identified in the geographic database <NUM>. Each road segment data record <NUM> may have associated with it information (such as "attributes", "fields", etc.) that describes features of the represented road segment. The road segment data record <NUM> may include data <NUM>(<NUM>) that indicate the restrictions, if any, on the direction of vehicular travel permitted on the represented road segment. The road segment data record <NUM> may include data <NUM>(<NUM>) that indicate a speed limit or speed category (i.e., the maximum permitted vehicular speed of travel) on the represented road segment. The road segment data record <NUM> may also include classification data <NUM>(<NUM>) indicating whether the represented road segment is part of a controlled access road (such as an expressway), a ramp to a controlled access road, a bridge, a tunnel, a toll road, a ferry, and so on. The road segment data record may include location fingerprint data, for example a set of sensor data for a particular location.

The geographic database <NUM> may include road segment data records <NUM> (or data entities) that describe automated driving recommendations characteristics <NUM>(<NUM>) described herein. Additional schema may be used to describe road objects. The attribute data may be stored in relation to geographic coordinates (e.g., the latitude and longitude) of the end points of the represented road segment. In one embodiment, the data <NUM>(<NUM>) are references to the node data records <NUM> that represent the nodes corresponding to the end points of the represented road segment.

The road segment data record <NUM> may also include or be associated with other data that refer to various other attributes of the represented road segment. The various attributes associated with a road segment may be included in a single road segment record or may be included in more than one type of record which cross-references to each other. For example, the road segment data record may include data identifying what turn restrictions exist at each of the nodes which correspond to intersections at the ends of the road portion represented by the road segment, the name, or names by which the represented road segment is identified, the street address ranges along the represented road segment, and so on.

The road segment data record <NUM> may also include endpoints <NUM>(<NUM>) that reference one or more node data records <NUM>(<NUM>) and <NUM>(<NUM>) that may be contained in the geographic database <NUM>. Each of the node data records <NUM> may have associated information (such as "attributes", "fields", etc.) that allows identification of the road segment(s) that connect to it and/or its geographic position (e.g., its latitude and longitude coordinates). The node data records <NUM>(<NUM>) and <NUM>(<NUM>) include the latitude and longitude coordinates <NUM>(<NUM>)(<NUM>) and <NUM>(<NUM>)(<NUM>) for their node, the node data records <NUM>(<NUM>) and <NUM>(<NUM>) may also include other data <NUM>(<NUM>)(<NUM>) and <NUM>(<NUM>)(<NUM>) that refer to various other attributes of the nodes. In one example, the node data records <NUM>(<NUM>) and <NUM>(<NUM>) include the latitude and longitude coordinates <NUM>(<NUM>)(<NUM>) and <NUM>(<NUM>)(<NUM>) and the other data <NUM>(<NUM>)(<NUM>) and <NUM>(<NUM>)(<NUM>) reference other data associated with the node such as recommendations for one or more driving operations at the node.

The controller <NUM> may communicate with a vehicle ECU which operates one or more driving mechanisms (e.g., accelerator, brakes, steering device). Alternatively, the mobile device <NUM> may be the vehicle ECU, which operates the one or more driving mechanisms directly.

The controller <NUM> or <NUM> may include a routing module including an application specific module or processor that calculates routing between an origin and destination. The routing module is an example means for generating a route in response to the anonymized data to the destination. The routing command may be a driving instruction (e.g., turn left, go straight), which may be presented to a driver or passenger, or sent to an assisted driving system. The display <NUM> is an example means for displaying the routing command. The mobile device <NUM> may generate a routing instruction based on the anonymized data.

The routing instructions may be provided by display <NUM>. The mobile device <NUM> may be configured to execute routing algorithms to determine an optimum route to travel along a road network from an origin location to a destination location in a geographic region. Using input(s) including map matching values from the server <NUM>, a mobile device <NUM> examines potential routes between the origin location and the destination location to determine the optimum route. The mobile device <NUM>, which may be referred to as a navigation device, may then provide the end user with information about the optimum route in the form of guidance that identifies the maneuvers required to be taken by the end user to travel from the origin to the destination location. Some mobile devices <NUM> show detailed maps on displays outlining the route, the types of maneuvers to be taken at various locations along the route, locations of certain types of features, and so on. Possible routes may be calculated based on a Dijkstra method, an A-star algorithm or search, and/or other route exploration or calculation algorithms that may be modified to take into consideration assigned cost values of the underlying road segments.

The mobile device <NUM> may plan a route through a road system or modify a current route through a road system in response to the request for additional observations of the road object. For example, when the mobile device <NUM> determines that there are two or more alternatives for the optimum route and one of the routes passes the initial observation point, the mobile device <NUM> selects the alternative that passes the initial observation point. The mobile devices <NUM> may compare the optimal route to the closest route that passes the initial observation point. In response, the mobile device <NUM> may modify the optimal route to pass the initial observation point.

The mobile device <NUM> may be a personal navigation device ("PND"), a portable navigation device, a mobile phone, a personal digital assistant ("PDA"), a watch, a tablet computer, a notebook computer, and/or any other known or later developed mobile device or personal computer. The mobile device <NUM> may also be an automobile head unit, infotainment system, and/or any other known or later developed automotive navigation system. Non-limiting embodiments of navigation devices may also include relational database service devices, mobile phone devices, car navigation devices, and navigation devices used for air or water travel.

The geographic database <NUM> may include map data representing a road network or system including road segment data and node data. The road segment data represent roads, and the node data represent the ends or intersections of the roads. The road segment data and the node data indicate the location of the roads and intersections as well as various attributes of the roads and intersections. Other formats than road segments and nodes may be used for the map data. The map data may include structured cartographic data or pedestrian routes. The map data may include map features that describe the attributes of the roads and intersections. The map features may include geometric features, restrictions for traveling the roads or intersections, roadway features, or other characteristics of the map that affects how vehicles <NUM> or mobile device <NUM> for through a geographic area. The geometric features may include curvature, slope, or other features. The curvature of a road segment describes a radius of a circle that in part would have the same path as the road segment. The slope of a road segment describes the difference between the starting elevation and ending elevation of the road segment. The slope of the road segment may be described as the rise over the run or as an angle. The geographic database <NUM> may also include other attributes of or about the roads such as, for example, geographic coordinates, street names, address ranges, speed limits, turn restrictions at intersections, and/or other navigation related attributes (e.g., one or more of the road segments is part of a highway or toll way, the location of stop signs and/or stoplights along the road segments), as well as points of interest (POIs), such as gasoline stations, hotels, restaurants, museums, stadiums, offices, automobile dealerships, auto repair shops, buildings, stores, parks, etc. The databases may also contain one or more node data record(s) which may be associated with attributes (e.g., about the intersections) such as, for example, geographic coordinates, street names, address ranges, speed limits, turn restrictions at intersections, and other navigation related attributes, as well as POIs such as, for example, gasoline stations, hotels, restaurants, museums, stadiums, offices, automobile dealerships, auto repair shops, buildings, stores, parks, etc. The geographic data may additionally or alternatively include other data records such as, for example, POI data records, topographical data records, cartographic data records, routing data, and maneuver data.

The geographic database <NUM> may contain at least one road segment database record <NUM> (also referred to as "entity" or "entry") for each road segment in a particular geographic region. The geographic database <NUM> may also include a node database record (or "entity" or "entry") for each node in a particular geographic region. The terms "nodes" and "segments" represent only one terminology for describing these physical geographic features, and other terminology for describing these features is intended to be encompassed within the scope of these concepts. The geographic database <NUM> may also include location fingerprint data for specific locations in a particular geographic region.

The radio <NUM> may be configured to radio frequency communication (e.g., generate, transit, and receive radio signals) for any of the wireless networks described herein including cellular networks, the family of protocols known as WiFi or IEEE <NUM>, the family of protocols known as Bluetooth, or another protocol.

The memory <NUM> and/or memory <NUM> may be a volatile memory or a non-volatile memory. The memory <NUM> and/or memory <NUM> may include one or more of a read only memory (ROM), random access memory (RAM), a flash memory, an electronic erasable program read only memory (EEPROM), or other type of memory. The memory <NUM> may be removable from the mobile device <NUM>, such as a secure digital (SD) memory card.

The communication interface <NUM> and/or communication interface <NUM> may include any operable connection. An operable connection may be one in which signals, physical communications, and/or logical communications may be sent and/or received. An operable connection may include a physical interface, an electrical interface, and/or a data interface. The communication interface <NUM> and/or communication interface <NUM> provides for wireless and/or wired communications in any now known or later developed format.

The input device <NUM> may be one or more buttons, keypad, keyboard, mouse, stylus pen, trackball, rocker switch, touch pad, voice recognition circuit, or other device or component for inputting data to the mobile device <NUM>. The input device <NUM> and display <NUM> be combined as a touch screen, which may be capacitive or resistive. The display <NUM> may be a liquid crystal display (LCD) panel, light emitting diode (LED) screen, thin film transistor screen, or another type of display. The output interface of the display <NUM> may also include audio capabilities, or speakers. In an embodiment, the input device <NUM> may involve a device having velocity detecting abilities.

The ranging circuitry <NUM> may include a LIDAR system, a RADAR system, a structured light camera system, SONAR, or any device configured to detect the range or distance to objects from the mobile device <NUM>.

The positioning circuitry <NUM> may include suitable sensing devices that measure the traveling distance, speed, direction, and so on, of the mobile device <NUM>. The positioning system may also include a receiver and correlation chip to obtain a GPS signal. Alternatively or additionally, the one or more detectors or sensors may include an accelerometer and/or a magnetic sensor built or embedded into or within the interior of the mobile device <NUM>. The accelerometer is operable to detect, recognize, or measure the rate of change of translational and/or rotational movement of the mobile device <NUM>. The magnetic sensor, or a compass, is configured to generate data indicative of a heading of the mobile device <NUM>. Data from the accelerometer and the magnetic sensor may indicate orientation of the mobile device <NUM>. The mobile device <NUM> receives location data from the positioning system. The location data indicates the location of the mobile device <NUM>.

The positioning circuitry <NUM> may include a Global Positioning System (GPS), Global Navigation Satellite System (GLONASS), or a cellular or similar position sensor for providing location data. The positioning system may utilize GPS-type technology, a dead reckoning-type system, cellular location, or combinations of these or other systems. The positioning circuitry <NUM> may include suitable sensing devices that measure the traveling distance, speed, direction, and so on, of the mobile device <NUM>. The positioning system may also include a receiver and correlation chip to obtain a GPS signal. The mobile device <NUM> receives location data from the positioning system. The location data indicates the location of the mobile device <NUM>.

The position circuitry <NUM> may also include gyroscopes, accelerometers, magnetometers, or any other device for tracking or determining movement of a mobile device. The gyroscope is operable to detect, recognize, or measure the current orientation, or changes in orientation, of a mobile device. Gyroscope orientation change detection may operate as a measure of yaw, pitch, or roll of the mobile device.

In accordance with various embodiments of the present invention, the methods described herein may be implemented by software programs executable by a computer system.

A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated
to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code).

As used in this specification, the term 'circuitry' or 'circuit' refers to all of the following: (a)hardware-only circuit implementations (such as implementations in only analog and/or digital circuitry) and (b) to combinations of circuits and software (and/or firmware), such as (as applicable): (i) to a combination of processor(s) or (ii) to portions of processor(s)/software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present.

This definition of 'circuitry' applies to all uses of this term in this specification, including in any claims. As a further example, as used in this specification, the term "circuitry"
would also cover an implementation of merely a processor (or multiple processors) or portion of a processor and its (or their) accompanying software and/or firmware. The term "circuitry" would also cover, for example and if applicable to the particular claim element, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in server, a cellular network device, or other network devices.

Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and anyone or more processors of any kind of digital computer. Generally, a processor receives instructions and data from a read only memory or a random access memory or both. Generally, a computer also includes, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks. Moreover, a computer can be embedded in another device, e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio player, a Global Positioning System (GPS) receiver, to name just a few. In an embodiment, a vehicle may be considered a mobile device, or the mobile device may be integrated into a vehicle.

The term "computer-readable medium" includes a single medium or multiple media, such as a centralized or distributed database, and/or associated caches and servers that store one or more sets of instructions. The term "computer-readable medium" shall also include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by a processor or that cause a computer system to perform any one or more of the methods or operations disclosed herein.

In a particular non-limiting, exemplary embodiment, the computer-readable medium can include a solid-state memory such as a memory card or other package that houses one or more non-volatile read-only memories. Further, the computer-readable medium can be a random access memory or other volatile re-writable memory. Additionally, the computer-readable medium can include a magneto-optical or optical medium, such as a disk or tapes or other storage device to capture carrier wave signals such as a signal communicated over a transmission medium. A digital file attachment to an e- mail or other self-contained information archive or set of archives may be considered a distribution medium that is a tangible storage medium. Accordingly, the invention is considered to include any one or more of a computer-readable medium or a distribution medium and other equivalents and successor media, in which data or instructions may be stored. These examples may be collectively referred to as a non-transitory computer readable medium.

Embodiments of the subject matter described in this specification can be implemented in a computing system that includes a back end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front end component, e.g., a client computer having a graphical user interface or
a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back end, middleware, or front end components.

Many other embodiments may be apparent to those of skill in the art upon reviewing the invention. Other embodiments may be utilized and derived from the invention, such that structural and logical substitutions and changes may be made without departing from the scope of the invention. Accordingly, the invention and the figures are to be regarded as illustrative rather than restrictive.

While this specification contains many specifics, these should not be construed as limitations on the scope of the invention as claimed, but rather as descriptions of features specific to particular embodiments of the invention.

Similarly, while operations are depicted in the drawings and described herein in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments.

Claim 1:
A computer-implemented method for mixed mode automated driving, wherein mixed mode driving comprises recommending driving operations including a first driving operation designated to autonomous control (<NUM>) and a second driving operation designated to manual control, the method comprising:
accessing a profile (<NUM>) associated with an automated driving trip;
determining a list of driving operations for the automated driving trip; and
determining, based on the profile, recommended driving operations (<NUM>) included in the list of operations,
wherein the profile includes compatibility data for the first driving operation and the second driving operation, the compatibility data defining groups of compatible driving operations where driving operations in groups are designated to either manual or autonomous control.