U.S. patent application number 15/627563 was filed with the patent office on 2018-12-20 for autonomous vehicle operation using altered traffic regulations.
The applicant listed for this patent is International Business Machines Corporation. Invention is credited to Jeremy A. Greenberger, Christopher J. Hardee, Scott E. Schneider.
Application Number | 20180364715 15/627563 |
Document ID | / |
Family ID | 64604841 |
Filed Date | 2018-12-20 |
United States Patent
Application |
20180364715 |
Kind Code |
A1 |
Greenberger; Jeremy A. ; et
al. |
December 20, 2018 |
AUTONOMOUS VEHICLE OPERATION USING ALTERED TRAFFIC REGULATIONS
Abstract
Embodiments include method, systems and computer program
products for autonomous vehicle operation using altered traffic
regulations. The computer-implemented method includes receiving, by
a processor, request data that represents a request to use altered
traffic regulations. The processor determines a current location of
one or more autonomous vehicles associated with the request. The
processor determines that an authority associated with the
processor governs at least a portion of a road network associated
with the request. The processor determines resolution of the
request, wherein determining the resolution is based at least in
part on a determination that the authority associated with the
processor governs the associated portion of the road network
associated with the request. The processor generates resolution
data representing the resolution and transmits the resolution
data.
Inventors: |
Greenberger; Jeremy A.;
(Raleigh, NC) ; Hardee; Christopher J.; (Raleigh,
NC) ; Schneider; Scott E.; (Rolesville, NC) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
International Business Machines Corporation |
Armonk |
NY |
US |
|
|
Family ID: |
64604841 |
Appl. No.: |
15/627563 |
Filed: |
June 20, 2017 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G05D 2201/0212 20130101;
G08G 1/096741 20130101; G08G 1/096725 20130101; G08G 1/096775
20130101; G05D 1/0088 20130101; G08G 1/093 20130101 |
International
Class: |
G05D 1/00 20060101
G05D001/00; G08G 1/09 20060101 G08G001/09 |
Claims
1. A computer-implemented method for autonomous vehicle operation
using altered traffic regulations, the method comprising:
receiving, by a processor, request data that represents a request
to use altered traffic regulations; determining, by the processor,
a current location of one or more autonomous vehicles associated
with the request; determining, by the processor, that an authority
associated with the processor governs at least a portion of a road
network associated with the request; determining a resolution, by
the processor, of the request, wherein determining the resolution
is based at least in part on a determination that the authority
associated with the processor governs the associated portion of the
road network associated with the request; generating resolution
data representing the resolution; and transmitting, by the
processor, the resolution data.
2. The computer-implemented method of claim 1 wherein the
resolution comprises granting, denying or modifying the request to
use altered traffic regulations.
3. The computer-implemented method of claim 1 further comprising
forwarding the request to another authority when the authority
associated with the processor does not govern the associated
portion of the road network associated with the request to use
altered traffic regulations.
4. The computer-implemented method of claim 1, wherein the altered
traffic regulations comprise an altered speed that can be higher or
lower than a designated speed limit for an associated portion of
the road network, an ability to use lanes on a road segment that
are normally restricted from use by the autonomous vehicle at a
time a request to use altered traffic regulations is received, an
ability by the autonomous vehicle to temporarily alter traffic
signal operation on an associated portion of the road network, an
ability to change traffic flow directions of designated lanes of a
road segment, or request a cleared path for the autonomous
vehicle.
5. The computer-implemented method of claim 1 further comprising
receiving, from the one or more autonomous vehicles, data related
to information associated with at least one of the following: a
nature of an emergency associated with the request to use altered
traffic regulations, an identity of one or more occupants of the
one or more requesting autonomous vehicles, a vehicle type and/or
identity for the one or more autonomous vehicles, vehicle
capabilities of the one or more autonomous vehicles, or a route
and/or destination of the one or more autonomous vehicles.
6. The computer-implemented method of claim 1, wherein the altered
traffic regulations are deviations from normal traffic rules for
the associated portion of the road network.
7. The computer-implemented method of claim 1 further comprising
notifying authorities and other vehicles traveling along the
associated portion of the road network to the granting or
modification of the request to use altered traffic regulations for
the one or more vehicles.
8. A computer program product for autonomous vehicle operation
using altered traffic regulations, the computer program product
comprising: a computer readable storage medium having stored
thereon first program instructions executable by a processor to
cause the processor to: receive request data that represents a
request to use altered traffic regulations; determine a current
location of one or more autonomous vehicles associated with the
request; determine that an authority associated with the processor
governs at least a portion of a road network associated with the
request; determine a resolution of the request to use altered
traffic regulations, wherein the determination of the resolution is
based at least in part on a determination that the authority
associated with the processor governs the associated portion of the
road network associated with the request to use altered traffic
regulations; generate resolution data representing the resolution;
and transmit the resolution data.
9. The computer program product of claim 8, wherein the resolution
comprises granting, denying or modifying request to use altered
traffic regulations.
10. The computer program product of claim 8, wherein the processor
is further operable to forward the request to use altered traffic
regulations to another authority when the authority associated with
the processor does not govern the associated portion of the road
network associated with the request to use altered traffic
regulations.
11. The computer program product of claim 8, wherein the altered
traffic regulations comprise an altered speed that can be higher or
lower than a designated speed limit for an associated portion of
the road network, an ability to use lanes on a road segment that
are normally restricted from use by the autonomous vehicle at a
time a request to use altered traffic regulations is received, an
ability by the autonomous vehicle to temporarily alter traffic
signal operation on an associated portion of the road network, an
ability to change traffic flow directions of designated lanes of a
road segment, or request a cleared path for the autonomous
vehicle.
12. The computer program product of claim 8, wherein the processor
is further operable to receive, from the one or more autonomous
vehicles, data related to information associated with at least one
of the following: a nature of an emergency associated with the
request to use altered traffic regulations, an identity of one or
more occupants of the one or more requesting autonomous vehicles, a
vehicle type and/or identity for the one or more autonomous
vehicles, vehicle capabilities of the one or more autonomous
vehicles, or a route and/or destination of the one or more
autonomous vehicles.
13. The computer program product of claim 8, wherein the altered
traffic regulations are deviations from normal traffic rules for
the associated portion of the road network.
14. The computer program product of claim 9, wherein the processor
is further operable to notify authorities and other vehicles
traveling along the associated portion of the road network to the
granting or modification of the request to use altered traffic
regulations from the one or more vehicles.
15. A system for autonomous vehicle operation using altered traffic
regulations, the system comprising: a storage medium, the storage
medium being coupled to a processor; the processor configured to:
receive request data that represents a request to use altered
traffic regulations; determine a current location of one or more
autonomous vehicles associated with the request; determine that an
authority associated with the processor governs at least a portion
of a road network associated with the request; determine a
resolution of the request to use altered traffic regulations,
wherein the determination of the resolution is based at least in
part on a determination that the authority associated with the
processor governs the associated portion of the road network
associated with the request to use altered traffic regulations;
generate resolution data representing the resolution; and transmit
the resolution data.
16. The system of claim 15, wherein the resolution comprises
granting, denying or modifying request to use altered traffic
regulations.
17. The system of claim 15, wherein the processor is further
operable to forward the request to use altered traffic regulations
to another authority when the authority associated with the
processor does not govern the associated portion of the road
network associated with the request to use altered traffic
regulations.
18. The system of claim 15, wherein the processor is further
operable to receive, from the one or more autonomous vehicles, data
related to information associated with at least one of the
following: a nature of an emergency associated with the request to
use altered traffic regulations, an identity of one or more
occupants of the one or more requesting autonomous vehicles, a
vehicle type and/or identity for the one or more autonomous
vehicles, vehicle capabilities of the one or more autonomous
vehicles, or a route and/or destination of the one or more
autonomous vehicles.
19. The system of claim 15, wherein the altered traffic regulations
comprise an altered speed that can be higher or lower than a
designated speed limit for an associated portion of the road
network, an ability to use lanes on a road segment that are
normally restricted from use by the autonomous vehicle at a time a
request to use altered traffic regulations is received, an ability
by the autonomous vehicle to temporarily alter traffic signal
operation on an associated portion of the road network, an ability
to change traffic flow directions of designated lanes of a road
segment, or request a cleared path for the autonomous vehicle.
20. The system of claim 15, wherein the processor is further
operable to notify authorities and other vehicles traveling along
the associated portion of the road network to the granting or
modification of the request to use altered traffic regulations from
the one or more vehicles.
Description
BACKGROUND
[0001] The present invention relates in general to autonomous
vehicle operations, and more specifically, to permitting autonomous
vehicles to modify traffic regulations governing operation of the
autonomous vehicle based on an event.
[0002] Autonomous vehicles are automobiles that have the ability to
operate and navigate without human input. Autonomous vehicles use
sensors, such as radio detection and ranging (RADAR), light
detection and ranging (LIDAR), global positioning systems, and
computer vision to detect the vehicle's surroundings. Advanced
computer control systems interpret the sensory input information to
identify appropriate navigation paths, as well as obstacles and
relevant signage. Some autonomous vehicles update map information
in real time to remain aware of the autonomous vehicle's location
even if conditions change or the vehicle enters an uncharted
environment. Autonomous vehicles increasingly communicate with
remote computer systems via wireless network connections and with
one another using dedicated short-range communications (DSRC).
SUMMARY
[0003] Embodiments of the invention are directed to a
computer-implemented method for autonomous vehicle operation using
altered traffic regulations. A non-limiting example of the
computer-implemented method includes receiving, by a processor,
request data that represents a request to use altered traffic
regulations. The processor determines a current location of one or
more autonomous vehicles associated with the request. The processor
determines that an authority associated with the processor governs
at least a portion of a road network associated with the request.
The processor determines a resolution of the request, wherein
determining the resolution is based at least in part on a
determination that the authority associated with the processor
governs the associated portion of the road network associated with
the request. The processor generates resolution data representing
the resolution and transmits the resolution data.
[0004] Embodiments of the invention are directed to a computer
program product that includes a storage medium usable by a
processing circuit. The storage medium can store instructions for
execution by the processing circuit for performing a method for
autonomous vehicle operation using altered traffic regulations. A
non-limiting example of the method includes receiving request data
that represents a request to use altered traffic regulations. The
processor determines a current location of one or more autonomous
vehicles associated with the request. The processor determines that
an authority associated with the processor governs at least a
portion of a road network associated with the request. The
processor determines a resolution of the request, wherein
determining the resolution is based at least in part on a
determination that the authority associated with the processor
governs the associated portion of the road network associated with
the request. The processor generates resolution data representing
the resolution and transmits the resolution data.
[0005] Embodiments of the invention are directed to a system for
autonomous vehicle operation using altered traffic regulations. The
system can include a processor and memory controller in
communication with one or more types of memory. The processor is
configured to perform operations that include receiving request
data that represents a request to use altered traffic regulations.
A non-limiting example of the operations includes determining a
current location of one or more autonomous vehicles associated with
the request. A determination is made that an authority associated
with the processor governs at least a portion of a road network
associated with the request. A determination is also made resolving
the request, wherein determining the resolution is based at least
in part on a determination that the authority associated with the
processor governs the associated portion of the road network
associated with the request. The processor is configured to
generate resolution data representing the resolution and transmit
the resolution data.
[0006] Additional technical features and benefits are realized
through the techniques of the present invention. Embodiments and
aspects of the invention are described in detail herein and are
considered a part of the claimed subject matter. For a better
understanding, refer to the detailed description and to the
drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] The subject matter, which is regarded as the invention, is
particularly pointed out and distinctly claimed in the claims at
the conclusion of the specification. The foregoing and other
features and advantages of the invention are apparent from the
following detailed description taken in conjunction with the
accompanying drawings in which:
[0008] FIG. 1 depicts a cloud computing environment according to
one or more embodiments of the present invention;
[0009] FIG. 2 depicts abstraction model layers according to one or
more embodiments of the present invention;
[0010] FIG. 3 is a diagram illustrating an exemplary operating
environment according to one or more embodiments of the present
invention;
[0011] FIG. 4 is a block diagram illustrating one example of a
processing system for practice of the teachings herein;
[0012] FIG. 5 is a diagram illustrating an exemplary driving
environment according to one or more embodiments of the present
invention; and
[0013] FIG. 6 is a flow diagram illustrating a method for
autonomous vehicle operation using altered traffic regulations
according to one or more embodiments of the present invention.
[0014] The diagrams depicted herein are illustrative. There can be
many variations to the diagram or the operations described therein
without departing from the spirit of the invention. For instance,
the actions can be performed in a differing order or actions can be
added, deleted or modified. In addition, the term "coupled" and
variations thereof describes having a communications path between
two elements and does not imply a direct connection between the
elements with no intervening elements/connections between them. All
of these variations are considered a part of the specification.
[0015] In the accompanying figures and following detailed
description of the disclosed embodiments of the present invention,
the various elements illustrated in the figures are provided with
two or three digit reference numbers. With minor exceptions, the
leftmost digit(s) of each reference number correspond to the figure
in which its element is first illustrated.
DETAILED DESCRIPTION
[0016] Various embodiments of the invention are described herein
with reference to the related drawings. Alternative embodiments of
the invention can be devised without departing from the scope of
this invention. Various connections and positional relationships
(e.g., over, below, adjacent, etc.) are set forth between elements
in the following description and in the drawings. These connections
and/or positional relationships, unless specified otherwise, can be
direct or indirect, and the present invention is not intended to be
limiting in this respect. Accordingly, a coupling of entities can
refer to either a direct or an indirect coupling, and a positional
relationship between entities can be a direct or indirect
positional relationship. Moreover, the various tasks and process
steps described herein can be incorporated into a more
comprehensive procedure or process having additional steps or
functionality not described in detail herein.
[0017] The following definitions and abbreviations are to be used
for the interpretation of the claims and the specification. As used
herein, the terms "comprises," "comprising," "includes,"
"including," "has," "having," "contains" or "containing," or any
other variation thereof, are intended to cover a non-exclusive
inclusion. For example, a composition, a mixture, process, method,
article, or apparatus that comprises a list of elements is not
necessarily limited to only those elements but can include other
elements not expressly listed or inherent to such composition,
mixture, process, method, article, or apparatus.
[0018] Additionally, the term "exemplary" is used herein to mean
"serving as an example, instance or illustration." Any embodiment
or design described herein as "exemplary" is not necessarily to be
construed as preferred or advantageous over other embodiments or
designs. The terms "at least one" and "one or more" may be
understood to include any integer number greater than or equal to
one, i.e. one, two, three, four, etc. The terms "a plurality" may
be understood to include any integer number greater than or equal
to two, i.e. two, three, four, five, etc. The term "connection" may
include both an indirect "connection" and a direct
"connection."
[0019] The terms "about," "substantially," "approximately," and
variations thereof, are intended to include the degree of error
associated with measurement of the particular quantity based upon
the equipment available at the time of filing the application. For
example, "about" can include a range of .+-.8% or 5%, or 2% of a
given value.
[0020] For the sake of brevity, conventional techniques related to
making and using aspects of the invention may or may not be
described in detail herein. In particular, various aspects of
computing systems and specific computer programs to implement the
various technical features described herein are well known.
Accordingly, in the interest of brevity, many conventional
implementation details are only mentioned briefly herein or are
omitted entirely without providing the well-known system and/or
process details.
[0021] It is to be understood that although this disclosure
includes a detailed description on cloud computing, implementation
of the teachings recited herein are not limited to a
cloud-computing environment. Rather, embodiments of the present
invention are capable of being implemented in conjunction with any
other type of computing environment now known or later
developed.
[0022] Cloud computing is a model of service delivery for enabling
convenient, on-demand network access to a shared pool of
configurable computing resources (e.g., networks, network
bandwidth, servers, processing, memory, storage, applications,
virtual machines, and services) that can be rapidly provisioned and
released with minimal management effort or interaction with a
provider of the service. This cloud model may include at least five
characteristics, at least three service models, and at least four
deployment models.
[0023] Characteristics are as follows:
[0024] On-demand self-service: a cloud consumer can unilaterally
provision computing capabilities, such as server time and network
storage, as needed automatically without requiring human
interaction with the service's provider.
[0025] Broad network access: capabilities are available over a
network and accessed through standard mechanisms that promote use
by heterogeneous thin or thick client platforms (e.g., mobile
phones, laptops, and PDAs).
[0026] Resource pooling: the provider's computing resources are
pooled to serve multiple consumers using a multi-tenant model, with
different physical and virtual resources dynamically assigned and
reassigned according to demand. There is a sense of location
independence in that the consumer generally has no control or
knowledge over the exact location of the provided resources but may
be able to specify location at a higher level of abstraction (e.g.,
country, state, or datacenter).
[0027] Rapid elasticity: capabilities can be rapidly and
elastically provisioned, in some cases automatically, to quickly
scale out and rapidly released to quickly scale in. To the
consumer, the capabilities available for provisioning often appear
to be unlimited and can be purchased in any quantity at any
time.
[0028] Measured service: cloud systems automatically control and
optimize resource use by leveraging a metering capability at some
level of abstraction appropriate to the type of service (e.g.,
storage, processing, bandwidth, and active user accounts). Resource
usage can be monitored, controlled, and reported, providing
transparency for both the provider and consumer of the utilized
service.
[0029] Software as a Service (SaaS): a software distribution model
in which a third-party provider hosts applications and makes them
available to customers over the Internet. SaaS removes the need for
organizations to install and run applications on their own
computers or in their own data centers. This eliminates the expense
of hardware acquisition, provisioning and maintenance, as well as
software licensing, installation and support.
[0030] Platform as a Service (PaaS): a cloud-computing model that
delivers applications over the Internet. In a PaaS model, a cloud
provider delivers hardware and software tools, for example, tools
needed for application development, to users as a service. A PaaS
provider can host the hardware and software on the PaaS provider's
infrastructure. As a result, PaaS frees users from having to
install in-house hardware and software to develop or run a new
application.
[0031] Database as a Service (DBaaS): a cloud-based approach to the
storage and management of structured data that delivers database
functionality similar to what is found in relational database
management systems (RDBMSes) such as, for example, SQL Server,
MySQL, and Oracle. DBaaS provides a flexible, scalable, on-demand
platform oriented toward self-service and database management,
particularly in terms of provisioning a business' own environment.
DBaaS systems may include monitoring engines to track performance
and usage, error monitoring, and data analysis engines.
[0032] Infrastructure as a Service (IaaS): the capability provided
to the consumer is to provision processing, storage, networks, and
other fundamental computing resources where the consumer is able to
deploy and run arbitrary software, which can include operating
systems and applications. The consumer does not manage or control
the underlying cloud infrastructure but has control over operating
systems, storage, deployed applications, and possibly limited
control of select networking components (e.g., host firewalls).
[0033] Deployment Models are as follows:
[0034] Private cloud: the cloud infrastructure is operated solely
for an organization. It may be managed by the organization or a
third party and may exist on-premises or off-premises.
[0035] Community cloud: the cloud infrastructure is shared by
several organizations and supports a specific community that has
shared concerns (e.g., mission, security requirements, policy, and
compliance considerations). It may be managed by the organizations
or a third party and may exist on-premises or off-premises.
[0036] Public cloud: the cloud infrastructure is made available to
the general public or a large industry group and is owned by an
organization selling cloud services.
[0037] Hybrid cloud: the cloud infrastructure is a composition of
two or more clouds (private, community, or public) that remain
unique entities but are bound together by standardized or
proprietary technology that enables data and application
portability (e.g., cloud bursting for load-balancing between
clouds).
[0038] A cloud-computing environment is service oriented with a
focus on statelessness, low coupling, modularity, and semantic
interoperability. At the heart of cloud-computing is an
infrastructure that includes a network of interconnected nodes.
[0039] Turning now to an overview of technologies that are more
specifically relevant to aspects of the invention, embodiments of
the invention are related in general to autonomous vehicles and the
compliance to traffic rules and regulations by the autonomous
vehicles. In general, autonomous vehicles have been designed to
strictly follow designated traffic rules and regulations issued by
a governing authority for a given portion of a road network.
[0040] Autonomous driving refers to vehicles in which operation
occurs with little to no direct driver input to control the
steering, acceleration, and braking. Autonomous vehicles are
designed so that the driver is not expected to constantly monitor
the roadway during autonomous driving operation. Autonomous
vehicles can be based on varying degrees of automation, i.e.,
conditional automation to full automation. Autonomous vehicles are
normally programmed to comply with all regulations for a given
region.
[0041] Referring now to FIG. 1, illustrative cloud computing
environment 50 is depicted. As shown, cloud-computing environment
50 comprises one or more cloud computing nodes 10 with which local
computing devices used by cloud consumers, such as, for example,
personal digital assistant (PDA) or cellular telephone 54A, desktop
computer 54B, laptop computer 54C, and/or automobile onboard
computer system 54N may communicate. Nodes 10 may communicate with
one another. They may be grouped (not shown) physically or
virtually, in one or more networks, such as Private, Community,
Public, or Hybrid clouds as described hereinabove, or a combination
thereof. This allows cloud-computing environment 50 to offer
infrastructure, platforms and/or software as services for which a
cloud consumer does not need to maintain resources on a local
computing device. It is understood that the types of computing
devices 54A-N shown in FIG. 1 are intended to be illustrative only
and that computing nodes 10 and cloud computing environment 50 can
communicate with any type of computerized device over any type of
network and/or network addressable connection (e.g., using a web
browser).
[0042] Referring now to FIG. 2, a set of functional abstraction
layers provided by cloud computing environment 50 (FIG. 1) is
shown. It should be understood in advance that the components,
layers, and functions shown in FIG. 2 are intended to be
illustrative only and embodiments of the invention are not limited
thereto. As depicted, the following layers and corresponding
functions are provided:
[0043] Hardware and software layer 60 includes hardware and
software components. Examples of hardware components include:
mainframes 61; RISC (Reduced Instruction Set Computer) architecture
based servers 62; servers 63; blade servers 64; storage devices 65;
and networks and networking components 66. In some embodiments,
software components include network application server software 67
and database software 68.
[0044] Virtualization layer 70 provides an abstraction layer from
which the following examples of virtual entities may be provided:
virtual servers 71; virtual storage 72; virtual networks 73,
including virtual private networks; virtual applications and
operating systems 74; and virtual clients 75.
[0045] In one example, management layer 80 may provide the
functions described below. Resource provisioning 81 provides
dynamic procurement of computing resources and other resources that
are utilized to perform tasks within the cloud-computing
environment. Metering and Pricing 82 provide cost tracking as
resources are utilized within the cloud-computing environment, and
billing or invoicing for consumption of these resources. In one
example, these resources may comprise application software
licenses. Security provides identity verification for cloud
consumers and tasks, as well as protection for data and other
resources. User portal 83 provides access to the cloud-computing
environment for consumers and system administrators. Service level
management 84 provides cloud computing resource allocation and
management such that required service levels are met. Service Level
Agreement (SLA) planning and fulfillment 85 provides
pre-arrangement for, and procurement of, cloud computing resources
for which a future requirement is anticipated in accordance with an
SLA.
[0046] Workloads layer 90 provides examples of functionality for
which the cloud-computing environment may be utilized. Examples of
workloads and functions which may be provided from this layer
include: mapping and navigation 91; software development and
lifecycle management 92; virtual classroom education delivery 93;
data analytics processing 94; transaction processing 95; and action
analytics and notifications 96.
[0047] Turning now to an overview of the aspects of the invention,
one or more embodiments of the present invention provides an
autonomous vehicles an ability to use an altered set of regulations
in light of events affecting the autonomous vehicles, upon request
by an occupant of the autonomous vehicle or by the autonomous
vehicle itself in light of sensing or detecting events that could
affect the autonomous vehicle. The request would be sent to a
governing authority responsible for a portion/region of a road
network relevant to the request, and the governing authority can
determine whether the request should be granted, denied or modified
based on the circumstances for the request and an associated
condition of the relevant portion/region of the road network. For
example, a passenger in an autonomous vehicle having a medical
issue can indicate a medical emergency by contacting governing
authority with a request to use altered traffic rules. The request
can indicate a desire to exceed a posted speed limit for an
associated portion of the road network being traversed by the
autonomous vehicle in order to travel to a hospital. The governing
authority can review the request and grant, deny or modify the
request. Accordingly, if the governing authority grants the
request, the governing authority can transmit approval of the
request to the autonomous vehicle, and the autonomous vehicle can
travel at the requested speed.
[0048] The above-described aspects of the invention address the
shortcomings of the prior art by allowing an autonomous vehicle to
temporarily disregard normal traffic rules upon request in light of
an event affecting the autonomous vehicle. The request can be
reviewed by a governing authority responsible for oversight of the
traffic rules for a location associated with the request, and the
governing authority can grant, deny or modify the request.
[0049] In an exemplary embodiment of the present invention, as
shown in FIG. 3, is a block diagram illustrating an exemplary
operating environment 300 for an autonomous vehicle in accordance
with one or more embodiments of the present invention. Environment
300 includes vehicles 305 and 310 and server 380, all
interconnected over network 375. Network 375 can be, for example, a
local area network (LAN), a wide area network (WAN), such as the
Internet, a dedicated short range communications network, or any
combination thereof, and may include wired, wireless, fiber optic,
or any other connection known in the art. The communication network
can be any combination of connections and protocols that will
support communication between vehicle 305, vehicle 310, and server
380, respectively. Environment 300 can also include a plurality of
global positioning satellites (GPS) 320 that transmit signals to
the vehicles 305 and 310. The cloud computing system 50 shown in
FIG. 1 can supplement or implement any of the computer-based
functionality of the environment 300.
[0050] The vehicles 305 and 310 can be motorized vehicles operating
on a road network within a defined portion/region 505 (see FIG. 5).
The portion/region 505 can be managed by one or more regional
bodies that enforce traffic regulations within the portion/region
505. The vehicles 305 and 310 can be autonomous, semi-autonomous,
partially manually operated or a combination thereof. The vehicles
305 and 310 can each include propulsion systems (not shown),
control systems (not shown), user interfaces (not shown),
automobile onboard computer systems 54N (see FIG. 1), sensor
systems (not shown), and communications systems (not shown).
[0051] The propulsion systems can include components operable to
provide powered motion to the vehicles. The propulsion systems can
provide motion using a variety of sources, for example, an
engine/motor. The engine/motor can be any combination of an
internal combustion engine, an electric motor, or other types of
engines/motors. The propulsion systems can include multiple types
of engines and/or motors, such as, a gas-electric hybrid car. An
energy source for the propulsion systems can be, for example,
gasoline, diesel, other petroleum-based fuels, propane, hydrogen,
other compressed gas-based fuels, ethanol, solar panels, and/or
batteries.
[0052] The control systems include a variety of mechanical,
electro-mechanical, and electronic systems that can be configured
to control the operations of the vehicles. Control systems can each
include a steering unit, a throttle, a brake unit, and/or a
navigation system. The steering unit can be a mechanism that can
control a heading and/or turning of the vehicles. The throttle can
be configured to control an operating speed of the vehicles. The
brake unit can include any combination of mechanisms configured to
decelerate the vehicles. The navigation system can be any system
configured to determine a driving path for the vehicles. For
example, the navigation system can receive input information from a
GPS system 320 and one or more camera systems included in the
sensor systems in order to generate the driving path for the
vehicles.
[0053] The user interfaces can be mechanisms by which an occupant
of the vehicles can interact with the vehicles. The user interfaces
can include buttons, knobs, levers, pedals, paddles, and/or any
other type of user interface, such as a touchscreen display capable
of detecting the location and/or movement of a user's finger.
[0054] The automobile onboard computer systems 54N, depicted in
FIG. 1, are computing systems including at least one computer
processor, which is capable of controlling one or more functions of
the vehicles. For example, an automobile onboard computer system
54N can control a propulsion system based on inputs received from a
sensor system.
[0055] The sensor systems can include any number of sensors
configured to detect information about the vehicles and the
vehicles' surrounding environments. The sensor systems can include
a GPS, an inertial measurement unit (IMU), a RADAR unit, a LIDAR
unit, and/or a camera. The GPS can be any sensor configured to
estimate a geographic location. The IMU can be any combination of
sensors configured to sense position and orientation changes in a
vehicle based on inertial acceleration. The RADAR unit can be any
system that uses radio signals to sense objects within the local
environment of a vehicle. The RADAR unit can also detect relative
motion between a vehicle and the vehicle's surroundings. The LIDAR
unit can be any system configured to sense objects in a vehicle's
environment using one or more lasers. The camera can include one or
more devices configured to capture a plurality of images of the
environment of a vehicle.
[0056] The communications systems can be any system configured to
communicate with one or more devices directly or via network 375.
The communications systems can include a transmitter and a receiver
for sending and receiving messages.
[0057] The server 380 can be a desktop computer, a laptop computer,
a tablet computer, a specialized computer server, a smartphone, or
any other computer system known in the art. Exemplary components of
server 380 are described in greater detail with regard to FIG. 4.
Server 380 can include a memory storage. The memory storage can
store regional laws file and regional operating mode file and an
altered traffic regulations program.
[0058] Referring to FIG. 4, there is shown exemplary components of
server 380 according to one or more embodiments of the present
invention. Exemplary components of server 380 can comprise
processing system 400. The processing system 400 can include one or
more central processing units (processors) 401a, 401b, 401c, etc.
(collectively or generically referred to as processor(s) 401). In
one or more embodiments, each processor 401 may include a reduced
instruction set computer (RISC) microprocessor. Processors 401 are
coupled to system memory 414 and various other components via a
system bus 413. Read only memory (ROM) 402 is coupled to the system
bus 413 and may include a basic input/output system (BIOS), which
controls certain basic functions of processing system 400.
[0059] FIG. 4 further depicts an input/output (I/O) adapter 407 and
a network adapter 406 coupled to the system bus 413. I/O adapter
407 may be a small computer system interface (SCSI) adapter that
communicates with a hard disk 403 and/or tape storage drive 405 or
any other similar component. I/O adapter 407, hard disk 403, and
tape storage device 405 are collectively referred to herein as mass
storage 404. Operating system 420 for execution on the processing
system 400 may be stored in mass storage 404. A network adapter 406
interconnects bus 413 with an outside network, for example, network
375, enabling data processing system 400 to communicate with other
such systems, for example, automobile onboard computer system 54N.
A screen (e.g., a display monitor) 415 is connected to system bus
413 by display adaptor 412, which may include a graphics adapter to
improve the performance of graphics intensive applications and a
video controller. In one or more embodiments of the present
invention, adapters 407, 406, and 412 may be connected to one or
more I/O busses that are connected to system bus 413 via an
intermediate bus bridge (not shown). Suitable I/O buses for
connecting peripheral devices such as hard disk controllers,
network adapters, and graphics adapters typically include common
protocols, such as the Peripheral Component Interconnect (PCI).
Additional input/output devices are shown as connected to system
bus 413 via user interface adapter 408 and display adapter 412. A
keyboard 409, mouse 410, and speaker 411 all interconnected to bus
413 via user interface adapter 408, which may include, for example,
a Super I/O chip integrating multiple device adapters into a single
integrated circuit.
[0060] In exemplary embodiments, the processing system 400 includes
a graphics processing unit 430. Graphics processing unit 430 is a
specialized electronic circuit designed to manipulate and alter
memory to accelerate the creation of images in a frame buffer
intended for output to a display. In general, graphics processing
unit 430 is very efficient at manipulating computer graphics and
image processing and has a highly parallel structure that makes it
more effective than general-purpose CPUs for algorithms where
processing of large blocks of data is done in parallel.
[0061] Thus, as configured in FIG. 4, the processing system 400
includes processing capability in the form of processors 401,
storage capability including system memory 414 and mass storage
404, input means such as keyboard 409 and mouse 410, and output
capability including speaker 411 and display 415. In one
embodiment, a portion of system memory 414 and mass storage 404
collectively store an operating system coordinate the functions of
the various components shown in FIG. 4.
[0062] Referring now to FIG. 5, an exemplary driving environment
500 according to one or more embodiments of the present invention
is depicted. The driving environment 500 can include one or more
autonomous vehicles, for example, vehicles 305, 310, driving within
a region/portion 505 of a road network. The portion/region 505 can
include a road network within a city, a local highway, a state
road, an interstate highway, or the like. The movement of the
autonomous vehicles within the portion/region 505 may be governed
by traffic rules, laws, regulations, modes of operation, or the
like, which can be stored on a server, for example server 380.
Different entities can dictate how an autonomous vehicle operates
within the portion/region 505 depending on who is responsible for
the portion/region 505 of the road network being traversed by the
autonomous vehicle. For example, a city can have authority for
enforcing traffic rules, laws, regulations, modes of operation for
traversing surface streets within the city, while a county, state
or federal government entity can have authority for enforcing
traffic rules, laws, regulations, modes of operation on an
associated highway.
[0063] Each entity can operate a server 380. In order to manage
roads and portions of a road network within the portion/region 505
in which an entity is responsible, each entity can store data
associated with a set of regional rules, law, regulations (rules)
and a regional operating mode on the server 380, for example, in
mass storage 404. The stored regional rules can include traffic
laws, including speed limits, passing rules, ability to turn at a
red light, yielding right of way or any other standard necessary
for safe transit along a road network within the portion/region
505. The regional operating mode can include rules that control the
movement and/or operation of an autonomous vehicle within the
portion/region 505. For example, a regional operating mode can
include rules regarding proper spacing between cars to ensure
sufficient time to stop, proper timing and use of turn signals, or
any other instruction that can ensure a proper administration and
operation of the autonomous vehicle within the portion/region
505.
[0064] Each entity server 380 can also store data related to
altered traffic regulations program containing rules regarding how
and when an associated set of regional rules can be altered upon
request from one or more autonomous vehicles (altered traffic
regulations) in mass storage 404. The altered traffic regulations
can be employed in situations in which the autonomous vehicles need
to deviate from operating within the confines of the normal traffic
rules. For example, the altered traffic regulations can be
applicable to one or more of the following events: a medical
emergency (within the autonomous vehicle or based on another
vehicle), urgent cargo being shipped within portion/region 505, a
very important person traveling within the portion/region 505
(i.e., US President), weather emergency, local or national
emergency, or the like. The autonomous vehicle can utilize the
altered traffic regulations upon request from an occupant of the
autonomous vehicle, the autonomous vehicle itself or based on
instruction from a manager of the server 380.
[0065] When the autonomous vehicle transmits a data request to use
altered traffic regulations to an authority governing an associated
portion/region 505 of a road network via a communications system,
the autonomous vehicle may be required to transmit additional
information with the request for review and approval by the
governing authority, for example, a municipality. The additional
information can include any of the following: the nature of the
emergency, the identities of occupants of the autonomous vehicle,
vehicle type and/or identity, vehicle capabilities, the location of
the autonomous vehicle, the route and/or destination of the
vehicle, or any other relevant information. The request to use
altered traffic regulations and the additional information received
by the governing authority can be processed by an associated server
380 of the governing authority to determine whether the request for
altered traffic regulations should be granted/permitted. The server
380 of the governing authority can use the altered traffic
regulations program and a rules-based system stored on the server
380 to determine whether the request for altered traffic
regulations should be granted.
[0066] Altered traffic regulations can allow for an adjusted
operation of the autonomous vehicle for a designated time, area,
distance or the like. Altered traffic regulations can include any
of the following: an altered speed that can be higher or lower than
a designated speed limit for given location within the
portion/region 505, an ability to use lanes on a road segment that
are normally restricted from use by the autonomous vehicle at a
time a request is received or transmission is issued, an ability to
temporarily alter traffic signal operation at a given location
within the portion/region 505, an ability to change traffic flow
directions of designated lanes of a road segment, request a cleared
path, or any other adjustment to road segments or intersections
needed for safe passage by the autonomous vehicle.
[0067] In addition, when a request for altered traffic regulations
is granted by the governing authority, in addition to transmitting
data granting the request to use altered traffic regulations, the
governing authority can use the associated server 380 to transmit
additional information and/or assistance to the requesting
autonomous vehicle. For example, an autonomous vehicle indicating a
medical emergency can be sent routing information, by the governing
authority through server 380, directing the autonomous vehicle to
the nearest hospital. For example, an autonomous vehicle indicating
a medical emergency can transmit an alert to designated emergency
contacts or the governing authority can transmit the alert if the
autonomous vehicle cannot send the alert.
[0068] The server 380 of the governing authority can transmit a
request to an escort (police) to assist with travel of the
autonomous vehicle to a requested location or inform authorities
(police) in an area associated with the autonomous vehicle that the
autonomous vehicle has been authorized to use altered traffic rules
to prevent an unintended incident with the authorities. Depending
on the request and additional information provided, the governing
authority can transmit a request requiring the autonomous vehicle
to provide visible and/or audible alerts to indicate the autonomous
vehicle is operating under altered traffic rules. The server 380 of
the governing authority can also modify a request received from an
autonomous vehicle. For example, a governing authority can receive
request from an autonomous vehicle to travel 65 miles per hour
(mph) on a road that has a speed limit of 40 mph via the
communications system. The server 380 can process the request via
processor 401 and determine that the requested rate is too
dangerous for a given area or too dangerous for the autonomous
vehicle given the capabilities of the autonomous vehicle.
Accordingly, the processor 401 can determine a safe speed above the
speed limit, for example, 50 mph, and transmit instructions via
server 380 and a communications system to the requesting autonomous
vehicle granting operation at the safe speed instead of the
requested speed.
[0069] FIG. 6 is a flow diagram illustrating a method 600 for
autonomous vehicle operation using altered traffic regulations
according to one or more embodiments of the present invention. At
block 605, a server 380 of a governing authority receives a request
via a communications system to use altered traffic regulations and
any associated information from one or more autonomous vehicles,
for example, vehicles 310 and 315. At block 610, a processor 401 of
the server 380 is used to determine a location of the requesting
one or more vehicles. At block 615, the processor 401 determines
that an authority in receipt of the request for the use of altered
traffic regulations governs a portion/region 505 of the road
network associated with the determined location of the requesting
one or more autonomous vehicles. If, at block 615, the processor
401 determines that the receiving authority does not govern the
portion/region 505 of the road network associated with the
determined location of the requesting one or more autonomous
vehicles, the method 600 proceeds to block 625 where the receiving
authority forwards, using the communications system, the received
request to an appropriate governing authority for portion/region
505 of the road network associated with the determined location of
the requesting one or more autonomous vehicles. If, at block 615,
the processor 401 determines that the receiving authority does
govern the portion/region 505 of the road network associated with
the determined location of the requesting one or more autonomous
vehicles, the method 600 proceeds to block 620.
[0070] At block 620, the processor 401 analyzes the request to use
altered traffic regulations and any associated information to
determine whether the request should be granted. For example, the
processor 401 may determine that the request is too dangerous to
grant based on the current location and/or time for a variety of
reasons, i.e., a large-scale emergency in the portion/region 505.
Accordingly, at block 635, if the processor 401 determines that the
request should not be granted, the sever 380 can transmit, via the
communications system, a response denying the request to the one or
more autonomous vehicles. The server 380 of the governing authority
can also, in response to a determination by the processor 401 that
the request should not be granted, transmit, via the communications
system, a response modifying the request to the one or more
vehicles, for example, denying a request to drive 60 mph, and
transmitting, via the communications system, a modification
allowing transit at 50 mph to the one or more autonomous vehicles.
Accordingly, at block 630, if the processor 401 determines that the
request should be granted, the server 380 can transmit, via the
communications system, a response granting the request to use
altered traffic regulations to the one or more autonomous vehicles.
The method 600 subsequently ends. The method 600 can also be
repeated as the one or more autonomous vehicles change
location.
[0071] The present invention may be a system, a method, and/or a
computer program product. The computer program product may include
a computer readable storage medium (or media) having computer
readable program instructions thereon for causing a processor to
carry out aspects of the present invention.
[0072] The computer readable storage medium can be a tangible
device that can retain and store instructions for use by an
instruction execution device. The computer readable storage medium
may be, for example, but is not limited to, an electronic storage
device, a magnetic storage device, an optical storage device, an
electromagnetic storage device, a semiconductor storage device, or
any suitable combination of the foregoing. A non-exhaustive list of
more specific examples of the computer readable storage medium
includes the following: a portable computer diskette, a hard disk,
a random access memory (RAM), a read-only memory (ROM), an erasable
programmable read-only memory (EPROM or Flash memory), a static
random access memory (SRAM), a portable compact disc read-only
memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a
floppy disk, a mechanically encoded device such as punch-cards or
raised structures in a groove having instructions recorded thereon,
and any suitable combination of the foregoing. A computer readable
storage medium, as used herein, is not to be construed as being
transitory signals per se, such as radio waves or other freely
propagating electromagnetic waves, electromagnetic waves
propagating through a waveguide or other transmission media (e.g.,
light pulses passing through a fiber-optic cable), or electrical
signals transmitted through a wire.
[0073] Computer readable program instructions described herein can
be downloaded to respective computing/processing devices from a
computer readable storage medium or to an external computer or
external storage device via a network, for example, the Internet, a
local area network, a wide area network and/or a wireless network.
The network may comprise copper transmission cables, optical
transmission fibers, wireless transmission, routers, firewalls,
switches, gateway computers and/or edge servers. A network adapter
card or network interface in each computing/processing device
receives computer readable program instructions from the network
and forwards the computer readable program instructions for storage
in a computer readable storage medium within the respective
computing/processing device.
[0074] Computer readable program instructions for carrying out
operations of the present invention may be assembler instructions,
instruction-set-architecture (ISA) instructions, machine
instructions, machine dependent instructions, microcode, firmware
instructions, state-setting data, or either source code or object
code written in any combination of one or more programming
languages, including an object oriented programming language such
as Smalltalk, C++ or the like, and conventional procedural
programming languages, such as the "C" programming language or
similar programming languages. The computer readable program
instructions may execute entirely on the user's computer, partly on
the user's computer, as a stand-alone software package, partly on
the user's computer and partly on a remote computer or entirely on
the remote computer or server. In the latter scenario, the remote
computer may be connected to the user's computer through any type
of network, including a local area network (LAN) or a wide area
network (WAN), or the connection may be made to an external
computer (for example, through the Internet using an Internet
Service Provider). In some embodiments, electronic circuitry
including, for example, programmable logic circuitry,
field-programmable gate arrays (FPGA), or programmable logic arrays
(PLA) may execute the computer readable program instructions by
utilizing state information of the computer readable program
instructions to personalize the electronic circuitry, in order to
perform aspects of the present invention.
[0075] Aspects of the present invention are described herein with
reference to flowchart illustrations and/or block diagrams of
methods, apparatus (systems), and computer program products
according to embodiments of the present invention. It will be
understood that each block of the flowchart illustrations and/or
block diagrams, and combinations of blocks in the flowchart
illustrations and/or block diagrams, can be implemented by computer
readable program instructions.
[0076] These computer readable program instructions may be provided
to a processor of a general purpose computer, special purpose
computer, or other programmable data processing apparatus to
produce a machine, such that the instructions, which execute via
the processor of the computer or other programmable data processing
apparatus, create means for implementing the functions/acts
specified in the flowchart and/or block diagram block or blocks.
These computer readable program instructions may also be stored in
a computer readable storage medium that can direct a computer, a
programmable data processing apparatus, and/or other devices to
function in a particular manner, such that the computer readable
storage medium having instructions stored therein comprises an
article of manufacture including instructions which implement
aspects of the function/act specified in the flowchart and/or block
diagram block or blocks.
[0077] The computer readable program instructions may also be
loaded onto a computer, other programmable data processing
apparatus, or other device to cause a series of operational steps
to be performed on the computer, other programmable apparatus or
other device to produce a computer implemented process, such that
the instructions which execute on the computer, other programmable
apparatus, or other device implement the functions/acts specified
in the flowchart and/or block diagram block or blocks.
[0078] The flowchart and block diagrams in the Figures illustrate
the architecture, functionality, and operation of possible
implementations of systems, methods, and computer program products
according to various embodiments of the present invention. In this
regard, each block in the flowchart or block diagrams may represent
a module, segment, or portion of instructions, which comprises one
or more executable instructions for implementing the specified
logical function(s). In some alternative implementations, the
functions noted in the block may occur out of the order noted in
the figures. For example, two blocks shown in succession may, in
fact, be executed substantially concurrently, or the blocks may
sometimes be executed in the reverse order, depending upon the
functionality involved. It will also be noted that each block of
the block diagrams and/or flowchart illustration, and combinations
of blocks in the block diagrams and/or flowchart illustration, can
be implemented by special purpose hardware-based systems that
perform the specified functions or acts or carry out combinations
of special purpose hardware and computer instructions.
* * * * *