System and method for identifying an installated driver using v2x communication and transmitting information related to an installated
Receiving and transmitting unstable vehicle information through the vehicle communication system solves the problem that the driver of the main vehicle cannot avoid collisions and improves road safety.
Patent Information
- Application Number
- CN202510041337.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-01-10
- Filing Date
- 2025-01-10
- Publication Date
- 2025-07-11
AI Technical Summary
When unstable drivers appear on the road, the driver of the main vehicle lacks effective ways to avoid collisions with them.
Through the communication module and processor on the vehicle, information about unstable vehicles is received and transmitted, alarms are issued to nearby vehicles and recommended evasion actions, including license plate number, brand, color, position and driving direction, etc.
Effectively warn of nearby vehicles, help drivers take measures to avoid collisions with unstable vehicles and improve road safety.
Smart Images

Figure CN120299291A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to situation awareness for road vehicles, and more particularly, to systems and methods for detecting unstable vehicles, predicting collisions with unstable vehicles, and evasive maneuvers for unstable vehicles. Background Art
[0002] The problem is that when there is a driver with unstable behavior on the road and the unstable vehicle may potentially come into contact with the host vehicle, the driver of the host vehicle lacks a way to determine how to avoid or prevent a collision.
[0003] Therefore, there is a need for a system and method that can provide information about an unstable vehicle to nearby vehicles and suggest actions for avoiding a collision. Summary of the Invention
[0004] An overview is presented below that provides a basic understanding of one or more embodiments described herein. This overview is not intended to identify key or decisive elements or to delineate any scope of different embodiments and / or any scope of the claims. The sole purpose of the overview is to present some concepts in a simplified form as a prelude to the more detailed description presented herein.
[0005] According to one embodiment, a system includes: a communication module and a processor; wherein the processor stores instructions in a non-transitory memory, which when executed, cause the processor to: receive, by a host vehicle through the communication module, a first message from a source, wherein the first message includes information about an unstable vehicle, wherein the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and transmit, through the communication module, a second message to issue an alert to a second vehicle, wherein the second message includes a portion of the first message, a second contact area, and an evasive maneuver for the second vehicle; and wherein the system is a component of the host vehicle, and wherein the source is one of a first vehicle, a device, and traffic infrastructure.
[0006] According to one embodiment, a method includes: receiving, by a host vehicle through the communication module, a first message from a source, wherein the first message includes information about an unstable vehicle, wherein the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and transmitting, through the communication module, a second message to issue an alert to a second vehicle, wherein the second message includes a portion of the first message and an evasive maneuver for the second vehicle, and wherein the source is one of a first vehicle, a device, and traffic infrastructure.
[0007] According to one embodiment, a non-transitory computer-readable storage medium is provided, having instructions stored thereon that are executable by a computer system to perform operations including: receiving, by a host vehicle via a communication module, a first message from a source, where the first message includes information about an erratic vehicle, and where the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the erratic vehicle, and the direction of travel of the erratic vehicle; and transmitting a second message via the communication module to issue an alert to a second vehicle, where the second message includes a portion of the first message and an avoidance action for the second vehicle, and where the source is one of a first vehicle, a device, and traffic infrastructure.
[0008] According to one embodiment, the system includes: a communication module and a processor; where the processor stores instructions in a non-transitory memory, which when executed cause the processor to: transmit, by a host vehicle via the communication module, a message about an erratic vehicle to issue an alert to nearby vehicles, where the message includes one or more of a license plate number, make and model, color, the location of the erratic vehicle, and the direction of travel of the erratic vehicle.
[0009] According to one embodiment, the method includes: transmitting, by a host vehicle via the communication module, a message about an erratic vehicle to issue an alert to nearby vehicles, where the message includes one or more of a license plate number, make and model, color, the location of the erratic vehicle, and the direction of travel of the erratic vehicle.
[0010] According to one embodiment, a non-transitory computer-readable storage medium is provided, having instructions stored thereon that are executable by a computer system to perform operations including: transmitting, by a host vehicle via the communication module, a message about an erratic vehicle to issue an alert to nearby vehicles, where the message includes one or more of a license plate number, make and model, color, the location of the erratic vehicle, and the direction of travel of the erratic vehicle. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] These and other aspects of the present invention will now be described in more detail with reference to the drawings showing exemplary embodiments of the invention, in which:
[0012] Figure 1 is an illustration of an exemplary autonomous vehicle having various sensors, actuators, and systems according to one embodiment.
[0013] Figure 2 shows a block diagram of the electronic components of a vehicle according to one embodiment.
[0014] Figure 3A block diagram of a system for detecting unstable vehicles, predicting collision probabilities, and recommending avoidance actions, and its components, according to one embodiment, is shown.
[0015] Figure 4 An unstable vehicle detection module and various metrics for detecting unstable behavior, according to one embodiment, are shown.
[0016] Figure 5A Broadcasting a message to all nearby vehicles upon detection of an unstable vehicle, according to one embodiment, is shown.
[0017] Figure 5B Broadcasting a message to a group of nearby vehicles upon detection of an unstable vehicle, according to one embodiment, is shown.
[0018] Figure 5C Sending a customized message to nearby vehicles upon detection of an unstable vehicle, according to one embodiment, is shown.
[0019] Figure 5D Sending a message to law enforcement agencies and emergency services upon detection of an unstable vehicle, according to one embodiment, is shown.
[0020] Figure 6 The contact area around an unstable vehicle, according to one embodiment, is shown.
[0021] Figure 7A A transmitted message or communication message sent to nearby vehicles, which is displayed on the infotainment system of the nearby vehicles and includes generated graphics, according to one embodiment, is shown.
[0022] Figure 7B An exemplary broadcast message when an unstable vehicle is detected, according to one embodiment, is shown.
[0023] Figure 7C Examples of messages that can be sent from the host vehicle to nearby vehicles and their contents are shown.
[0024] Figure 8A The structure of a neural network / machine learning model with a feedback loop, according to one embodiment, is shown.
[0025] Figure 8B The structure of a neural network / machine learning model with reinforcement learning, according to one embodiment, is shown.
[0026] Figure 8C An example block diagram of using a machine learning model to identify unstable behavior and unstable vehicles, according to one embodiment, is shown.
[0027] Figure 8DShows an example flowchart for continuously monitoring an unstable vehicle and using a machine learning model to recommend actions according to an embodiment.
[0028] Figure 8E Shows an example flowchart for using swarm intelligence to coordinate mobile vehicles to avoid collision / contact areas with unstable vehicles.
[0029] Figure 9A Shows a block diagram of a method for detecting an unstable vehicle and determining an avoidance action according to an embodiment.
[0030] Figure 9B Shows a block diagram of a system for detecting an unstable vehicle and determining an avoidance action according to an embodiment.
[0031] Figure 9C Shows a block diagram of a method for detecting an unstable vehicle and determining an avoidance action, which is stored on a non-transitory computer medium, according to an embodiment.
[0032] Figure 10A Shows a block diagram of a method for a host vehicle to receive and send messages according to an embodiment.
[0033] Figure 10B Shows a block diagram of a system for a host vehicle to receive and send messages according to an embodiment.
[0034] Figure 10C Shows a block diagram of a method for a host vehicle to receive and send messages, which is stored on a non-transitory computer medium, according to an embodiment.
[0035] Figure 11A Shows a block diagram of a method for a host vehicle to send messages according to an embodiment.
[0036] Figure 11B Shows a block diagram of a system for a host vehicle to send messages according to an embodiment.
[0037] Figure 11C Shows a block diagram of a method for a host vehicle to send messages, which is stored on a non-transitory computer medium, according to an embodiment.
[0038] Figure 12A Shows a block diagram of a network security module according to an embodiment.
[0039] Figure 12B Shows a flowchart for protecting data security through a network security module.
[0040] Figure 12C Shows a flowchart for protecting data security through a network security module. Detailed Description
[0041] For simplicity and clarity of illustration, the figures show a general manner of construction. The description and details of well-known features and techniques may be omitted from the specification and figures to avoid unnecessarily obscuring the present disclosure. The figures enlarge the dimensions of some elements relative to other elements to assist in improving the understanding of embodiments of the present disclosure. Like reference numerals in different figures represent the same elements.
[0042] Although the detailed description herein contains many details for illustrative purposes, those of ordinary skill in the art will understand that many variations and alterations to the details are considered to be included herein.
[0043] Accordingly, the embodiments herein do not suffer any loss of generality with respect to any of the claims set forth, and do not impose any limitation. The terms used herein are for the purpose of describing particular embodiments only and are not limiting. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains.
[0044] As used herein, the indefinite articles "a" and "an" refer to one or more than one (i.e., at least one) of the grammatical objects of the word. For example, "a component" refers to one component or more than one component. Further, unless otherwise stated or clearly indicated as singular from the context, the use of the indefinite articles "a" and "an" in the specification and the appended drawings is to be interpreted as "one or more".
[0045] As used herein, the terms "example" and / or "exemplary" mean serving as an example, instance, or illustration. To avoid doubt, these examples do not limit the subject matter described herein. Further, any aspect or design described herein as "example" and / or "exemplary" is not necessarily more preferred or more advantageous than other aspects or designs or exclude equivalent exemplary structures and techniques known to those of ordinary skill in the art.
[0046] As used herein, the terms "first", "second", "third", etc. (if any) in the specification and claims distinguish similar elements and do not necessarily describe a particular order of precedence or chronological order. These terms are interchangeable where appropriate such that the embodiments herein can, for example, operate in an order different from that shown or described herein. Further, the terms "comprising", "having" and any variations thereof cover non-exclusive inclusion such that a process, method, system, article, device or apparatus that comprises a list of elements is not necessarily limited to those elements but may include other elements not expressly listed or other elements inherent to the process, method, system, article, device or apparatus.
[0047] As used herein, the terms "left", "right", "front", "rear", "top", "bottom", "upper", "lower", etc. (if any) in the specification and claims are for illustrative purposes and not necessarily for describing a permanent relative position. The terms so used are interchangeable where appropriate so that embodiments of the devices, methods, and / or articles described herein can, for example, be operated in other directions than those shown or described herein.
[0048] Unless explicitly described, any element, act, or instruction used herein is not critical or necessary. Additionally, the term "set" includes items (e.g., related items, unrelated items, combinations of related and unrelated items, etc.) and can be interchanged with "one or more". If only one item is intended, "one" or similar language is used. Further, the terms "have", "having", "contain", etc. are open-ended terms. Additionally, unless otherwise explicitly stated, "based on" means "at least partially based on".
[0049] As used herein, the terms "system", "device", "unit", and / or "module" refer to different components, component parts, or components at various hierarchical levels. However, other expressions that achieve the same purpose can replace these terms.
[0050] As used herein, the terms "couple", "coupled", "connect", etc. refer to connecting two or more elements (or components) mechanically, electrically, and / or in other ways. Two or more electrical components can be electrically coupled together but not mechanically or in other ways. The coupling or connection can last for any length of time, such as permanently, semi-permanently, or only for an instant. "Electrically coupled" includes all types of electrical coupling. The absence of words such as "removably", "removable", etc. near the words "couple" or "coupled", etc. does not mean that the coupling or connection, etc. being discussed is or is not removable.
[0051] As used herein, the term "or" refers to an inclusive "or" rather than an exclusive "or". That is, unless otherwise stated or clear from the context, "X uses A or B" refers to any natural inclusive arrangement. That is, if X uses A; X uses B; or X uses both A and B simultaneously, then in any of the above cases, "X uses A or B" is satisfied.
[0052] As used herein, if two or more elements or modules operate together functionally, they are "integral" or "integrated". If each of two or more elements can operate functionally independently, they are "non-integral".
[0053] As used herein, the term "real-time" refers to an operation that occurs as soon as possible when a triggering event occurs. The triggering event can include receiving data necessary to perform a task or otherwise process information. Due to the inherent latency in transmission and / or computing speed, the term "real-time" includes operations that occur in a "near" real-time or slightly delayed from the triggering event. In various embodiments, "real-time" can refer to real-time minus the time latency for processing (e.g., determining) and / or transmitting data. The specific time latency can vary depending on the type and / or quantity of data, the processing speed of the hardware, the transmission capabilities of the communication hardware, the transmission distance, etc. However, in many embodiments, the time latency can be less than about 1 second, 2 seconds, 5 seconds, or 10 seconds.
[0054] As used herein, the term "about" can mean within a specified or unspecified range of a specified or unspecified value. In some embodiments, "about" can mean within plus or minus ten percent of the specified value. In other embodiments, "about" can mean within plus or minus five percent of the specified value. In further embodiments, "about" can mean within plus or minus three percent of the specified value. In other embodiments, "about" can mean within plus or minus one percent of the specified value.
[0055] As used herein, the term "component" refers to a distinct and recognizable part, element, or unit within a large system, structure, or entity. A component is a building block within a more complex whole for a specific function or purpose. Components are typically designed to be modular and interchangeable to allow them to be combined or replaced in various configurations to create or modify a system. A component can be a combination of mechanical, electrical, hardware, firmware, software, and / or other engineering elements.
[0056] A digital electronic circuit, or a digital electronic circuit in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or a combination of one or more of them, can implement the implementations and all functional operations described in this specification. The implementation can be one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer-readable medium for execution by, or to control the operation of, a data processing device. The computer-readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter affecting a machine-readable propagated signal, or a combination of one or more of them. The term "computing system" includes all devices, apparatus, and machines for processing data, including, for example, programmable processors, computers, or multiple processors or computers. In addition to the hardware, the device may also include code that creates an execution environment for the computer program under discussion, such as code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them. A propagated signal is an artificially generated signal (e.g., a machine-generated electrical, optical, or electromagnetic signal) that encodes information for transmission to a suitable receiver device.
[0057] The actual special-purpose control hardware or software code for implementing these systems and / or methods is not limited to these implementations. Thus, any software and any hardware are capable of implementing these systems and / or methods based on the description herein without reference to a specific software code.
[0058] A computer program (also referred to as a program, software, software application, script, or code) is written in any suitable form of programming language, including compiled or interpreted languages. It can be configured in any suitable form, including as a stand-alone program or module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. The program can be stored in a part of a file that holds other programs or data (e.g., one or more scripts in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that hold one or more modules, subroutines, or portions of code). The computer program can be executed on one computer or multiple computers located at one site or distributed across multiple sites and interconnected by a communication network.
[0059] One or more programmable processors that execute one or more computer programs to perform functions by operating on input data and generating output perform the processes and logical flows described in this specification. These processes and logical flows may also be executed by dedicated logic circuitry, and the apparatus may also be implemented as dedicated logic circuitry, such as, but not limited to, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-a-chip (SOC) systems, complex programmable logic devices (CPLDs), and the like.
[0060] Processors suitable for executing computer programs include, for example, general and special purpose microprocessors, and any one or more processors of any suitable type of digital computer. The processor will receive instructions and data from read only memory or random access memory or both. Elements of a computer can include a processor for executing instructions and one or more memory devices for storing the instructions and data. The computer will also include or be operatively coupled to receive data from, transfer data to, or both, one or more mass storage devices for storing data, such as, for example, magnetic disks, magneto-optical disks, optical disks, or solid-state disks. However, the computer need not have such devices. In addition, another device, such as a mobile phone, personal digital assistant (PDA), mobile audio player, global positioning system (GPS) receiver, etc., may be embedded in the computer. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and storage devices, including, for example, semiconductor memory devices (such as, erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), and flash memory devices), magnetic disks (such as, internal hard disks or removable hard disks), magneto-optical disks (such as, compact disc read only memory (CD ROM) discs, digital versatile disc-read only memory (DVD-ROM) discs), and solid-state disks. The dedicated logic circuitry may supplement the processor and memory or be combined with the processor and memory.
[0061] To provide interaction with a user, a computer may have a display device for displaying information to the user, such as a cathode ray tube (CRT) or a liquid crystal display (LCD) monitor, as well as a keyboard and a pointing device, such as a mouse or a trackball, by which the user can provide input to the computer. Other types of devices also provide interaction with the user. For example, feedback to the user can be any suitable form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and the computer can receive input from the user in any suitable form, including sound, speech, or tactile input.
[0062] A computing system includes backend components, such as data servers, or includes middleware components, such as application servers, or includes frontend components, such as client computers having a graphical user interface or a web browser through which the user can interact with an implementation, or any suitable combination of one or more such backend, middleware, or frontend components; such a computing system can implement the implementations described herein. Any suitable form or medium of digital data communication, such as a communication network, can interconnect the components of the system. Examples of communication networks include local area networks (LANs) and wide area networks (WANs), such as intranets and the Internet.
[0063] A computing system may include clients and servers. The clients and servers are remote from each other and typically interact through a communication network. The relationship between a client and a server is created by computer programs having a client-server relationship with each other running on respective computers.
[0064] Embodiments of the present invention may include or utilize a special-purpose or general-purpose computer including computer hardware. Embodiments within the scope of the present invention may also include physical media and other computer-readable media for carrying or storing computer-executable instructions and / or data structures. Such computer-readable media can be any media accessible by a general-purpose or special-purpose computer system. A computer-readable medium storing computer-executable instructions is a physical storage medium. A computer-readable medium carrying computer-executable instructions is a transmission medium. Thus, by way of example and not limitation, embodiments of the present invention can include at least two different kinds of computer-readable media: physical computer-readable storage media and transmission computer-readable media.
[0065] Although the embodiments described herein are with reference to specific exemplary embodiments, it will be apparent that various modifications and changes can be made to these embodiments without departing from the broader spirit and scope of the various embodiments. For example, hardware circuits (e.g., complementary metal-oxide-semiconductor (CMOS)-based logic circuits), firmware, software (e.g., embodied in a non-transitory machine-readable medium), or any combination of hardware, firmware, and software can enable and operate the various devices, units, and modules described herein. For example, transistors, logic gates, and circuits (e.g., application-specific integrated circuits (ASICs) and / or digital signal processor (DSP) circuits) can embody various electrical structures and methods.
[0066] In addition, non-transitory machine-readable media and / or systems can embody the various operations, processes, and methods disclosed herein. Accordingly, the specification and drawings are illustrative rather than restrictive.
[0067] Physical computer-readable storage media include RAM, ROM, EEPROM, CD-ROM, or other optical disk storage (such as CDs, DVDs, etc.), magnetic disk storage, or other magnetic storage devices, solid state drives, or any other medium. They store the required program code in the form of computer-executable instructions or data structures that can be accessed by a general or special purpose computer.
[0068] As used herein, the term "network" refers to one or more data links capable of conveying electronic data between computer systems and / or modules and / or other electronic devices. When a network or other communication connection (wired, wireless, or a combination of wired or wireless) transfers or provides information to a computer, the computer properly views the connection as a transmission medium. General or special-purpose computers access transmission media that can include a network and / or data links carrying the desired program code in the form of computer-executable instructions or data structures. The scope of computer-readable media includes the combinations described above, which enable the conveyance of electronic data between computer systems and / or modules and / or other electronic devices. The term network can include the Internet, local area networks, wide area networks, or combinations thereof. The network can include one or more networks or communication systems, such as the Internet, telephone systems, satellite networks, cable television networks, and various other private and public networks. Additionally, the connection can include a wired connection (e.g., wires, cables, fiber optic lines, etc.), a wireless connection, or a combination thereof. Moreover, although not shown, other computers, systems, devices, and networks can also be connected to the network. A network refers to any set of devices or subsystems that (directly or indirectly) connect a group of terminal nodes that share resources located on or provided by network nodes through links. Computers communicate with each other digitally using common communication protocols. For example, a subsystem can include the cloud. The cloud refers to servers accessible via the Internet, as well as the software and databases running on those servers.
[0069] Furthermore, upon reaching the various computer system components, program code in the form of computer-executable instructions or data structures can automatically be sent from the transmission computer-readable medium to a physical computer-readable storage medium (and vice versa). For example, computer-executable instructions or data structures received via a network or data link can be buffered in RAM within a network interface module (NIC) and then ultimately transferred to the computer system RAM and / or a less volatile computer-readable physical storage medium at the computer system. Thus, computer system components that also (or even primarily) utilize the transmission medium can include computer-readable physical storage media.
[0070] Computer-executable instructions include, for example, instructions and data that cause a general-purpose computer, a special-purpose computer, or a special-purpose processing device to perform a certain function or a set of functions. Computer-executable instructions can be, for example, binary, intermediate format instructions such as assembly language, or even source code. Although the subject matter described herein is in language specific to structural features and / or methodological acts, the described features or the described acts do not limit the subject matter defined in the claims. Instead, the described features and acts are exemplary forms of implementing the claims.
[0071] Although this specification contains many details, these details are not to be construed as limiting the scope of the disclosure or the claims, but rather as merely describing features of particular implementations. A single implementation may implement certain features described in the context of various implementations in this specification. Conversely, various features described in the context of a single implementation may be implemented in multiple implementations, either individually or in any suitable sub-combination. Additionally, although the features described herein operate in certain combinations and are even claimed as such initially, one or more features from the claimed combination may in some cases be excluded from the combination, and the claimed combination may be directed to a sub-combination or a variant of a sub-combination.
[0072] Similarly, although multiple operations are depicted in the figures herein in a particular order to achieve a desired result, this should not be construed as requiring that the operations be performed in the particular order or sequence shown, or that all of the shown operations be performed to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Additionally, the separation of various system components in an implementation should not be construed as requiring such separation in all implementations, and it should be understood that the described program components and systems may be integrated together in a single software product or packaged into multiple software products.
[0073] Even though particular combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of possible implementations. Other implementations are within the scope of the claims. For example, the acts recited in the claims may be performed in a different order and still achieve the desired result. In fact, many of these features may be combined in ways not specifically recited in the claims and / or not disclosed in the specification. Although each dependent claim may directly depend on only one claim, the disclosure of possible implementations includes the combination of each dependent claim with every other claim in the claim group.
[0074] Furthermore, a computer system including one or more processors and a computer-readable medium, such as computer memory, may implement the method. In particular, one or more processors execute computer-executable instructions stored in the computer memory to perform various functions, such as the acts recited in the embodiments.
[0075] Those skilled in the art will understand that the present invention can be implemented in a network computing environment having many types of computer system configurations, including personal computers, desktop computers, laptop computers, messaging processors, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile phones, PDAs, pagers, routers, switches, etc. The present invention can also be implemented in a distributed system environment where both local and remote computer systems linked by a network link (either through a hardwired data link, a wireless data link, or a combination of hardwired and wireless data links) perform tasks. In a distributed system environment, program modules can be located in local and remote memory storage devices.
[0076] Unless otherwise stated, the following terms and phrases shall be understood to have the following meanings.
[0077] As used herein, the term "Cryptographic protocol" is also referred to as a security protocol or an encryption protocol. It is an abstract or concrete protocol that performs security-related functions and typically uses a sequence of cryptographic primitives for encryption methods. The protocol describes the use of algorithms. A protocol detailed enough includes details about data structures and representations to enable multiple interoperable versions of a program.
[0078] Secure application layer data transfer widely uses cryptographic protocols. Cryptographic protocols typically include at least several of these aspects: key negotiation or establishment, entity authentication, symmetric encryption, and message authentication material construction, secure application layer data transfer, non-repudiation methods, secret sharing methods, and secure multi-party computation.
[0079] Network switches use cryptographic protocols, such as Secure Socket Layer (SSL) and Transport Layer Security (TLS) (the successor of SSL), to secure data communication over wireless networks.
[0080] As used herein, the term "unauthorized access" refers to someone using another person's account or other means to gain access to a website, program, server, service, or other system. For example, if someone keeps guessing the password or username of an account that does not belong to them until they gain access, it is considered unauthorized access.
[0081] As used herein, the term "IoT" stands for the Internet of Things, which describes a network of physical objects, "things," or objects embedded with sensors, software, and other technologies, for the purpose of connecting and exchanging data with other devices and systems over the Internet.
[0082] As used herein, "machine learning" refers to algorithms that give a computer the ability to learn without being explicitly programmed, including algorithms that learn from data and make predictions about data. Machine learning techniques include, but are not limited to, support vector machines, artificial neural networks (ANNs) (also referred to herein as "neural networks"), deep learning neural networks, logistic regression, discriminant analysis, random forests, linear regression, rule-based machine learning, naive Bayes, nearest neighbor, decision trees, decision tree learning, and hidden Markov, among others. For clarity, part of a machine learning process can use algorithms such as linear regression or logistic regression. However, using linear regression or another algorithm as part of a machine learning process is different from performing statistical analysis, such as regression, using a spreadsheet program. A machine learning process can continuously learn and adjust a classifier as new data becomes available and does not rely on explicit or rule-based programming. An artificial neural network can have feedback loops to dynamically adjust the system output as it learns from new data (as new data becomes available). In machine learning, backpropagation and feedback loops are used to train artificial intelligence / machine learning (AI / ML) models, improving the accuracy and performance of the model over time. Statistical modeling relies on finding relationships (such as mathematical equations) between variables to predict outcomes.
[0083] As used herein, the term "data mining" is the process used to turn raw data into useful information. It is the process of analyzing large datasets to discover hidden patterns, relationships, and insights that can be used for decision-making and prediction.
[0084] As used herein, the term "data acquisition" is the process of sampling signals that measure the physical state of the real world and converting the resulting samples into digital values for computer processing. A data acquisition system typically converts analog waveforms into digital values for processing. Components of a data acquisition system include sensors that convert physical parameters into electrical signals, signal conditioning circuits that convert sensor signals into a form that can be converted into digital values, and analog-to-digital converters that convert the conditioned sensor signals into digital values. Stand-alone data acquisition systems are commonly referred to as data loggers.
[0085] As used herein, the term "dashboard" is a type of interface that visualizes specific key performance indicators (KPIs) for a particular goal or process. It is based on data visualization and information graphics.
[0086] As used herein, a "database" is an organized collection of information so that it can be easily accessed, managed, and updated. A computer database typically contains an aggregation of data records or files.
[0087] As used herein, the term "data set" is a collection of data. In the case of tabular data, a data set corresponds to one or more database tables, where each column of the table represents a particular variable and each row corresponds to a given record of the data set under discussion. A data set lists the values of each variable for each member of the data set, such as the height and weight of an object. Each value is called a data point. A data set can also consist of a collection of documents or files.
[0088] As used herein, a "sensor" is a device that detects and measures physical properties of the surrounding environment and converts that information into an electrical or digital signal for further processing. Sensors play a crucial role in collecting data for various applications in various industries. Sensors can be made of electronic, mechanical, chemical, or other engineering components. Examples include sensors for measuring temperature, pressure, humidity, proximity, light, acceleration, orientation, etc.
[0089] As used herein, the term "infotainment system" or "in-vehicle infotainment system" (IVI) refers to a combination of vehicle systems used to deliver entertainment and information. In one example, information can be delivered to the driver and passengers / occupants of a vehicle through audio / video interfaces, control elements such as touchscreen displays, button panels, voice commands, etc. Some of the main components of an in-vehicle infotainment system are an integrated head unit, a heads-up display (also known as a HUD), a high-end digital signal processor (DSP), and a graphics processing unit (GPU) to support multiple displays, an operating system, Controller Area Network (CAN), Low-Voltage Differential Signaling (LVDS), and other network protocol support (as required), a connectivity module, automotive sensor integration, a digital instrument cluster, etc.
[0090] As used herein, the term "environment" or "surroundings" refers to the surrounding environment and space in which a vehicle travels. It refers to the dynamic environment in which a vehicle travels, including other vehicles, obstacles, pedestrians, lane boundaries, traffic signs and signals, speed limits, potholes, snow, standing water, etc.
[0091] As used herein, the term "autonomous mode" refers to an operating mode that is independent and unsupervised.
[0092] As used herein, the term "vehicle" refers to an item used for transporting people or goods. Sedans, cars, trucks, buses, etc. are examples of vehicles.
[0093] As used herein, the term "autonomous vehicle", also known as a self-driving vehicle, driverless vehicle, or robotic vehicle, refers to a vehicle that incorporates vehicle automation, i.e., a vehicle that can sense its environment and move safely with little or no human input. Autonomous vehicles combine a variety of sensors to perceive the surrounding environment, such as thermal imaging cameras, radio detection and ranging (RADAR), light detection and ranging (LIDAR), sound navigation and ranging (SONAR), global positioning system (GPS), odometers, and inertial measurement units. Control systems designed for this purpose interpret sensor information to identify appropriate navigation paths as well as obstacles and relevant signs.
[0094] As used herein, the term "communication system" or "communication module" refers to a system capable of exchanging information between two points. The process of transmitting and receiving information is called communication. The main elements of communication include, but are not limited to, the sender of the information, the channel or medium of communication, and the receiver of the information.
[0095] As used herein, the term "autonomous communication" includes communication over a period of time with minimal supervision in different scenarios and is not uniquely or entirely based on pre-coded scenarios or pre-coded rules or predefined protocols. Generally speaking, autonomous communication is carried out in an independent and unsupervised manner. In one embodiment, the communication module is enabled for autonomous communication.
[0096] As used herein, the term "connection" refers to a communication link. It refers to a communication channel that connects two or more devices for data transmission. It can refer to a physical transmission medium, such as a wire, or a logical connection over a multiplexed medium, such as a wireless communication channel in telecommunications and a computer network. The channel is used for the transmission of information from one or several transmitters to one or several receivers, such as a digital bit stream. The channel has a certain information transmission capacity, usually measured by its bandwidth in hertz (Hz) or its data rate in bits per second. For example, vehicle-to-vehicle (V2V) communication can wirelessly exchange information about the speed, position, and direction of surrounding vehicles.
[0097] As used herein, the term "communication" refers to the transmission of information and / or data from one point to another. Communication can be carried out by means of electromagnetic waves. Communication is also the flow of information from a point called the source to another point called the receiver. Communication includes one of the following: transmitting data, instructions, and information or a combination of data, instructions, and information. Communication occurs between any two communication systems or communication units. The term "communication" includes systems that incorporate other more specific types of communication, such as V2I (vehicle-to-infrastructure), V2N (vehicle-to-network), V2V (vehicle-to-vehicle), V2P (vehicle-to-pedestrian), V2D (vehicle-to-device), and V2G (vehicle-to-grid), as well as vehicle-to-everything (V2X) communication.
[0098] In addition, the communication device is configured on a computer with communication functions and is connected to the vehicle-mounted emergency reporting device for two-way communication through a communication line of a communication network such as a radio station and a public telephone network or through satellite communication of a communication satellite. The communication device is adapted to communicate with a communication terminal through a communication network.
[0099] The term "vehicle-to-vehicle (V2V) communication" refers to a technology that allows vehicles to broadcast and receive information. The message can be an omnidirectional message, creating a 360-degree "awareness" of nearby other vehicles. Vehicles can be equipped with appropriate software (or safety applications) capable of using information from surrounding vehicles to determine potential collision threats as they progress.
[0100] The term "vehicle-to-everything (V2X) communication" refers to the transmission of information from a vehicle to any entity that may affect the vehicle and vice versa. According to the underlying technology employed, there are two types of V2X communication technologies: cellular networks and other technologies that support direct device-to-device communication (e.g., dedicated short-range communication (DSRC), port community system (PCS for short), etc.).
[0101] As used herein, the term "protocol" refers to the procedures required to initiate and maintain communication; a formal set of conventions that manage the format and relative timing of message exchange between two communication terminals; a set of conventions that manage the interaction of processes, devices, and other components within a system; a set of signaling rules for passing information or commands between boards connected to a bus; a set of signaling rules for passing information between agents; a set of semantic and syntactic rules that determine the behavior of interacting entities; a set of rules and formats (semantics and syntax) that determine the communication behavior of simulation applications; a set of conventions or rules that manage the interaction of processes or applications between communication terminals; a formal set of conventions that manage the format and relative timing of message exchange between communication terminals; a set of semantic and syntactic rules that determine the behavior of functional units in achieving meaningful communication; a set of semantic and syntactic rules for exchanging information.
[0102] As used herein, the term "communication protocol" refers to standardized communication between any two systems. An example communication protocol is the DSRC protocol. The DSRC protocol uses a specific frequency band (e.g., 5.9 GHz (gigahertz)) and specific message formats (e.g., basic safety messages, signal phase and timing, and roadside alerts) to enable communication between vehicles and infrastructure components (e.g., traffic signals and roadside sensors). DSRC is a standardized protocol, the specifications of which are maintained by various organizations, including the Institute of Electrical and Electronics Engineers (IEEE) and the Society of Automotive Engineers (SAE).
[0103] As used herein, the term "two-way communication" refers to the exchange of data between two components. In one example, the first component can be a vehicle, and the second component can be infrastructure that can be used by a system of hardware, software, and firmware.
[0104] The term "alert" or "alert signal" refers to communication that draws attention. Alerts can include visual, tactile, auditory alerts, and combinations of these alerts to warn a driver or passenger. These alerts enable the recipient (e.g., the driver or occupant) to react and respond quickly.
[0105] As used herein, the term "communicate with" refers to any coupling, connection, or interaction using signals to exchange information, messages, instructions, commands, and / or data, using any system, hardware, software, protocol, or format, whether the exchange is conducted wirelessly or via a wired connection.
[0106] The term "electronic control unit" (ECU), also known as "electronic control module" (ECM), is generally a module that controls one or more subsystems. Herein, the ECU can be installed in an automobile or other motor vehicle. It can refer to many ECUs and can include, but is not limited to, an engine control module (ECM), a powertrain control module (PCM), a transmission control module (TCM), a brake control module (BCM) or an electronic brake control module (EBCM), a central control module (CCM), a central timing module (CTM), a general electronic module (GEM), a body control module (BCM), and a suspension control module (SCM). The ECU is sometimes collectively referred to as a vehicle computer or a vehicle central computer and can include separate computers. In one example, the electronic control unit can be an embedded system in automotive electronics. In another example, the electronic control unit is wirelessly coupled to automotive electronics.
[0107] The terms "non-transitory computer-readable storage medium" and "computer-readable storage medium" include a single medium or multiple media, such as a centralized or distributed database, and / or associated caches and servers that store one or more instruction sets. Additionally, the terms "non-transitory computer-readable storage medium" and "computer-readable storage medium" include any tangible medium that is capable of storing, encoding, or carrying a set of instructions for execution by a processor, which instructions, for example when executed, cause the system to perform any one or more of the methods or operations disclosed herein. As used herein, the term "computer-readable storage medium" is expressly defined to include any type of computer-readable storage device and / or storage disk, and does not include propagated signals.
[0108] As used herein, the term "vehicle data bus" refers to an interface of a vehicle data bus (e.g., Controller Area Network (CAN), Local Interconnect Network (LIN), Ethernet / IP, FlexRay, and Media Oriented Systems Transport (MOST)), which enables communication between on-board equipment (OBE) and other vehicle systems to support connected vehicle applications.
[0109] The term "handshake" refers to the exchange of predetermined signals between agents connected via a communication channel to ensure that they are connected to each other (as opposed to an impostor). This may also include the use of passwords and codes by an operator. Handshake signals are transmitted back and forth over a communication network to establish a valid connection between two sites. Hardware handshakes use dedicated lines, such as the Request to Send (RTS) and Clear to Send (CTS) lines in Recommended Standard 232 (RS-232) serial transmission. Software handshakes send codes such as "Synchronize" (SYN) and "Acknowledgment" (ACK) in Transmission Control Protocol / Internet Protocol (TCP / IP) transmissions.
[0110] The term "computer vision module" or "computer vision system" allows a vehicle to "see" and interpret the world around it. The system combines the use of cameras, sensors, and other technologies, such as Radio Detection and Ranging (RADAR), Light Detection and Ranging (LIDAR), Sound Navigation and Ranging (SONAR), Global Positioning System (GPS), and machine learning algorithms, etc., to collect visual data about the vehicle's surrounding environment and analyze this data in real time. The computer vision system is designed to perform a series of tasks, including object detection, lane detection, and pedestrian recognition. The computer vision system uses deep learning algorithms and other machine learning techniques to analyze the visual data and make decisions about how to control the vehicle. For example, the computer vision system can use object detection algorithms to identify other vehicles, pedestrians, and obstacles in the vehicle's path. Then, the computer vision system can use this information to calculate the vehicle's speed and direction, adjust its trajectory to avoid collisions, and apply brakes or acceleration as needed. The computer vision system allows the vehicle to drive safely and efficiently under various driving conditions.
[0111] The term "application server" refers to a server that has an application or software for delivering business applications through a communication protocol. The application server framework is a service layer model. It includes software components that are accessible to software developers through application programming interfaces. It is system software that resides between an operating system (OS) on one side and external resources such as a database management system (DBMS), communication and Internet services, and third-party user applications on the other side.
[0112] As used herein, the term "network security" refers to the application of technologies, processes, and controls to protect systems, networks, programs, devices, and data from cyberattacks.
[0113] As used herein, the term "network security module" refers to a module that includes the application of technologies, processes, and controls to protect systems, networks, programs, devices, and data from cyberattacks and threats. It is designed to reduce the risk of cyberattacks and prevent unauthorized exploitation of systems, networks, and technologies. It includes, but is not limited to, critical infrastructure security, application security, network security, cloud security, and Internet of Things (IoT) security.
[0114] As used herein, the term "encryption" refers to the use of one or more mathematical techniques and a password or "key" for decrypting information to protect digital data. It refers to converting information or data into code, especially to prevent unauthorized access. It can also refer to hiding information or data by converting it into code. It can also be referred to as cipher, code, encryption, encoding. A simple example is representing letters with numbers - for example, "A" is "01", "B" is "02", and so on. For example, a message like "HELLO" will be encrypted as "0805121215", and this value will be transmitted over the network to the recipient.
[0115] As used herein, the term "decryption" refers to the process of converting an encrypted message back to its original format. This is usually the reverse process of encryption. It decodes the encrypted information so that only authorized users can decrypt the data because decryption requires a key or password. This term can be used to describe methods of decrypting data manually or using appropriate code or keys.
[0116] As used herein, the term "cybersecurity threat" refers to any potential malicious attack that attempts to illegally access data, disrupt digital operations, or damage information. Malicious acts generally include, but are not limited to, damaging data, stealing data, or disrupting digital life. Cybersecurity threats include, but are not limited to, malware, spyware, phishing attacks, ransomware, zero-day vulnerabilities, Trojan horses, advanced persistent threats, wiper attacks, data manipulation, data destruction, rogue software, malicious advertising, unpatched software, computer viruses, man-in-the-middle attacks, data breaches, denial-of-service (DoS) attacks, and other attack vectors.
[0117] As used herein, the term "hash value" can be considered the fingerprint of a file. The contents of a file are processed through a cryptographic algorithm, and a unique numerical value that identifies the file contents is generated, namely the hash value. If the contents are modified in any way, the hash value will also change significantly. Exemplary algorithms for generating hash values: Message Digest-5 (MD5) algorithm and Secure Hash Algorithm-1 (SHA1).
[0118] As used herein, the term "integrity check" refers to the verification of the accuracy and consistency of system-related files, data, etc. It can be performed using a verification tool that can detect whether any critical system files have been changed, enabling the system administrator to look for unauthorized changes to the system. For example, data integrity corresponds to the quality of data in a database and the level at which users check the quality, integrity, and reliability of the data. Data integrity verification validates that the data in the database is accurate and operates as expected in a given application.
[0119] As used herein, the term "alarm" refers to the trigger when a system or a component within the system fails or does not perform as expected. When an event occurs, the system can enter an alarm state. An alarm indication signal is a visual signal indicating the alarm state. For example, when a cybersecurity threat is detected, an alarm can be sent to the system administrator through a sound alarm, message, glowing LED, pop-up window, etc. The alarm indication signal can be reported downstream from the detection device to prevent adverse situations or cascading effects.
[0120] As used herein, the term "cryptographic protocol" is also known as a security protocol or encryption protocol. It is an abstract or concrete protocol that performs security-related functions and applies cryptographic methods, typically as a sequence of cryptographic primitives. The protocol describes the use of algorithms. A protocol detailed enough includes details about data structures and representations to enable multiple interoperable versions of a program. Cryptographic protocols are widely used for secure application-level data transfer. Cryptographic protocols typically include at least some of the following aspects: key agreement or establishment, entity authentication, symmetric encryption and message authentication, secure application-level data transfer, non-repudiation methods, secret sharing methods, and secure multi-party computation. Hash algorithms can be used to verify data integrity. Secure Sockets Layer (SSL) and its successor, Transport Layer Security (TLS), are cryptographic protocols that network switches can use to secure data communication over a network.
[0121] The embodiments described herein can be directed to one or more of a system, method, apparatus, and / or computer program product at any possible level of integrated technical detail. The computer program product can include a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to perform aspects of one or more of the embodiments described herein. The computer-readable storage medium can be a tangible device that is capable of retaining and storing instructions for use by an instruction execution device. For example, the computer-readable storage medium can be, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a superconducting storage device, and / or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer-readable storage medium can also include 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 disc (DVD), a memory stick, a floppy disk, a mechanically encoded device such as a punch card or raised structures in a groove record instructions thereon, and / or any suitable combination of the foregoing. The computer-readable storage medium used herein is not construed as a transitory signal per se, such as a radio wave and / or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide and / or other transmission media (e.g., optical pulses through an optical fiber cable), and / or electrical signals transmitted through a wire.
[0122] The computer-readable program instructions described herein can be downloaded to a corresponding computing / processing device and / or to an external computer or external storage device from a computer-readable storage medium via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include 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 the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium within the corresponding computing / processing device. The computer-readable program instructions for performing the operations of one or more embodiments described herein can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuits, and / or source code and / or object code written in any combination of one or more programming languages. The programming languages can be high-level programming languages, low-level programming languages, compiled languages, interpreted languages, scripting languages, functional programming languages, markup languages, etc. The programming languages include object-oriented programming languages, such as Smalltalk, C++, etc., and / or procedural programming languages, such as the "C" programming language and / or similar programming languages. The computer-readable program instructions can be executed entirely on the computer, partially on the computer, as a stand-alone software package, partially on the computer and / or partially on a remote computer, or entirely on a remote computer and / or server. In the latter scenario, the remote computer can be connected to the computer through any type of network, including a local area network (LAN) and / or a wide area network (WAN), and / or can be connected to an external computer (e.g., through the Internet using an Internet service provider). In one or more embodiments, an electronic circuit, including, for example, a programmable logic circuit, a field programmable gate array (FPGA), and / or a programmable logic array (PLA), can run the computer-readable program instructions by utilizing the state information of the computer-readable program instructions to personalize the electronic circuit so as to perform aspects of one or more embodiments described herein.
[0123] Aspects of one or more embodiments described herein are described with reference to the flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to one or more embodiments described herein. Each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, and / or other programmable data processing apparatus to produce a machine, such that the instructions executed via the processor of the computer or other programmable data processing apparatus can create means (or modules) for implementing the functions / acts specified in the flowchart and / or block diagram block. These computer-readable program instructions can also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer-readable storage medium in which the instructions are stored can include an article of manufacture including instructions that can implement various aspects of the functions / acts specified in the flowchart and / or block diagram block. The computer-readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, and / or other devices to cause a series of operational acts to be performed on the computer, other programmable apparatus, and / or other devices to produce a computer-implemented process, such that the instructions executed on the computer, other programmable apparatus, and / or other devices implement the functions / acts specified in the flowchart and / or block diagram block.
[0124] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and / or operation of possible implementations of systems, computer-implementable methods, and / or computer program products according to one or more embodiments described herein. In this regard, each block in the flowchart or block diagram can represent a module, segment, and / or portion of instructions, which includes one or more executable instructions for implementing the specified logical function. In one or more alternative implementations, the functions noted in the block can occur out of the order noted in the figures. For example, two blocks shown in succession can, based on the functionality involved, be executed substantially concurrently, and / or the blocks can sometimes be executed in the reverse order. It will also be noted that each block of the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated system based on hardware that can perform the specified functions and / or acts and / or execute a combination of one or more of special hardware and / or computer instructions.
[0125] Although the subject matter described herein is in the general context of computer-executable instructions of a computer program product running on one or more computers, those skilled in the art will recognize that one or more embodiments herein can also be implemented in conjunction with one or more other program modules. Program modules include routines, programs, components, data structures, etc. that perform particular tasks and / or implement particular abstract data types. Additionally, other computer system configurations, including single-processor and / or multi-processor computer systems, minicomputers, mainframe computers, as well as computers, hand-held computing devices (e.g., PDAs, telephones), microprocessor-based or programmable consumer and / or industrial electronic devices, and / or the like, can practice the computer-implemented methods described herein. In a distributed computing environment, tasks are performed by remote processing devices linked through a communications network, and the aspects shown can also be practiced. However, a stand-alone computer can practice one or more aspects of one or more embodiments described herein, if not all aspects. In a distributed computing environment, program modules can be located in both local and remote memory storage devices.
[0126] As used in this application, the terms "component", "system", "platform", "interface", and / or the like can refer to and / or can include a computer-related entity or an entity related to an operating machine with one or more specific functions. Entities described herein can be hardware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable, an execution thread, a program, and / or a computer. By way of illustration, an application running on a server and the server can both be components. One or more components can reside in an execution process and / or thread, and a component can be localized on one computer and / or distributed between two or more computers. In another example, various components can be run by various computer-readable media on which various data structures are stored. These components can communicate via local and / or remote processes, such as in accordance with a signal having one or more data packets (e.g., data from a component interacting with another component of a local system, a distributed system, and / or across a network, such as the Internet). As another example, a component can be a device having specific functionality provided by a mechanical component operated by an electrical or electronic circuit, which electrical or electronic circuit is operated by a software and / or firmware application executed by a processor. In such a case, the processor can be located inside and / or outside the device and can execute at least a portion of the software and / or firmware application. As yet another example, a component can be a device providing specific functionality without a mechanical component by an electronic component, where the electronic component can include a processor and / or other devices to execute at least part of the software and / or firmware that imparts functionality to the electronic component. In one aspect, a component can be emulated via a virtual machine, e.g., within a cloud computing system.
[0127] As used in this subject specification, the term "processor" can refer to any computing processing unit and / or device, including but not limited to: a single-core processor; a single processor with software multithreading execution capabilities; a multi-core processor; a multi-core processor with software multithreading execution capabilities; a multi-core processor employing hardware multithreading techniques; a parallel platform; and / or a parallel platform with distributed shared memory. Additionally, a processor can refer to an integrated circuit, an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), a programmable logic controller (PLC), a complex programmable logic device (CPLD), discrete gate or transistor logic, discrete hardware components, and / or any combination thereof designed to perform the functions described herein. Further, a processor can utilize nanoscale architectures, such as but not limited to molecule-based transistors, switches, and / or gates, in order to optimize space usage and / or enhance the performance of related devices. A combination of computing processing units can implement a processor.
[0128] As used herein, terms such as "store", "storage", "data store", "data storage", "database", and any other terms related to information storage components for the operation and function of a component refer to a "memory component", an entity included in a "memory", or a component including a memory. The memory and / or memory components described herein can be volatile memory or non-volatile memory, or can include volatile memory and non-volatile memory. By way of illustration and not limitation, non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), flash memory, and / or non-volatile random access memory (RAM) (e.g., ferroelectric RAM (FeRAM)). Volatile memory can include RAM, which can be used, for example, as an external cache memory. By way of illustration and not limitation, RAM can have various forms, such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), direct Rambus RAM (DRRAM), direct Rambus dynamic RAM (DRDRAM), and / or Rambus dynamic RAM (RDRAM). Additionally, the memory components and / or computer-implemented methods of the systems described herein include, but are not limited to, including these and / or any other suitable types of memory.
[0129] The embodiments described herein include only examples of systems and computer-implemented methods. Of course, in order to describe one or more embodiments, it is not possible to describe every conceivable combination of components and / or computer-implemented methods, but one of ordinary skill in the art will recognize that many further combinations and / or permutations of one or more embodiments are possible. Additionally, where the terms "comprising", "having", "containing", etc. are used in the detailed description, claims, appendices, and / or drawings, these terms are intended to be inclusive in a manner similar to the term "including" as interpreted when used as a transitional word in a claim.
[0130] As used herein, the term "driver" refers to an occupant who is located within a vehicle even if the occupant is not actually driving the vehicle, such that when the vehicle control system relinquishes control to the occupant or driver, or when the vehicle control system is not operating in an autonomous or semi-autonomous mode, the occupant can take over control and act as the driver of the vehicle.
[0131] As used herein, the term "host vehicle" refers to a vehicle that observes the environment and makes decisions based on the observations.
[0132] The term "target vehicle" refers to a vehicle that the host vehicle focuses on. The target vehicle may or may not be an autonomous vehicle. It may or may not have vehicle-to-vehicle (V2V) communication enabled.
[0133] As used herein, the term "nearby vehicle" or "adjacent vehicle" or "surrounding vehicle" refers to a vehicle that is close to the host vehicle within the communication range of the host vehicle. It may or may not be an autonomous vehicle. It may or may not have V2V communication enabled. In some embodiments, an adjacent vehicle may more specifically refer to a vehicle immediately adjacent in the next lane or behind the host vehicle.
[0134] As used herein, the term "road surface condition" refers to the physical state of a road, including its smoothness, texture, and friction. The road surface condition may be affected by various factors such as weather, traffic volume, potholes, and maintenance measures.
[0135] As used herein, the term "unstable vehicle" refers to a vehicle that exhibits unpredictable, irregular, or erratic behavior on the road, such as a car, truck, motorcycle, or any other vehicle. An unstable vehicle may also include a vehicle in an accident area, an emergency response vehicle, etc. Generally speaking, an unstable vehicle may include any vehicle that disrupts normal traffic.
[0136] As used herein, the term "unstable driving behavior" refers to rapid and sudden speed changes, unstable lane changes without signaling, inconsistent steering patterns, aggressive maneuvers, or behavior that significantly deviates from standard safe driving practices.
[0137] As used herein, the term "adaptability" refers to the ability to adjust or modify a system according to changing conditions, situations, or inputs. When having adaptability, the system is able to adjust and update the scanning frequency according to the changing conditions during driving. For example, the adaptive scanning frequency can adjust or modify the system according to the current situation, environment, and requirements to scan the surrounding environment. As the conditions change, the system continuously recalibrates the scanning frequency.
[0138] "Vehicle pursuit" as used herein refers to an event in which one or more law enforcement officers attempt to arrest a suspect who attempts to avoid arrest by driving at high speed or using other evasive strategies (such as driving off a highway, making sudden turns, or driving in a legal manner but deliberately not obeying the officer's stop signal) while driving a motor vehicle. This is a situation where law enforcement officers drive very fast in an attempt to catch someone inside a vehicle. This is also known as a high-speed chase.
[0139] "Transportation infrastructure" refers to the physical and organizational components of a transportation system for facilitating vehicle movement, safety, and efficiency. In the context of communication with vehicles, transportation infrastructure involves the integration of advanced technologies within a transportation network. This includes systems such as intelligent transportation management, adaptive signal control, variable message signs, and connected vehicle technologies, for example. Transportation infrastructure includes elements and devices that work together to provide real-time information on traffic conditions, optimize signal timing, and enable communication between vehicles and infrastructure.
[0140] The description of one or more embodiments is for illustrative purposes but is not exhaustive or limiting to the embodiments described herein. Many modifications and variations are obvious to a person of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein best explain the principles of the embodiments, the practical application to technologies found in the market, and / or technological improvements, and / or enable a person of ordinary skill in the art to understand the embodiments described herein.
[0141] The problem is that when an unstable driver (i.e., a driver with improper driving behavior) in a vehicle comes into contact with the current driver on the road, the current driver has no way of knowing how to avoid a collision. Therefore, there is a need for a system that can provide information to the vehicle or the current driver that an unstable driver is approaching, so as to allow the vehicle or the current driver to take action to avoid a collision, or to suggest that the vehicle or the current driver take a different route.
[0142] In one aspect, the system scans at a frequency level to determine if there is an unstable driver behavior. This can be achieved by monitoring current traffic reports. In one aspect, each vehicle is equipped with sensors (e.g., cameras, lidar, infrared, etc.) and a V2X communication module to monitor the driving behavior of other drivers, so that it can be determined whether a driver is not complying with local driving rules. An unstable driver can be, for example, a driver in a high-speed chase, a drunk driver, a driver incapacitated due to health problems, a driver of a police / ambulance / fire truck, or any other vehicle answering an emergency call. When a vehicle determines that such a vehicle is on the road or near its location, the system will initiate an evasion procedure to avoid contact with the vehicle being driven unstably. In addition, when a vehicle detects a vehicle being driven unstably, it will: broadcast a message to warn nearby vehicles; and request daisy-chain communication to notify all vehicles within a geographical range or route. In one aspect, if the host vehicle is surrounded or blocked by vehicles, the system will broadcast a request to the surrounding vehicles or the blocking vehicle to create a gap for avoiding a collision. In one aspect, the vehicle includes a method for receiving or sending such a message, which includes an alert and a request, so as to create space for the sending / host vehicle. The message can include a specific direction for moving the vehicle, such as stopping the vehicle, reversing, moving the vehicle to the right or left.
[0143] In one embodiment, a vehicle uses V2X messaging to communicate messages to nearby vehicles. The message includes the geographical location of the erratically driven vehicle, vehicle information, and potential avoidance actions that a driver can take to avoid any collision or contact with the erratically driven vehicle.
[0144] The system needs to receive information from cameras, sensors, and other vehicles that are closer to the erratically driven vehicle. The information includes the vehicle identification number (VIN), the color of the vehicle, the direction in which the erratic vehicle is moving, the location, the speed of the vehicle, and whether the erratically driven vehicle has V2X communication capabilities.
[0145] The system needs to determine corrective / avoidance actions. For example, if the system determines that a collision is likely to occur without taking action, the system will determine a corrective plan and display these actions to the vehicle operator.
[0146] Equipping a vehicle with such an artificial intelligence (AI) system is very useful for avoiding accidents. The system is very useful when there is a high-speed chase and the erratically driven vehicle is approaching the host vehicle. With this information, the operator can alert / remind other vehicles of the route to avoid.
[0147] When the operator provides a destination, the system starts scanning for high-speed chases or any reported erratically driven vehicles (cars, bicycles, etc.). If the system determines that there is a possibility of a collision, the system issues an alert and provides a recommended route considering energy and other factors.
[0148] Vehicles exhibiting erratic behavior pose a potential risk to road safety because their unpredictable movements can lead to accidents, collisions, and traffic disruptions. Erratic driving can be caused by various factors, including driver impairment, distraction, fatigue, or deliberate reckless behavior. Identifying and dealing with erratic vehicles is crucial for maintaining overall road safety and preventing potential accidents.
[0149] Figure 1 FIG. is an illustration of a vehicle having various sensors, actuators, and systems according to one embodiment. The vehicle includes: various sensors, such as ultrasonic sensors, light detection and ranging (LIDAR) sensors, radio detection and ranging (RADAR) sensors, etc.; actuators, such as brake actuators, steering actuators, etc.; and various subsystems, such as a propulsion system, a steering system, a brake sensor system, a communication system, etc. Figure 1is depicted as an exemplary system; it is neither limited by the depicted system nor an exhaustive list of the vehicle's sensors, actuators, and systems / subsystems and / or features. In one embodiment, the vehicle is an autonomous vehicle. Additionally, the depicted vehicle should not be construed as restrictive in terms of the arrangement of any of the depicted sensors, actuators, and systems / subsystems. These sensors, actuators, and systems / subsystems can be arranged to suit the purposes for which the autonomous vehicle is to perform. An autonomous vehicle, also known as a self-driving vehicle or a driverless vehicle, is a vehicle that can navigate and operate without human intervention. Sensors (e.g., including cameras, lidar, radar, and ultrasonic sensors) enable the autonomous vehicle to detect and identify objects, obstacles, and pedestrians on the road. The autonomous vehicle uses advanced control systems to make real-time decisions based on sensor data and pre-programmed rules or an intelligence-based decision-making system. These systems control the vehicle's acceleration, braking, steering, and communication, etc. Navigation systems (e.g., Global Positioning System (GPS), maps, and other location-based technologies) can assist the autonomous vehicle in navigating and planning the best route to the destination. The communication system of the autonomous vehicle can help them communicate with other vehicles and infrastructure (e.g., traffic lights and road signs) to exchange information and optimize traffic flow. Autonomous vehicles have multiple safety features, including collision avoidance systems, emergency braking, and backup systems in case of system failures. Autonomous vehicles rely on artificial intelligence and machine learning algorithms to analyze data, identify patterns, and improve performance over time.
[0150] Figure 2 A block diagram of a vehicle electronic component according to one embodiment is shown. In the illustrated example, the electronic component includes an on-vehicle computing platform 202, a human-machine interface (HMI) unit 204, a communication module 220, sensors 206, an electronic control unit (ECU) 208, and a vehicle data bus 210. Figure 2 is shown Figure 1 an example architecture of some of the electronic components shown in
[0151] The in-vehicle computing platform 202 includes a processor 212 (also referred to as a microcontroller unit or controller) and a memory 214. In the illustrated example, the processor 212 of the in-vehicle computing platform 202 is configured to include a controller 212-1. In other examples, the controller 212-1 is incorporated into another ECU having its own processor and memory. The processor 212 can be any suitable processing device or group of processing devices, such as but not limited to a microprocessor, a microcontroller-based platform, an integrated circuit, one or more field programmable gate arrays (FPGAs), and / or one or more application specific integrated circuits (ASICs). The memory 214 can be a volatile memory (e.g., RAM, including non-volatile RAM, magnetic RAM, ferroelectric RAM, etc.), a non-volatile memory (e.g., disk memory, FLASH memory, EPROM, EEPROM, memristor-based non-volatile solid-state memory, etc.), a non-alterable memory (e.g., EPROM), a read-only memory, and / or a high-capacity storage device (e.g., a hard disk drive, a solid-state drive, etc.). In some examples, the memory 214 includes multiple types of memories, particularly volatile and non-volatile memories. The memory 214 is a computer-readable medium on which a set or multiple sets of instructions can be embedded, such as software for operating the methods of the present disclosure. The instructions can embody one or more of the methods or logics described herein. For example, the instructions reside entirely or at least partially in any one or more of the memory 214, the computer-readable storage medium, and / or the processor 212 during execution.
[0152] Unit 204 provides an interface between the vehicle and the user. The HMI unit 204 includes digital and / or analog interfaces (e.g., input devices and output devices) for receiving input from the user(s) and displaying information to the user. The input devices include, for example, control knobs, instrument panels, digital cameras for image capture and / or visual command recognition, touchscreens, audio input devices (e.g., cockpit microphones), buttons, or touchpads. The output devices can include instrument cluster outputs (e.g., dials, lighting devices), haptic devices, actuators, a display 216 (e.g., a head-up display, a central console display, such as a liquid crystal display (LCD), an organic light emitting diode (OLED) display, a flat panel display, a solid-state display, etc.), and / or a speaker 218. For example, the display 216, the speaker 218, and / or other output devices of the HMI unit 204 are configured to emit alerts, such as an alert requesting manual takeover from the operator of the vehicle (e.g., the driver). Additionally, the HMI unit 204 of the illustrated example includes the hardware (e.g., a processor or controller, memory, storage, etc.) and software (e.g., an operating system, etc.) for an infotainment system presented via the display 216.
[0153] The sensor 206 is disposed inside and / or around the vehicle to monitor the characteristics of the vehicle and / or the environment in which the vehicle is located. One or more sensors 206 may be installed to measure the characteristics around the outside of the vehicle. Additionally or alternatively, one or more sensors 206 may be installed inside the cab of the vehicle or inside the vehicle body (e.g., engine compartment, wheel well, etc.) to measure the characteristics of the vehicle and / or sense the interior of the vehicle. For example, the sensor 206 includes an accelerometer, an odometer, a tachometer, a pitch and yaw sensor, a wheel speed sensor, a microphone, a tire pressure sensor, a biometric sensor, an ultrasonic sensor, an infrared sensor, a light detection and ranging (LIDAR / Laser Radar), a radio detection and ranging system (RADAR / Radar), a global positioning system (GPS), a millimeter wave (mmWave) sensor, a camera, and / or any other suitable type of sensor. In the illustrated example, the sensor 206 includes a distance detection sensor that is configured to monitor the object(s) located within the area around the vehicle. The sensor may include a distance detection sensor 206-1, such as a LIDAR, a radar, a camera, an ultrasonic sensor, a GPS sensor, a proximity sensor, etc., to detect the distance between the vehicle and an object or target in its vicinity.
[0154] The ECU 208 monitors and controls the subsystems of the vehicle. For example, the ECU 208 is a discrete group of electronic devices, including one or more of its own circuits (e.g., integrated circuits, microprocessors, memory, storage, etc.) and firmware, sensors, actuators, and / or mounting hardware. The ECU 208 communicates and exchanges information via a vehicle data bus (e.g., the vehicle data bus 210). Additionally, the ECU 208 may transmit characteristics (e.g., the status of the ECU, sensor readings, control status, error and diagnostic codes, etc.) and / or receive requests from each other. For example, a vehicle may have dozens of ECUs located at various positions around the vehicle and communicatively coupled via the vehicle data bus 210.
[0155] In the illustrated example, the ECU 208 includes an autonomous unit 208-1 and a body control module 208-2. For example, the autonomous unit 208-1 is configured to perform autonomous and / or semi-autonomous driving maneuvers (e.g., defensive driving maneuvers) of the vehicle based at least in part on instructions received from the controller 212-1 and / or data collected by the sensors 206 (e.g., ranging sensors). Additionally, the body control module 208-2 controls one or more subsystems of the entire vehicle, such as power windows, power locks, anti-theft systems, power mirrors, etc. For example, the body control module 208-2 includes circuitry for driving one or more relays (e.g., controlling windshield washer fluid, etc.), brushed direct current (DC) motors (e.g., controlling power seats, power locks, power windows, windshield wipers, etc.), stepper motors, LEDs, safety systems (e.g., seatbelt pretensioners, airbags, etc.), etc.
[0156] The vehicle data bus 210 is communicatively coupled to the communication module 220, the in-vehicle computing platform 202, the HMI unit 204, the sensors 206, and the ECU 208. In some examples, the vehicle data bus 210 includes one or more data buses. The vehicle data bus 210 may be implemented according to the Controller Area Network (CAN) bus protocol defined by the International Organization for Standardization (ISO) 11898-1, the Media Oriented Systems Transport (MOST) bus protocol, the CAN Flexible Data (CAN-FD) bus protocol (ISO 11898-7), and / or the K-line bus protocol (ISO 9141 and ISO 14230-1) and / or the Ethernet TM bus protocol IEEE802.3 (after 2002), etc.
[0157] The communication module 220-1 is configured to communicate with other nearby communication devices. In the illustrated example, the communication module 220 includes a dedicated short range communication (DSRC) module. The DSRC module includes antennas (one or more), radios (one or more), and software for communicating with nearby vehicles (one or more) via vehicle-to-vehicle (V2V) communication, communicating with infrastructure-based modules via vehicle-to-infrastructure (V2I) communication, and / or more generally communicating with nearby communication devices (e.g., mobile device-based modules) via vehicle-to-everything (V2X) communication.
[0158] V2V communication allows vehicles to share information such as speed, location, direction, and other relevant data, enabling them to cooperate and coordinate their actions to enhance road safety, efficiency, and mobility. V2V communication can be used to support various applications, such as collision avoidance, lane change assistance, platooning, and traffic management. It may rely on dedicated short-range communication (DSRC) and other wireless protocols to achieve fast and reliable data transmission between vehicles. V2V communication is a form of wireless communication between vehicles that allows vehicles to exchange information and coordinate with other vehicles on the road. V2V communication enables vehicles to share data about their location, speed, direction, acceleration, and braking with nearby other vehicles, which helps improve safety, reduce congestion, and enhance the efficiency of the transportation system.
[0159] V2V communication is typically based on wireless communication protocols such as dedicated short-range communication (DSRC) or cellular vehicle-to-everything (C-V2X) technology. With V2V communication, vehicles can receive information about potential hazards (e.g., accidents or road closures) and adjust their behavior accordingly. V2V communication can also be used to support advanced driver assistance systems (ADAS) and autonomous driving technologies, such as platooning, in which a group of vehicles travel closely by using V2V communication to coordinate their movement.
[0160] For more information about DSRC networks and how they communicate with vehicle hardware and software, refer to the U.S. Department of Transportation's June 2011 Core System Requirements Specification (SyRS) report (available at the URL http: / / wwwits.dot.gov / meetings / pdf / CoreSystemSESyRSRevA%20(2011-06-13).pdf). DSRC systems can be installed on vehicles and roadside infrastructure. A DSRC system that incorporates infrastructure information is called a "roadside" system. DSRC can be combined with other technologies, such as global positioning system (GPS), visible light communication (VLC), cellular communication, and short-range radar, to facilitate vehicles in conveying their location, speed, heading, relative position with respect to other objects, and exchanging information with other vehicles or external computer systems. DSRC systems can be integrated with other systems such as mobile phones.
[0161] Currently, DSRC networks are identified by the DSRC abbreviation or name. However, other names are sometimes used, usually in relation to connected vehicle programs and the like. Most of these systems are variants of pure DSRC or the IEEE 802.11 wireless standard. However, in addition to pure DSRC systems, it is also intended to cover dedicated wireless communication systems between vehicles and roadside infrastructure systems that are integrated with GPS and are based on the IEEE 802.11 protocol used for wireless local area networks (such as 802.11p, etc.).
[0162] Additionally or alternatively, the communication module 220-2 includes a cellular vehicle-to-everything (C-V2X) module. The C-V2X module includes hardware and software for communicating with other vehicles via vehicle-to-vehicle (V2V) communication, with infrastructure-based modules via vehicle-to-infrastructure (V2I) communication, and / or more generally with nearby communication devices (e.g., mobile device-based modules) via V2X communication. For example, the C-V2X module is configured to communicate directly and / or via a cellular network with nearby devices (e.g., vehicles, roadside units, mobile devices, etc.). Currently, the 3rd Generation Partnership Project is developing standards related to C-V2X communication.
[0163] In addition, the communication module 220-2 is configured to communicate with an external network. For example, the communication module 220-2 includes hardware (e.g., a processor, memory, storage, antennas, etc.) and software to control a wired or wireless network interface. In the illustrated example, the communication module 220-2 includes one or more communication controllers for cellular networks (e.g., Global System for Mobile Communications (GSM), Universal Mobile Telecommunications System (UMTS), Long Term Evolution (LTE), Code Division Multiple Access (CDMA)), Near Field Communication (NFC), and / or other standards-based networks (e.g., WiMAX (IEEE 802.16m), local area wireless networks (including IEEE 802.11a / b / g / n / ac or others), Wireless Gigabit (IEEE 802.11ad), etc.). In some examples, the communication module 220-2 includes a wired or wireless interface (e.g., an auxiliary port, a Universal Serial Bus (USB) port, a wireless node, etc.) to communicatively couple with a mobile device (e.g., a smartphone, a wearable device, a smartwatch, a tablet, etc.). In such an example, the vehicle can communicate with the external network via the coupled mobile device. The external network can be a public network, such as the Internet; a private network, such as an intranet; or a combination thereof, and can utilize various network protocols available now or developed later, including but not limited to TCP / IP-based network protocols.
[0164] In one embodiment of the system, communication between the host vehicle and nearby vehicles is performed via vehicle-to-vehicle (V2V) communication. In one embodiment of the system, vehicle-to-vehicle (V2V) communication is based on a wireless communication protocol using at least one of dedicated short range communication (DSRC) and cellular vehicle-to-everything (C-V2X) technology. In one embodiment of the system, communication between the host vehicle and nearby vehicles is performed via an Internet connection.
[0165] In one embodiment, the communication module is enabled for autonomous communication, where autonomous communication includes communication performed over a period of time with minimal supervision in different scenarios. The communication module includes hardware components, which include a vehicle gateway system, and the vehicle gateway system includes a microcontroller, a transceiver, a power management integrated circuit, and an Internet of Things device capable of transmitting one of analog and digital signals via telephone, wired, or wireless communication.
[0166] The autonomous unit 208-1 of the illustrated example is configured to perform autonomous and / or semi-autonomous driving maneuvers on the vehicle, such as defensive driving maneuvers. For example, the autonomous unit 208-1 performs autonomous and / or semi-autonomous driving maneuvers based on data collected by the sensor 206. In some examples, the autonomous unit 208-1 is configured to operate a fully autonomous system for the vehicle, a parking assistance system, an advanced driver assistance / assist system (ADAS), and / or other autonomous system(s).
[0167] The ADAS is configured to assist the driver in safely operating the vehicle. For example, the ADAS is configured to perform adaptive cruise control, collision avoidance, lane assistance (e.g., lane centering), blind spot detection, rear collision warning(s), lane departure warning, and / or any other function(s) for assisting in operating the vehicle. To perform the driver assistance functions, the ADAS monitors objects (such as vehicles, pedestrians, traffic signals, etc.) and develops a situational awareness around the vehicle. For example, the ADAS utilizes data collected by the sensor 206, the communication module 220-1 (e.g., from other vehicles, from roadside units, etc.), the communication module 220-2 from a remote server, and / or other data sources to monitor nearby objects and develop situational awareness.
[0168] In addition, in the illustrated example, the controller (or control module) 212-1 is configured to monitor the surrounding environment of the vehicle. For example, to enable the autonomous unit 208-1 to perform autonomous and / or semi-autonomous driving maneuvers, the controller 212-1 collects data collected by the vehicle's sensor 206. In some examples, the controller 212-1 collects location-based data via the communication module 220-1 and / or another module (such as a GPS receiver) to facilitate the autonomous unit 208-1 in performing autonomous and / or semi-autonomous driving maneuvers. Additionally, the controller 212-1 collects data from (i) adjacent vehicle(s) via the communication module 220-1 and V2V communication and / or (ii) from roadside unit(s) via the communication module 220-1 and V2I communication to further facilitate the autonomous unit 208-1 in performing autonomous and / or semi-autonomous driving maneuvers.
[0169] In operation, according to one embodiment, communication module 220-1 performs V2V communication with adjacent vehicles. For example, communication module 220-1 collects data from adjacent vehicles to identify (i) whether the adjacent vehicle includes an automatic and / or semi-automatic system (e.g., ADAS), (ii) whether the autonomous and / or semi-autonomous system is active, (iii) whether a manual takeover request for the autonomous and / or semi-autonomous system has been issued, (iv) the lane detection information of the adjacent vehicle, (v) the speed and / or acceleration of the adjacent vehicle, (vi) the (relative) positioning of the adjacent vehicle, (vii) the driving direction of the adjacent vehicle, (viii) the rate of change of the steering angle of the adjacent vehicle, (ix) the size of the adjacent vehicle, (x) whether the adjacent vehicle is using a stability control system(s) (e.g., anti-lock braking, traction control, electronic stability control, etc.) and / or any other information that helps controller 212-1 monitor the adjacent vehicle.
[0170] At least in part based on the data collected by communication module 220-1 from adjacent vehicles via V2V communication, controller 212-1 can determine the collision probability of the adjacent vehicle. For example, controller 212-1 determines the collision probability of the adjacent vehicle in response to identifying a manual takeover request in the data collected by communication module 220-1 from adjacent vehicles. Additionally or alternatively, controller 212-1 determines the collision probability for the adjacent vehicle in response to identifying a difference between (i) the lane marker position determined by vehicle's controller 212-1 based on sensor 206 and (ii) the lane marker position determined by the adjacent vehicle. Further, in some examples, controller 212-1 determines the collision probability for the adjacent vehicle based on data collected from other sources such as: sensor 206, e.g., distance detector sensor 206-1; and / or one or more other sensors of the vehicle; a roadside unit communicating with communication module 220-1 via V2I communication; and / or one or more remote servers communicating with communication module 220-2.
[0171] In some examples, controller 212-1 determines the collision probability based on the takeover time for the adjacent vehicle and / or the collision time of the adjacent vehicle. For example, the takeover time corresponds to the duration between (1) the adjacent vehicle issuing a request for performing a manual takeover and (2) the operator of the adjacent vehicle manually taking over control of the adjacent vehicle. Controller 212-1 is configured to determine the takeover time for the adjacent vehicle based on the measured characteristics of the adjacent vehicle (e.g., speed, acceleration, size, etc.), the operator of the adjacent vehicle (e.g., measured reaction time, etc.) and / or the environment of the adjacent vehicle (e.g., road conditions, weather conditions, etc.). Additionally, the collision time corresponds to the time required for the adjacent vehicle to collide with another vehicle (e.g., a third vehicle) and / or an object (e.g., a guardrail, a highway lane divider, etc.) if current conditions remain unchanged.
[0172] Additionally or alternatively, the controller 212-1 is configured to determine the time-to-collision of an adjacent vehicle based on speed, acceleration, direction of travel, distance to an object, steering angle required to avoid the object, rate of change of the steering angle, and / or other measured characteristics of the adjacent vehicle collected by the communication module 220-1 from an adjacent vehicle via V2V communication. Further, the controller 212-1 is configured to determine the probability of collision for the vehicle based on the probability of collision for the adjacent vehicle.
[0173] Upon determining the probability of collision of an adjacent vehicle and determining that the probability of collision does not meet a threshold, the autonomous unit 208-1 autonomously performs (e.g., for ADAS) defensive driving maneuvers to prevent the vehicle from being involved in a collision caused by the adjacent vehicle. For example, the autonomous defensive driving maneuvers include decelerating, emergency braking, changing lanes, changing position within the current travel lane, etc. In some examples, the autonomous unit 208-1 is configured to initiate the defensive driving maneuvers before the takeover time of the adjacent vehicle is complete. That is, the controller 212-1 is configured to cause the autonomous unit 208-1 to perform the defensive driving maneuvers before the operator of the adjacent vehicle manually takes over control of the adjacent vehicle. Further, in some examples, the controller 212-1 issues audio, visual, tactile, and / or other alerts (e.g., via the HMI unit 204) to cause the vehicle operator to request manual takeover in response to determining that the probability of collision is less than a first threshold and greater than a second threshold. By issuing such alerts, the controller 212-1 enables the vehicle operator to safely control the vehicle before the adjacent vehicle may be involved in a collision. Additionally or alternatively, the controller 212-1 is configured to perform other defensive measures (e.g., pre-filling the brake fluid line) in response to determining that the probability of collision is greater than a threshold (e.g., the second threshold, the third threshold).
[0174] The communication module uses vehicle-to-network (V2N), vehicle-to-infrastructure (V2I), vehicle-to-vehicle (V2V), vehicle-to-cloud (V2C), vehicle-to-pedestrian (V2P), vehicle-to-device (V2D), vehicle-to-grid (V2G) communication systems to enable in-vehicle communication, communication with other vehicles, infrastructure communication, grid communication, etc. The system then notifies nearby or surrounding vehicles or vehicles communicating with the vehicle's communication module. The vehicle uses, for example, a messaging protocol such that messages are delivered via broadcast to other vehicles.
[0175] In one embodiment, a connection is established between the host vehicle and nearby vehicles / user equipment. The control system of the host vehicle detects nearby vehicles. Nearby vehicles / user equipment are detected by exchanging handshake signals. Handshaking is an automated process for negotiating the establishment of a communication channel between entities. The processor transmits a start signal through the communication channel to detect nearby vehicles / user equipment. If there are nearby vehicles / user equipment, the processor may receive an acknowledgement signal from the nearby vehicles / user equipment. When the acknowledgement signal is received, the processor establishes a secure connection with the nearby vehicles / user equipment. The processor may receive signals from the nearby vehicles / user equipment at the communication module. The processor may further automatically determine the source of the signals. The processor communicatively connects the communication module to the nearby vehicles / user equipment. Then, the processor is configured to send messages to and / or receive messages from the nearby vehicles / user equipment. The signals received by the communication module may be analyzed to identify the source of the signals, thereby determining the location of the nearby vehicles / user equipment.
[0176] In one embodiment, the system enables two-way communication. The system or vehicle sends a signal and then receives a signal / communication from nearby vehicles / user equipment. As a first step in the method according to the present disclosure, a data link is established between the vehicle and an external device to allow data to be exchanged between the vehicle and the external device in the form of two-way communication. This may be done, for example, via a radio link or a data cable. Thus, the external device may receive data from the vehicle, or the vehicle may request data from the external device.
[0177] In one embodiment, two-way communication includes means for data collection and is designed to exchange data with each other bidirectionally. Additionally, at least the vehicle includes logical means for collecting data and arranging it into a specific protocol according to the protocol of the receiving entity. Initially, during handshaking, a data link for two-way communication is established. The vehicle and the external device may communicate with each other through this data link to request or exchange data, where the data link may be implemented, for example, as a cable link or a radio link.
[0178] Two-way communication has various advantages as described herein. In various embodiments, data is communicated and transmitted at appropriate intervals, including, for example, 200 milliseconds (ms) intervals, 100 ms intervals, 50 ms intervals, 20 ms intervals, 10 ms intervals, or even more frequently and / or in real-time or near real-time, to allow the vehicle to respond or otherwise react to the data. Two-way communication can be used to facilitate data exchange.
[0179] The two-way communication device for a vehicle in this embodiment may employ a personal area network (PAN) modem. Thus, the user can access external devices through the vehicle information terminal and can store, move, and delete data as required by the user.
[0180] In one embodiment, a vehicle can transmit messages over a communication link. It can use any combination of vehicle-to-vehicle (V2V), vehicle-to-everything (V2X), or vehicle-to-infrastructure (V2I) types of communication. In one embodiment, it uses vehicle-to-vehicle (V2V) communication to enable vehicles to wirelessly exchange information (communicate), such as information about a vehicle's speed, position, and heading.
[0181] In one embodiment, the messaging protocol includes at least one of the Advanced Message Queuing Protocol (AMQP), Message Queuing Telemetry Transport (MQTT), Simple (or Streaming) Text-Oriented Messaging Protocol (STOMP), MQTT-S (an extension of Open Publish / Subscribe MQTT), which are widely used in Internet of Things-based technologies and edge networks.
[0182] In one embodiment of the system, the host vehicle is capable of establishing communication with an external device via a communication module to obtain information about the current state, where the state includes traffic conditions, road conditions, weather conditions, etc. In one embodiment of the system, information is obtained through the vehicle's sensors, and the vehicle's sensors use accelerometer sensors, GPS, Inertial Measurement Unit (IMU), lidar, radar, and cameras.
[0183] In one embodiment of the system, the communication between the host vehicle and nearby vehicles is carried out via vehicle-to-vehicle (V2V) communication. In one embodiment of the system, V2V communication is based on a wireless communication protocol and uses at least one of Dedicated Short Range Communications (DSRC) and Cellular Vehicle-to-Everything (C-V2X) technologies. In one embodiment of the system, the communication between the host vehicle and nearby vehicles is carried out via an Internet connection.
[0184] Figure 3 A block diagram of a system and its components for detecting unstable vehicles, predicting collision probabilities, and recommending avoidance actions according to one embodiment is shown. System 300 includes a processor 302, a monitoring module 304, an unstable vehicle detection module 306, a memory 308, a communication module 310, a data collection module 312, a collision likelihood analysis and avoidance action recommendation module 314, an alarm signal / message generation module 316, and a display module 318.
[0185] The processor 302 can be a high-performance, multi-core CPU or a system-on-chip (SoC) solution for processing a large amount of data from various sensors that may be used or present in a vehicle. It processes a large amount of data from sensors (e.g., cameras, lidar, radar, and other inputs) to make real-time decisions, provide recommendations, and execute control actions for the vehicle. The graphics processing unit (GPU) is also utilized for its ability to accelerate tasks such as image and sensor data processing. Some vehicles may employ field-programmable gate arrays (FPGAs) to efficiently perform specialized computations, while other vehicles may utilize application-specific integrated circuits (ASICs) to optimize functionality. The choice of processor is based on factors such as the vehicle's autonomy level, processing requirements, power consumption, and thermal considerations. The processor, also known as the central processing unit (CPU), is the heart and brain of any computer or electronic device capable of executing instructions. The function of the processor is to process data and perform computations, etc. At the core of processor operation is data processing, where they perform arithmetic and logical operations on data stored in memory. The CPU executes instructions (which are a specific set of operations encoded in machine language) to perform various tasks. The control unit, either internal to the processor or interacting with the processor, manages and coordinates the execution of instructions, fetches instructions from memory, decodes them, and instructs the appropriate components to execute the instructions. To ensure a controlled and orderly flow of tasks, the processor uses an internal clock to generate regular electrical pulses to synchronize its operations through clock cycles. The processor supports a multitasking environment and can quickly switch between different tasks of executing various applications. Additionally, the processor can cooperate with the operating system to manage virtual memory, allowing programs to access more memory than physically available and effectively managing memory usage. The processor can integrate security features, including hardware-level encryption, memory protection, and support for a secure execution environment, thereby enhancing the security of the system against potential threats. The processor can run complex algorithms and artificial intelligence (AI) software to analyze sensor data, detect obstacles, interpret the environment, and help make decisions to navigate the vehicle. The high-performance capabilities and parallel processing of the processor help ensure that the vehicle can quickly and accurately sense and respond to its surrounding environment. In one embodiment, the processor can be a neuromorphic processor inspired by the human brain, which provides a unique approach to processing AI tasks. The processor interacts and exchanges data with one or more other components or modules of the system, such as the monitoring module 304, the unstable vehicle detection module 306, the memory 308, the communication module 310, the data collection module 312, the collision likelihood analysis and avoidance action recommendation module 314, the alarm signal / message generation module 316, and the display module 318, as Figure 3 shown.
[0186] The monitoring module 304 includes various sensors that are configured to monitor the surrounding environment for the presence of erratic vehicles, any deviation from normal traffic flow, and any other hazardous situations. The monitoring module for detecting erratic vehicles or deviations from normal traffic in the host vehicle includes multiple components and employs artificial intelligence / machine learning (AI / ML)-based algorithms for accurate analysis. These components include sensors and interact with the processor 302 and the communication module 310 to decide or determine erratic vehicles. The sensors (e.g., cameras, lidar, radar, and inertial measurement units) are strategically placed on the host vehicle to capture real-time data about its surrounding environment. These sensors generate a continuous stream of information that is then processed by the processor. Advanced algorithms (typically involving computer vision, machine learning, and sensor fusion techniques) are used to analyze the data and identify patterns indicating erratic behavior or deviation from standard traffic norms. The monitoring process involves continuously collecting and updating information from the sensors, extracting relevant features, and feeding this data into the algorithms. These algorithms are trained to recognize various scenarios, including sudden acceleration, rapid lane changes, or inconsistent speed patterns. The decision-making unit interprets the results and determines an appropriate response based on the severity of the detected deviation. The communication interface enables the monitoring module to alert the vehicle driver via visual or auditory cues and also communicate with other vehicles or a central traffic management system, thus facilitating a coordinated response to ensure overall road safety. This comprehensive monitoring and detection approach enhances the host vehicle's ability to proactively respond to potential hazards and contributes to improving the overall safety and efficiency of the traffic ecosystem.
[0187] In one embodiment of the system, the configuration of the vehicle is determined by a computer vision module that includes an artificial intelligence engine, where the artificial intelligence engine includes machine learning algorithms. In one embodiment of the system, when an erratic vehicle or deviation from normal traffic is observed, the system can activate the camera of the computer vision module to record the surrounding environment of the vehicle. In one embodiment, various sensors strategically located inside and on the vehicle can be used to detect the size and shape of an erratic vehicle.
[0188] Adaptive Scanning Algorithm / Dynamic Scanning Algorithm: An adaptive scanning algorithm can be implemented to efficiently monitor for unstable vehicles or other deviations from normal traffic patterns in the surrounding environment while saving power. The algorithm involves adjusting the scanning frequency based on the current traffic conditions and the likelihood of encountering unstable behavior. The system will start with an initial low to medium scanning frequency to capture general traffic information. The system sets a low-power mode to save energy during periods of expected low activity. In one embodiment, the system can operate through dynamic frequency adjustment. The system will continuously analyze the processed data to evaluate the current traffic normality level. If the system detects a deviation or identifies potential unstable behavior, it will dynamically increase the scanning frequency to obtain more detailed information in real-time. Conversely, the system will decrease the scanning frequency during periods of stable and predictable traffic to save power.
[0189] The system will utilize machine learning algorithms for traffic pattern analysis to identify typical traffic patterns at different times of the day, different days of the week, or specific road conditions. It will adjust the scanning frequency based on historical patterns to optimize power consumption without compromising safety.
[0190] The system implements hierarchical sensor activation, where different sensors are activated in a hierarchical manner based on the urgency of the situation. The system can use low-power sensors for initial scanning and selectively activate high-power sensors when potential unstable behavior is detected. The system will implement an adaptive power management strategy to balance the need for real-time monitoring and energy conservation. It allows the system to enter a low-power mode during inactive periods or when the likelihood of detecting unstable behavior is low. In one embodiment, the system will incorporate feedback from the primary vehicle driver to adjust the scanning parameters. For example, if the driver activates the turn signal or changes lanes, the system may temporarily increase the scanning frequency to ensure safety during the maneuver. The adaptive scanning method allows the monitoring module to respond to changing conditions and ensure a balance between safety and energy efficiency.
[0191] Machine learning models utilize historical traffic data to identify patterns of normal driving behavior. The models analyze data at specific times of the day, specific days of the week, or seasonal variations to establish baseline expectations. Machine learning models are trained to recognize normal driving patterns and predict the likelihood of erratic behavior. These models incorporate features such as time of day, traffic density, weather conditions, and road type to improve the accuracy of the model. The ML model takes real-time traffic conditions as input, continuously monitors real-time traffic conditions, and adjusts the scanning frequency based on the current level of congestion and traffic flow. Higher traffic density or congested conditions may increase the likelihood of erratic behavior. The ML model uses sensor fusion and integrates data from multiple sensors (e.g., cameras, lidar, radar) to gain a comprehensive understanding of the environment and evaluate the consistency of information from different sensors, thereby identifying situations where erratic behavior is most likely to occur. Rapid lane changes, sudden accelerations, or frequent use of brakes can indicate the presence of erratic behavior nearby. The ML model may consider compliance with traffic rules and the impact of road infrastructure. For example, in areas with clear traffic regulations and infrastructure, the likelihood of erratic behavior is lower compared to areas with less regulation or complex road environments. The ML model can consider environmental conditions such as weather (e.g., heavy rain, heavy snow) and visibility, under which the likelihood of erratic behavior is greater, and thus adjust the scanning frequency. Additionally, the ML model can implement a system that allows vehicles to share information about detected anomalies or erratic behavior. Collaborative data sharing among vehicles can enhance the overall understanding of the road environment and improve the accuracy of anomaly detection. When such information about erratic behavior is received, the scanning frequency is dynamically adjusted when approaching or near that location. The ML model is trained with data and then used with real-time data to predict erratic behavior. The data can also include road type, traffic conditions, historical data of roads and intersections where such behavior is commonly observed, e.g., historical data of erratic behavior, types of accidents caused by erratic behavior, etc. When approaching roads where erratic behavior is more frequent than elsewhere, the model automatically and adaptively adjusts the scanning frequency.
[0192] For example, if the vehicle is stuck in traffic and identifies erratic behavior by the driver of the vehicle or an unstable vehicle, the system begins scanning the surroundings. In one embodiment, the system determines a scanning frequency. The trigger for the scanning frequency is based on erratic behavior identified on a particular road, or information from any infrastructure or surrounding vehicles about the presence of an unstable driver in a particular area. Once the host vehicle receives such a message, the system will determine the monitoring frequency based on the location and direction of travel of the host vehicle; if the unstable driver happens to be two miles away and not near an unstable driving area, the scanning frequency may remain the same or increase. In one embodiment, the system ensures that the host vehicle is not traveling in that direction. If the host vehicle happens to continue monitoring the frequency, the monitoring frequency may change based on the location of the unstable driver. An unstable driving position or area can be a triggering factor because the driver of the host vehicle, especially in an electric vehicle, does not want to waste power.
[0193] Once it is determined that an unstable entity is present within the geographic range of the host vehicle, the artificial intelligence module determines a scanning frequency for details of the unstable vehicle, such as the location and trajectory of the unstable vehicle. In one embodiment, the host vehicle collects information about other nearby vehicles by receiving data about the direction in which the unstable driver is traveling. This information enables the host vehicle to make an intelligent decision to choose an alternative route or receive guidance from other vehicles so that it can continue along the same route.
[0194] In one embodiment, the host vehicle detects and identifies unstable behavior and transmits the information to other vehicles. In one embodiment, the system adjusts the scanning frequency based on the surrounding environment. In one embodiment, the system provides mitigation strategies / avoidance strategies to avoid collision or contact with the host vehicle. The system predicts the probability of a vehicle colliding with an unstable vehicle and provides an impact score or risk score based on the type of unstable vehicle and nearby cars. For example, in a collision situation, an unstable SUV with other small vehicles around may cause a large impact to a smaller vehicle.
[0195] When driving on the road, you may come across a serious vehicle pursuit involving an erratic driver, and it is often difficult to realise this situation until you find yourself in the middle of one. The unpredictable nature of vehicle pursuits and erratic driving creates risk and uncertainty about what action to take. In these scenarios, the potential for an accident with an erratic driver is a real concern. Erratic driving can be a deliberate action or it can be the result of a health issue with the driver.
[0196] The system optimizes the scanning process by determining the scanning frequency. Since scanning consumes energy, it is important to maintain a balance and avoid unnecessary scanning. The system should intelligently evaluate the necessity of scanning based on the current situation. For example, if there are no other drivers on the road, scanning may not be required. The system should be able to discern traffic conditions and dynamically adjust the scanning frequency. The system takes into account the predetermined route, monitors the current geographical area, and the next two or three miles. In scenarios where unstable driving is more likely, such as in densely populated downtown areas or at specific times like late at night, the system should automatically increase the monitoring frequency.
[0197] If the host vehicle is the only vehicle on the road, such as on a highway, the scanning frequency is reduced. However, this reduction may depend on the traffic conditions. In case of traffic congestion, the frequency must be temporarily increased to identify any driver exhibiting unstable behavior (such as weaving in and out of lanes). This approach ensures adaptability to various scenarios where drivers tend to maneuver their vehicles unpredictably (e.g., on two-lane, four-lane, one-way roads).
[0198] In one embodiment, the system determines the monitoring frequency and takes subsequent actions when unstable behavior is identified. In one embodiment, the system determines the optimal frequency for monitoring. Once the frequency is determined, the process involves using various sources of information. This includes monitoring traffic reports and using sensors to detect V2X (vehicle-to-everything) signals.
[0199] The system relies on data from sources such as traffic reports and other internal parameters to continuously monitor the surrounding environment at a specified frequency. When a situation requiring attention is identified, the system dynamically changes to a higher monitoring frequency and issues a warning about the unstable driver to encourage the user to take evasive actions and suggest alternative routes.
[0200] Unstable vehicle detection module 306: The system is operable to identify unstable behavior and unstable vehicles. The system can utilize data from various sources, such as host vehicle sensors, traffic cameras, mobile applications (e.g., Maps), etc. The AI / ML module is trained to recognize unstable driving behaviors from a series of patterns that deviate from the norms and safe behaviors on the road. Signs of unstable driving typically include sudden and unexplained acceleration or deceleration, sharp and unpredictable lane changes without signaling, and significant changes in speed. Tailgating or closely following other vehicles poses a significant risk, as does not using a turn signal when maneuvering the vehicle. Ignoring traffic signs and signals, combined with aggressive driving actions such as road rage and tailgating, are also characteristics of unstable behavior. Inconsistent steering, drifting between lanes, and frequent and unnecessary braking are additional indicators. Unstable driving at intersections, driving on the shoulder or median, and signs of fatigue driving (such as sudden steering or inconsistent speed) further contribute to the scope of unstable driving patterns. Identifying these behaviors is crucial for identifying unstable driving. In one embodiment, an artificial intelligence and machine learning (AI / ML) module is used to analyze the behavior of drivers on the road and predict unstable vehicles.
[0201] According to one embodiment, the system determines when to scan and adjust the frequency of scanning the surrounding environment, and when to slow down. In one embodiment, the scanning frequency is adjusted based on the geographical area or the contact area. For example, once the host vehicle enters within two miles of the identified unstable vehicle, the scanning frequency increases.
[0202] Figure 4 An unstable vehicle detection module 430 with various metrics for detecting unstable behavior according to one embodiment is shown. The system can detect patterns indicating unstable behavior. Parameters that can be observed to determine unstable behavior include sudden acceleration or deceleration 402, sharp or unpredictable lane changes 404, excessive speed changes 406, tailgating 408, not signaling 410, ignoring traffic signs and signals 412, overly aggressive driving 414, inconsistent steering or drifting 416, frequent and unnecessary braking 418, unstable maneuvers at intersections 420, driving on the shoulder or median 422, signs of fatigue driving 424, excessive use of the horn 426, etc. The system will increase the scanning frequency when the unstable behavior signs are first detected. Additionally, based on the changes over time of the above parameters in the target vehicle state, the sampling or scanning frequency is increased and adjusted accordingly. The system uses a monitoring module 304 (as Figure 3 shown), which includes an imaging sensor, a proximity sensor, a radar, etc. Radar, lidar, and other sensors appropriately configured and positioned on the vehicle can be proximity sensors capable of detecting nearby objects, vehicles, etc.
[0203] In one embodiment, a millimeter-wave radar sensor can be used to detect nearby vehicles, obstacles, etc., especially when the nearby vehicles and obstacles have sufficient reflective surfaces (e.g., metal components). The millimeter-wave radar sensor works by emitting electromagnetic waves in the millimeter-wave frequency range and then measuring the time required for the wave to bounce back after hitting an object. The radar sensor can analyze the reflected signal to detect and track objects near the vehicle.
[0204] According to one embodiment, AI-based unstable behavior detection can be used in combination with sensor fusion technology. Several AI algorithms can effectively detect patterns indicating unstable behavior in traffic. A commonly used algorithm is the Long Short-Term Memory (LSTM) network, which is a type of Recurrent Neural Network (RNN) suitable for sequence modeling. The LSTM can analyze the sequential patterns of a vehicle's movement over time to identify sudden accelerations, sudden lane changes, or irregular speed fluctuations. Another algorithm is k-Nearest Neighbor (k-NN), which measures the similarity of a vehicle's behavior to that of its neighboring vehicles. A sudden deviation from the typical behavior of nearby vehicles may trigger an alarm. Additionally, decision tree-based algorithms (e.g., Random Forest) are good at classifying complex patterns. These algorithms consider various features such as speed, acceleration, and lane positioning to distinguish unstable behavior. Machine learning models trained using supervised learning techniques (such as Support Vector Machine (SVM)) learn from labeled examples of normal and unstable behavior to classify new instances. These algorithms are trained and operable to identify subtle patterns and anomalies in a vehicle's trajectory for real-time detection of unstable behavior on the road.
[0205] The memory 308 can be a non-volatile memory (NVM), which is crucial for the reliable operation of the system and can ensure that important data is saved even during power outages or failures. Various NVM technologies can be used, such as flash memory for storing the operating system and software, EEPROM for retaining configuration data, calibration values, and sensor settings, ferroelectric RAM (FRAM) for critical real-time information, and emerging technologies like ReRAM, which potentially improves performance due to its high-speed operation and low power consumption.
[0206] In one embodiment, the memory can be cloud memory. In another embodiment, the memory can be local memory. In yet another embodiment, the memory can be a combination of local memory and cloud memory. Local memory refers to the traditional memory components present in a physical device, such as a computer's RAM, hard disk drive (HDD), or solid state drive (SSD). Local memory provides fast access to data and is directly connected to the device, making it suitable for immediate processing tasks and offline use. On the other hand, cloud memory relies on remote servers and services provided by a third-party cloud provider to store and manage data over the Internet. The system can access its data from anywhere with an Internet connection, enabling seamless collaboration and scalability. Cloud memory is typically used for storing large amounts of data, enabling data sharing, and providing backup and disaster recovery solutions. The combination of local memory and cloud memory allows for flexible and efficient management of data to meet the different needs of the system.
[0207] The function of communication module 310 is similar to that of communication module 220 described in this application. Additionally, communication module 310 facilitates communication between different modules within the system and communication between vehicles on the road. Figure 2 Moreover, communication module 310 facilitates communication between different modules within the system and communication between vehicles on the road.
[0208] Various communication protocols can be employed to transmit messages. and is suitable for short-range communication, while cellular communication using 3G, 4G, or 5G networks allows for data transmission over longer distances. The V2X protocol includes V2V and V2I communication, enabling vehicles to share data with each other and with infrastructure units. DSRC is designed specifically for V2V and V2I scenarios and facilitates short-range communication. The choice of communication protocol depends on factors such as range, data transmission rate, power consumption, security, and existing infrastructure.
[0209] Data collection module 312: The data collection module collects and stores user data, vehicle data, sensor data, road data, route data, etc. User data can be collected from any device owned or used by the user. Permission may be obtained in advance to access such data or parts of it. In one embodiment, the vehicle system can synchronize with other devices of the user to access the data. User data can include name, address, home address, office address, friends, preferred routes, etc.
[0210] According to one embodiment, the system collects vehicle data. Understanding driver behavior and driving conditions is very important for improving overall safety and the driving experience. To gain in-depth insights into these aspects, several types of vehicle data can be collected and analyzed. Driving distance, driving route, braking stops, and acceleration data can provide insights into driver habits and their impact on energy consumption. Identifying inefficient driving patterns allows for targeted improvements to maximize the vehicle's safety margin, thereby enhancing safety. Data on driving patterns and habits, including acceleration, braking, and steering behavior, provides valuable information about driver style and aggressiveness. Driving behaviors such as aggressive driving, rapid acceleration, and excessive braking can all help determine the safety margins for a driver under specific road and traffic conditions.
[0211] Additionally, sensors associated with the vehicle can collect data on weather conditions, road surface, and visibility, thus revealing how external factors affect driver behavior, driving distance, and safety. According to one embodiment, the road surface condition is determined by a map showing the weather conditions. According to one embodiment, the road surface condition is determined by a computer vision module detecting the road condition in real time. According to one embodiment, the road surface condition is determined by analyzing the scattering of transmitted light beams on the road surface using filtering techniques on images captured by the computer vision module. According to one embodiment, the road surface condition is received via vehicle-to-infrastructure (V2I) or vehicle-to-vehicle (V2V) communication.
[0212] Speed and position data combined with GPS information provide a comprehensive view of the vehicle's movement and speed profile, helping to understand driving conditions. Additionally, vehicle performance data (such as engine performance and fuel efficiency) allows for an assessment of how a driver's behavior affects the vehicle's health, safety, and overall performance. In some embodiments, driver biometric data (such as eye movement and heart rate) can be collected to evaluate the attention and emotional state under different driving conditions. In one embodiment, the various vehicle data sets provide valuable insights into driver behavior, the impact of external factors on driving conditions, and areas for improvement to enhance vehicle safety. A cybersecurity module provides privacy and security measures for the data. By collecting and analyzing these different vehicle data sets and user data sets, the system can gain a comprehensive understanding of how driver behavior and driving conditions affect vehicle safety.
[0213] Collision probability analysis and avoidance action recommendation module 314: By using data from the monitoring module 304, the unstable vehicle detection module 306, and the data collection module 312, the collision probability analysis and avoidance action recommendation module 314 will first determine the collision probability and recommend avoidance actions accordingly.
[0214] The components of the collision likelihood analysis module include a continuous monitoring module, an unstable vehicle identification module, a dynamic model module, a relative motion calculation module, a proximity assessment module, a relative speed analysis module, a trajectory prediction module, a trajectory intersection check module, a safety threshold module, a collision probability assessment module, a warning intervention trigger module, and a continuous monitoring and adaptation module. Together, they form a collision prediction system that can evaluate and respond to the dynamic environment on the road, especially in the presence of unstable vehicle behavior.
[0215] Continuous monitoring module: To predict the likelihood of collisions between the host vehicle and surrounding vehicles and unstable vehicles when there are unstable vehicles on the road, the system continuously tracks the positions and speeds of all vehicles, paying particular attention to identifying unstable vehicles based on their unpredictable behavior. Continuous monitoring can be performed by the monitoring module 304.
[0216] Unstable vehicle identification module: The system identifies unstable vehicles based on abnormal or unpredictable vehicle behavior. This may include sudden lane changes, sudden acceleration or deceleration, or unstable steering. Unstable vehicles can be identified by the unstable vehicle detection module 306.
[0217] Dynamic model module: This module contains a dynamic model for predicting the future positions and speeds of all vehicles. The model takes into account the current state of each vehicle within a region or zone and estimates how the current state will change over time. The system can also include regression scenarios based on variables that may affect collisions. In one embodiment, the dynamic model module can include a dynamic model and a regression model, and their outputs are weighted and combined.
[0218] Relative motion calculation module: In one embodiment, the relative motion calculation module calculates the relative motion between each non-unstable vehicle and the unstable vehicle. This involves determining the differences in position and speed.
[0219] Proximity assessment module: Then, the proximity between the host vehicle and each non-unstable vehicle and the unstable vehicle is calculated, and their relative speeds are evaluated by the proximity assessment module. The system assesses the proximity between vehicles by considering the relative distance and the time required for the vehicles to reach each other. A rapidly decreasing proximity may indicate an impending collision.
[0220] Relative speed analysis module: This module analyzes the relative speeds of the vehicles. A high relative speed indicates an increased likelihood of collision, especially when the speed of the unstable vehicle is significantly faster or slower than the surrounding vehicles.
[0221] Trajectory Prediction Module: This module predicts the future trajectories of each vehicle within a certain proximity based on the current state and speed of the vehicle. This involves inferring the future paths of each vehicle. The module uses predictive analytics and aims to predict the future state of a vehicle based on its current position, speed, and behavior. It involves modeling the movement of the vehicle over time to predict its future position, using kinematic and / or dynamic models to capture the movement of the vehicle. Kinematic models focus on position and speed, while dynamic models consider other factors such as acceleration and steering. The system iteratively updates the prediction in real time, considering the current state of the vehicle and its predicted trajectory. Trajectory prediction involves estimating the future path that a vehicle will follow based on its current state and dynamics. The module uses dynamic models to simulate the behavior of the vehicle over a short time horizon to predict its future position at discrete time steps, while considering the impact of control inputs. The system also takes into account the uncertainties due to sensor noise, road conditions, or unexpected events. In one embodiment, a feedback loop is established where the predictive analytics informs the dynamic model, and the trajectory prediction is fed into the collision assessment. The prediction is continuously refined based on real-time sensor data to adjust the dynamic model parameters as needed. In one embodiment, the system is integrated with machine learning algorithms to learn from historical data, thereby improving the accuracy of the prediction model and trajectory prediction.
[0222] Trajectory Intersection Check Module: In one embodiment, this module checks whether the predicted trajectories of unstable vehicles intersect or are close to those of other vehicles. If the trajectories are predicted to intersect, the trajectory intersection check module will issue a potential collision signal.
[0223] Safety Threshold Module: In one embodiment, a safety threshold is defined in the system and can be adjusted based on road conditions, vehicle type, traffic conditions, and the specific characteristics of the unstable vehicle, where the specific characteristics include the size, weight, and speed of the unstable vehicle.
[0224] Collision Probability Assessment Module: In one embodiment, this module combines the assessment of proximity, relative speed, and trajectory intersection to calculate the collision probability. Then, the likelihood of a collision is evaluated by considering factors such as decreasing proximity, high relative speed, and potential trajectory intersection. Trajectory intersection checking aims to determine whether the predicted paths of different vehicles will intersect in the future, indicating a potential collision. The system compares the predicted trajectories of the unstable vehicle and other nearby vehicles to evaluate whether there is a spatial or temporal overlap between these trajectories. The system evaluates the collision time and spatial proximity. The system evaluates the time required for the predicted trajectories of two vehicles to meet. If this time is too short, e.g., in milliseconds to seconds, it indicates a possible collision. The system evaluates the spatial separation between the predicted trajectories. If they are too close, it can indicate a collision risk. The system continuously updates the trajectory prediction and performs intersection checks as the vehicle state changes.
[0225] Predictive analytics aims to predict the future state of a vehicle based on its current position, speed, and behavior. Predictive analytics involves modeling the movement of the vehicle over time to predict its future position, using kinematic and / or dynamic models to capture the vehicle's motion. Kinematic models focus on position and speed, while dynamic models consider other factors such as acceleration and steering. The system iteratively updates the prediction in real time to account for the vehicle's current state and its predicted trajectory. Trajectory prediction involves estimating the future path that the vehicle will follow based on its current state and dynamics. The system uses a dynamic model to simulate the behavior of the vehicle over a short period of time and predict its future position at discrete time steps, taking into account the effects of control inputs. The system also incorporates uncertainties due to sensor noise, road conditions, or unexpected events. In one embodiment, a feedback loop is established where predictive analytics informs the dynamic model and the trajectory prediction is fed into the collision assessment. The prediction is continuously refined based on real-time sensor data, and the dynamic model parameters are adjusted as needed. In one embodiment, the system is integrated with machine learning algorithms to learn from historical data and improve the accuracy of the prediction model and trajectory prediction.
[0226] Warning or intervention trigger module: If the collision probability exceeds a defined threshold, the module triggers to issue a warning to the driver or activate a collision avoidance mechanism, such as emergency braking, steering intervention, or signaling nearby vehicles.
[0227] Continuous monitoring and adjustment module: The module continuously updates the prediction and assessment as the vehicle moves. It further dynamically adapts the safety threshold based on real-time situations.
[0228] The system continuously monitors and updates the prediction to ensure an adaptive and dynamic collision prediction method on the road. In one embodiment, the logic of the collision avoidance system is integrated into the Advanced Driver Assistance System (ADAS) and autonomous vehicle technologies.
[0229] Predictive analytics estimates the future position of a vehicle based on the current trajectories and speeds of all vehicles. Predictive analytics for collision likelihood analysis integrates real-time data. The model continuously incorporates the latest information on weather conditions, traffic patterns, road conditions, and other relevant factors, ensuring that the prediction can adapt and respond to dynamic driving conditions. The predictive analytics model is constantly learning. As new data emerges, the model may update and improve its predictions, maintaining accuracy over time and adapting to changes in vehicle performance, road conditions, traffic conditions, and various driving patterns. By combining historical data, real-time information, and advanced machine learning techniques, predictive analytics can be used for collision likelihood analysis. This enables the driver to make informed decisions about avoidance maneuvers to avoid potential collisions.
[0230] Provide avoidance action suggestions for the host vehicle through the alarm system. In one embodiment, the host vehicle determines the corrective / avoidance action to be taken. The avoidance action may include leaving the road, changing lanes, reversing, decelerating, accelerating, taking an alternative route, requesting other vehicles to make way for the host vehicle to pass.
[0231] In one embodiment, the host vehicle provides avoidance action suggestions for nearby vehicles. In one embodiment, the host vehicle establishes communication with nearby vehicles. In one embodiment, the host vehicle scans for unstable vehicles and their locations, and transmits messages about the locations and vehicle types to other surrounding vehicles. To enable the host vehicle to understand the situation more accurately, the host vehicle starts scanning to see how many other vehicles can be informed of the situation so that the host vehicle and other vehicles can take corrective actions.
[0232] In one embodiment, the system of the host vehicle predicts a likelihood score of a collision with an unstable vehicle, and based on the score, requests other vehicles to make way for the host vehicle by sending a customized / personalized request message. For example, for a vehicle behind the host vehicle, request it to move six feet backward; for a vehicle in front of the host vehicle, request the vehicle to move six feet forward to make way for the host vehicle to leave the lane. In one embodiment, the information can be forwarded, which means that if all vehicles can communicate with each other, then all vehicles can communicate with each other and can clear the road to avoid congestion and / or potential collisions.
[0233] In one embodiment, swarm intelligence is used to make communication decisions regarding vehicle movement. In one embodiment, swarm algorithms are implemented to manage and mitigate road traffic congestion caused by vehicle instability. Swarm intelligence is a method inspired by collective behaviors observed in nature. The concept originates from swarm intelligence, where decentralized agents (imitating social organisms such as ants or birds) work together to solve complex problems. In the context of current road congestion or driving instability and potential collisions, swarm algorithms aim to optimize traffic flow, prevent or mitigate the situation, and avoid any possible contact with vehicles with unstable behaviors.
[0234] Implementing swarm intelligence requires leveraging communication infrastructure, vehicle-to-everything (V2X) technology, and a computing framework. Additionally, privacy and security issues can be addressed through a cybersecurity module. Swarm intelligence involves collaboration between the host vehicle and other surrounding vehicles on the road to avoid collisions with certain vehicles or certain areas and to avoid potential collisions. The host vehicle is equipped with this function to warn other vehicles of dangerous locations such as unstable vehicles, fog, or black ice, and to report the current speed limit.
[0235] Swarm intelligence includes the following steps:
[0236] (i) Decentralized decision-making: Each vehicle on the road acts as an autonomous swarm agent capable of communicating with nearby vehicles. The agents make decentralized decisions based on local information such as vehicle speed, distance to neighboring vehicles, and traffic conditions.
[0237] (ii) Traffic flow monitoring and information sharing: Vehicles share real-time information about their current location, speed, and intended direction with nearby vehicles. Communication can be carried out through vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2I) technologies.
[0238] (iii) Dynamic route optimization: Swarm algorithms identify congested areas or potential congestion areas by analyzing collective data. Vehicles dynamically adjust their routes in response to real-time traffic conditions to more evenly distribute the traffic load.
[0239] (iv) Event / anomaly detection: The algorithm can identify events such as vehicle chases, high-speed pursuits, erratic driving behavior, proximity of emergency vehicles, and accident areas. The anomaly detection mechanism analyzes the behavior of vehicles based on predefined patterns. Anomaly detection of the main vehicle may be communicated to other vehicles that may be prone to similar situations as the main vehicle.
[0240] (v) Response coordination: If an anomaly occurs (e.g., high-speed chase / vehicle pursuit or erratic driving, etc.), the system triggers a coordinated response. Nearby vehicles receive alerts to clear the road and create a safe passage for the main vehicle / vehicle group to mitigate / avoid the impact of erratic driving.
[0241] (vi) Adaptive speed control: Vehicles adaptively adjust their speed based on information received from swarm intelligence. Adaptive speed control helps keep traffic smooth and efficient, reducing the likelihood of congestion or collisions / contact with erratic vehicles.
[0242] (vii) Coordinated traffic signals: Integration with the traffic signal system allows swarm intelligence to optimize signal timings based on current and predicted traffic conditions. Coordinated signals can help facilitate traffic through intersections more effectively, avoid congestion, and avoid erratic vehicles at the same time.
[0243] (viii) Emergency response integration: The algorithm takes into account emergency vehicles, law enforcement vehicles, gives them priority, and dynamically adjusts the traffic pattern to ensure rapid passage.
[0244] (ix) Learning and adaptation: Swarm intelligence can be assisted by machine learning to adapt and improve the performance of swarm intelligence over time based on historical traffic patterns, historical data, and user behavior. The system can adapt to changing traffic patterns, erratic behavior scenarios, emergencies, and user behavior.
[0245] Increased Contact Area: In one embodiment, the system not only scans for and identifies a single errant vehicle, but also analyzes the presence of other similar vehicles, such as a group of errant vehicles or an errant vehicle being chased by a law enforcement vehicle. The system even scans for erratic behavior from a distance and looks for drivers exhibiting reckless driving. In one embodiment, the system detects multiple vehicles involved in a vehicle chase. In these cases, with each additional chasing vehicle, the contact area (defined as the area of potential impact or collision) expands and the risk increases. When analyzing potential hazards, when multiple vehicles are detected participating around erratic behavior, the contact area of a single vehicle (represented as x) increases. It is worth noting that law enforcement vehicles frequently collide with errant vehicles or other neighboring vehicles when chasing suspects / errant vehicles. Therefore, the system looks for an expanded contact area. Thus, the purpose of the system is not only to detect and identify the erratic behavior of a single vehicle, but also to assess the impact of multiple vehicles in the contact area. The more vehicles involved, the greater the situational challenge. Therefore, the system can not only identify erratic behavior, but also identify the consequences that a larger contact area may cause when multiple vehicles are simultaneously involved in such a situation.
[0246] Alarm Signal and Message Generation Module 316: The alarm signal and message generation module 316 ensures that the host vehicle has the ability to send and receive messages. When a message is received, the vehicle needs the ability to process the message. To process messages received by various vehicle types, the messages can be in a standardized message format. In one embodiment, the length and content of the message can vary.
[0247] In one embodiment, the message includes a notification conveying the presence of an errant vehicle. In one embodiment, the message will also include details such as an alert, the ID of the behaviorally errant vehicle, and a description of the vehicle. At a basic level, the notification will convey the location of the erratic behavior. Additionally, the message may also include that the contact area of the errant vehicle involves not only one vehicle, but multiple vehicles, to allow the host vehicle as well as nearby vehicles to make informed decisions regarding the expanded contact area.
[0248] The message is standardized to facilitate the uniform processing of this information across different vehicle types. In the message passing component, there is a unique message sequence to specify the nature of the message being sent and the exchange content between the host vehicle and its surrounding environment. Two types of communication can occur: one involving the host vehicle and the errant vehicle with which it is interacting, and the other involving neighboring vehicles of the host vehicle.
[0249] In one embodiment, the initial level or first-level notification indicates the presence of a misbehaving driver as a primary alert. This message can be broadcast to all neighboring vehicles. Further messages can also be broadcast, which include various details about the unstable vehicle, such as photos, driver information, vehicle color, type, model, weight category, size category, etc. In a further exchange, the message can also include contact area information to indicate the proximity where the potential danger exists, such as within 50 feet of the position of the unstable vehicle.
[0250] In addition, the system is adaptable to allow subsequent messages to provide more information. For example, if an emergency vehicle joins the situation, a subsequent message can be sent that contains the initial data with additional new details. This dynamic messaging approach ensures continuously enhanced situational awareness.
[0251] In addition to these notifications, there is a separate class of messages dedicated to communication between vehicles. This communication can be integrated into the existing message stack or treated as an independent communication stream. For example, a unique message can convey guidance from one vehicle to another to suggest actions such as moving right, exiting the highway, or adjusting the lateral position. The message will encapsulate relevant information, including the source, nature of the communication, and any other details related to the unstable behavior. Essentially, if your vehicle receives a message from another vehicle, your vehicle can decrypt the content and forward the message, thus having a comprehensive understanding of the information conveyed.
[0252] In one embodiment, messages are exchanged between the host vehicle and nearby vehicles. The message can include information about the type of the unstable vehicle, the size, shape, weight of the unstable vehicle, and the information of the driver of the unstable vehicle. In one embodiment, the message can include visual photos that can be exchanged. In one embodiment, a message indicating a specific course of action is sent. In this communication, the message specifies the direction that the vehicle should bypass to avoid the unstable vehicle. The host vehicle can not only notify the presence of unstable behavior but also forward the images captured by its camera to alert other vehicles.
[0253] In one embodiment, the message is a broadcast sent to all vehicles near the host vehicle to provide a general alert about the unstable behavior. In contrast, when the host vehicle receives a message from a specific other vehicle, it contains not only the initial broadcast message but also other instructions, such as road conditions, surrounding traffic, etc. This personalized message instructs the host vehicle to take a specific action, such as moving right or left, or adjusting the vehicle position by a few feet. Essentially, these messages carry actionable steps provided by the communicating vehicle, confirming that it has information about the current road conditions and environment, which is different from the general broadcast.
[0254] From a broader perspective, if a vehicle has an erratically moving vehicle nearby or on its route, the vehicle's role is not just to receive notifications; it can also have the ability to broadcast information. As part of this mutual communication, vehicles can share other details such as road conditions, proximity to other vehicles, or challenges of driving on difficult roads or with limited maneuvering space. This enhanced interaction between vehicles prompts consideration of the information needed in such situations. Thus, the messaging framework contains comprehensive information, which includes various anti-collision elements. These elements include information about erratic drivers, direction guidance, and actions to be taken or requested of other vehicles. In essence, messages are divided into two aspects: on the one hand, vehicles must be equipped to receive incoming messages, and on the other hand, vehicles are capable of transmitting messages during vehicle-to-vehicle (V2V) and / or vehicle-to-everything (V2X) communication.
[0255] In essence, there will be two parallel communication streams. One involves receiving messages to understand the necessary actions and execute them. The other scenario involves the content of the actual messages themselves. In one embodiment, the content of the messages is standardized, going beyond the specific details of vehicle makes or models. In one embodiment, message communication between vehicles ensures that there is a common protocol for exchanging and decoding information regardless of the vehicle manufacturer.
[0256] In this particular case, the envisioned message structure includes receiving an initial notification, labeled as a level-one message, to indicate the presence of an erratic driver. This message includes details about the location, driver type, and related information, and can come from external broadcasts and the vehicle itself. However, when the message comes from a vehicle, an additional dimension is introduced: the ability to convey direction guidance. This direction guidance can be in response to the actions required of the recipient, such as confirming that a suggested action will be taken, like moving three feet backward or to the right.
[0257] In addition, messages sent by a vehicle can not only prompt specific actions but also provide suggested routes to avoid potential hazards. In such cases, the process of constructing such messages follows the same principles of a standard format. The fundamental goal is to establish a robust messaging framework to meet the needs of receiving and sending relevant information between vehicles in a standardized manner.
[0258] On the other hand, the requested action information is incorporated into a vector net. The vector net can provide direction indicators to specify the necessary route, such as a 30-degree vector, a 180-degree vector, or a 90-degree vector. Including these details in the message sent to nearby vehicles to provide direction information can give the drivers of nearby vehicles clearer information. In one embodiment, the message includes information related to a potential threat caused by an erratic driver, as well as a dedicated / separate section for the specific action requested by the communicating vehicle. This ensures a clear and comprehensive division of different components within the messaging framework.
[0259] According to one embodiment of the system, the message includes a request for a nearby vehicle to move in a specific direction. In one embodiment, the direction is specified as a vector net. According to one embodiment of the system, the evasive actions include requesting a nearby vehicle to adjust the distance from the host vehicle, change lanes, perform a reverse maneuver, and change the route, one or more of which.
[0260] In V2X communication, other vehicles report events. For example, the message states that "on Highway X, a specific vehicle AB 1234 is exhibiting erratic driving behavior". This information is then conveyed to all nearby vehicles to provide a comprehensive real-time understanding of the road conditions.
[0261] In addition, the system also takes into account the presence of emergency vehicles such as ambulances. If these vehicles are approaching the user's vehicle, the system advises the user to be cautious and avoid the area they are entering. The system actively monitors the surrounding environment and alerts the user when an erratic driver or a potential danger is detected. In addition, the system is also capable of suggesting alternative routes to avoid the identified risky situations. The system is operable to avoid contact with erratic drivers, covering various scenarios such as ambulances, police cars, fire trucks, and even reckless drivers or fleeing criminals. The system issues warnings in a timely manner and suggests alternative routes if necessary to help the user take evasive actions.
[0262] In an embodiment of V2X communication messaging, the emphasis is on the system's ability to proficiently receive comprehensive information about erratic drivers. This includes details such as the driver's location, the degree of erratic behavior, and specific vehicle identification, including license plate number and type (e.g., police car, ambulance, SUV, etc.). Erratic behavior can be classified into categories such as mild, moderate, aggressive, potentially dangerous, requiring immediate attention, etc. based on the level of danger it poses. The classification is based on various patterns and severity of erratic driving and the degree of risk posed. The detailed information on erratic driving can be obtained through two main channels: monitoring traffic reports and receiving information directly from other vehicles, whether they are the few vehicles ahead or vehicles that have recently traveled the same route. The system is operable to send and receive messages via V2X messages.
[0263] In one embodiment, the system is operable to send and receive data and subsequent operations. In one embodiment, the system delves into the sending and receiving of information. For example, when a driver exhibiting erratic driving is identified, the system compiles relevant information, such as capturing an image of the vehicle, and then transmits the compiled data to surrounding vehicles via broadcast, with a focus on the actual messaging process. Additionally, the system also has the ability to receive content, including images, license plate numbers, and detailed information about the type of erratic driving, where the type of erratic driving can distinguish, for example, a police vehicle from an erratically driven vehicle, etc.
[0264] Figure 5A Illustrated is the broadcasting of a message to all nearby vehicles upon detection of an erratic vehicle according to one embodiment. After identifying erratic behavior in vehicle 504, the system of the host vehicle 502 can classify the vehicle as an erratic vehicle 504. The system of the host vehicle can trigger an alert signal to the driver on the infotainment system of the host vehicle. In one embodiment, a message can be sent to any user device in the surrounding / nearby vehicles or nearby vehicles. It can automatically broadcast a message to all nearby vehicles within a certain range to notify them of the presence of an erratic vehicle on the route. The message can alert the drivers of nearby vehicles and prompt them to take voluntary actions. Nearby vehicles can include autonomous vehicles, semi-autonomous vehicles, and driver-based vehicles. The host vehicle can automatically discover avoidance actions, where the avoidance actions include one or more of changing lanes, decelerating, pulling over and coming to a complete stop, and changing routes. In one embodiment, a corresponding message is broadcast to the plurality of nearby vehicles. In one embodiment, the vehicle driver performs the recommended avoidance actions. In one embodiment, the recommended avoidance actions are indicated to the vehicle driver using at least one of voice instructions or instructions displayed on the vehicle's display. In one embodiment, the recommended avoidance actions are performed in the autonomous mode of the vehicle. In one embodiment of the system, the system detects nearby vehicles based on at least one of an infrared sensor, an ultrasonic sensor, a radar sensor, a passive acoustic detector array, a piezoelectric sensor, an optoelectronic sensor, and an image sensor. In one embodiment, the message sent to nearby vehicles includes detailed information about the erratic vehicle, where the detailed information includes one or more of the erratic vehicle identification, license plate number, color, size, type, make and model, weight, location, direction of travel, lane number, speed of the erratic vehicle, etc.
[0265] According to an embodiment of the system, the system is operable to broadcast the message. According to an embodiment of the system, the message further includes significant features of the erratic vehicle, wherein the significant features include one or more of bumper stickers, dents, and any special attachments attached to the erratic vehicle. According to an embodiment of the system, the message further includes a request for daisy chain communication to notify other surrounding vehicles within the geographic range or route of nearby vehicles. According to an embodiment of the system, the message further includes an image of the erratic vehicle. According to an embodiment of the system, the message further includes images of the driver of the erratic vehicle and the passengers of the erratic vehicle.
[0266] Figure 5B FIG. shows the broadcasting of a message to a nearby group of vehicles upon detection of an erratic vehicle according to an embodiment. The system of the host vehicle 502 can trigger an alert signal to the driver of the host vehicle on the infotainment system after identifying the erratic vehicle 504 based on erratic behavior. The host vehicle can identify the erratic vehicle based on a 360-degree field of view. Thus, the host vehicle may be ahead of the erratic vehicle and still identify erratic behavior before encountering the erratic vehicle. In one embodiment, the host vehicle 502 can detect the erratic path followed by the erratic vehicle and predict the next segment of the erratic path 506. In one embodiment, based on the current speed, position, and acceleration data of nearby vehicles, the host system can also predict the likelihood of a collision and the possible collision point 508. The host vehicle can automatically broadcast a message to a portion of nearby vehicles or selected nearby vehicles. For example, the system of the host vehicle can automatically alert all vehicles in the same lane and the right lane as the host vehicle, as the erratic vehicle may pass through these lanes and the right lane, and includes a deceleration request. In one embodiment, the possible collision point 508 of the erratic vehicle is based on finding the speed of nearby vehicles and the real-time position of nearby vehicles, and calculating the intersection of the predicted segment of the erratic vehicle path 506 and the predicted paths of nearby vehicles. The message can alert the drivers of nearby vehicles and prompt actions voluntarily taken by the drivers of nearby vehicles, such as reducing speed. Nearby vehicles can include autonomous vehicles, semi-autonomous vehicles, and driver-based vehicles. In one embodiment, nearby vehicles include at least one of cars, trucks, vans, motorcycles, buses, trailers, and construction vehicles. In one embodiment, the vehicle senses the speed of nearby vehicles for determining the possible collision point and sends a message with speed instructions and route instructions to nearby vehicles. In one embodiment, the message is customized for nearby vehicles. In one embodiment, by obtaining the distances between the erratic vehicle, the host vehicle, and nearby vehicles, dedicated short-range communication is used to estimate the speeds required by nearby vehicles. In one embodiment, nearby vehicles are located near the vehicle and within the communication range of the vehicle.
[0267] Figure 5C Illustrated is the sending of a customized message to nearby vehicles upon detecting an unstable vehicle according to one embodiment. When the system of the host vehicle 502 identifies an unstable vehicle 504 based on unstable behavior, an alert signal can be triggered to the driver of the host vehicle on the infotainment system. The host vehicle can identify an unstable vehicle based on a 360-degree field of view. Thus, the host vehicle can be ahead of the unstable vehicle and still identify the unstable behavior before the unstable vehicle approaches. In one embodiment, the host vehicle 502 can detect the unstable path followed by the unstable vehicle and predict the next segment 506 of the unstable path. In one embodiment, based on the current speed, position, and acceleration data of nearby vehicles, the host system can predict the likelihood of a collision and the possible collision point 508. The host vehicle can automatically send a message to a portion of the nearby vehicles or selected nearby vehicles. For example, the system of the host vehicle can automatically alert all vehicles that may encounter the unstable vehicle. In one embodiment, the possible collision point 508 of the unstable vehicle is based on finding the speed of nearby vehicles and the real-time position of nearby vehicles and calculating the intersection of the predicted segment of the unstable vehicle path 506 and the predicted path of the nearby vehicles. The message can alert the driver of the nearby vehicle and prompt an action to be taken by the driver of the nearby vehicle, such as reducing speed. The personalized or customized message includes speed instructions and route instructions for each vehicle, which are calculated based on the position of the nearby vehicle and / or the unstable vehicle path and the possible collision point. In one embodiment, the message is a customized message for each nearby vehicle based on the position of each of the multiple nearby vehicles. In one embodiment, the speed instructions include at least one of decelerating, maintaining speed, accelerating, and coming to a complete stop. In one embodiment, the route instructions include at least one of lane keeping, lane changing, pulling over, and route changing. In one embodiment, the host vehicle is operable to communicate bidirectionally with nearby vehicles. In one embodiment, a message can be sent to a nearby vehicle at time T = t1, and the nearby vehicle can send a message or convey its new speed at time T = t2. Additionally, when the host vehicle finds the nearby vehicle too close and violating a safety threshold at time T = t2, the host vehicle can further communicate with the nearby vehicle in an attempt to further reduce the speed of the nearby vehicle. Thus, the user's vehicle and nearby vehicles can continue to communicate until they maneuver out of the contact area of the unstable vehicle. In one embodiment, the alert signal / message includes at least one of a text message, a display, a sound, a light, and combinations thereof.
[0268] Figure 5DIllustrated is the sending of a message to a law enforcement agency and emergency services when an unstable vehicle is detected. When the system of the host vehicle 502 identifies an unstable vehicle 504 based on unstable behavior, an alert signal can be triggered for the driver of the host vehicle on the infotainment system. In one embodiment, the host vehicle 502 can detect the unstable path followed by the unstable vehicle and predict the next segment 506 of the unstable path. In one embodiment, based on the current speed, position, and acceleration data of nearby vehicles, the main system can also predict the likelihood of a collision and the possible collision point 508. The host vehicle can automatically send a message to a group of nearby vehicles or selected nearby vehicles. For example, the system of the host vehicle can automatically alert all vehicles that may encounter the unstable vehicle. In one embodiment, the possible collision point 508 of the unstable vehicle is based on finding the speed of nearby vehicles and the real-time position of nearby vehicles, and calculating the intersection of the predicted segment of the unstable vehicle path 506 and the predicted paths of nearby vehicles. The message can be a general broadcast message, including an alert about the unstable vehicle or an alert to the drivers of nearby vehicles and a prompt for an action to be taken by the drivers of nearby vehicles, such as reducing speed. Personalized or customized messages include speed instructions and route instructions for each vehicle, which are calculated based on the position of nearby vehicles and / or the unstable vehicle path and possible collision points. When the host vehicle determines that the host vehicle or a nearby vehicle is about to collide with the unstable vehicle, the host vehicle sends a message to one or more nearby law enforcement agencies 520, emergency services 522, and hospitals 524. In one embodiment, when the host vehicle determines that there is an unstable vehicle and the probability of a collision is still low or zero, a message can be sent to one or more of the nearby law enforcement agencies 520, emergency services 522, and hospitals 524. The message can include one or more of the following details of the unstable vehicle: license plate number, make and model, color, location of the unstable vehicle, and direction of travel of the unstable vehicle.
[0269] According to one embodiment of the method, the method further includes sending an alert message about the unstable vehicle to a law enforcement agency. According to one embodiment of the method, the alert message includes one or more of a license plate number, make and model, color, location of the unstable vehicle, and direction of travel of the unstable vehicle. According to one embodiment of the method, the method further includes sending an alert message to the unstable vehicle, wherein the alert message includes a request for a corrective action.
[0270] According to an embodiment of the system, the system also sends an alert message about the erratic vehicle to a law enforcement agency. According to an embodiment of the system, the alert message includes one or more of a license plate number, make and model, color, location of the erratic vehicle, and direction of travel of the erratic vehicle. According to an embodiment of the system, the system also sends an alert message to the erratic vehicle, wherein the alert message includes a request for a corrective action.
[0271] Figure 6 The contact areas around an erratic vehicle according to an embodiment are shown. In one embodiment, the area around an erratic vehicle 604 having or exhibiting erratic behavior is divided into a plurality of areas, such as area 1 shown as 610, area 2 shown as 612, and area 3 shown as 614. The area around the erratic vehicle 604 is divided into a plurality of contact areas, namely, a high contact area (area 1), a medium contact area (area 2), and a low contact area (area 3). As the erratic vehicle 604 moves forward and time elapses, the shape and size of these areas change. According to one embodiment, the contact areas are circular. In one embodiment, the contact area may linearly extend on one side of the vehicle, for example, the right side of the erratic vehicle, as the erratic vehicle appears to quickly move in and out of the right lane. The contact areas may be based on one or more of the erratic behavior pattern of the erratic vehicle 604, the likelihood of a collision occurring in each area, and the presence of a law enforcement vehicle 608 attempting a vehicle pursuit. The contact areas may be defined by a distance measurement in vector form or a radius measurement from the location of the erratic vehicle. In one embodiment, the contact areas are based on the vehicle density around the erratic vehicle. Messages about the emergency and requests communicated from the host vehicle 602 may be targeted at the contact areas and be common to all vehicles in the contact areas. In one embodiment, the message may be targeted at the contact areas and be personalized for the vehicles in the contact areas based on their locations. For example, the messages that vehicles in areas 2 and 3 may receive include the area they are in, actions requesting a change in speed or a change in route, and information about the contact areas. In one embodiment, vehicles outside the contact areas may be warned of their distance from the contact areas and the actions that vehicles outside the contact areas should take to avoid contacting the contact areas. The alert message may include a request or suggestion to change their planned route to a new route to avoid contacting the erratic vehicle.
[0272] According to an embodiment, a display module 318 in a vehicle is connected to the alert system through the vehicle's on-board computer or electronic control unit (ECU). The alert system continuously monitors various parameters related to erratic driving and issues alerts in a timely manner. Then, these warning / alert signals are sent to the display module, which is responsible for displaying important information to the driver on the vehicle's dashboard or instrument panel.
[0273] The connection between the alarm system and the display module is established through the communication network within the vehicle. Modern vehicles use Controller Area Network (CAN) or other communication protocols to transfer data between different electronic components, including the alarm system and the display module.
[0274] Once the warning signal reaches the display module, it activates appropriate visual and auditory alarms to inform the driver about the unstable vehicle. In one embodiment, the display module can generate a pop-up alarm on the infotainment or navigation screen, providing more detailed information about the unstable driving and potential solutions, such as suggesting an alternative route to avoid contact with the unstable vehicle. Additionally, the vehicle can be equipped with a haptic feedback function, and the display module can trigger a haptic alarm, such as a slight vibration on the steering wheel or seat, to provide an additional tactile cue to the driver.
[0275] The integration of the alarm system and the display module ensures that the driver receives timely and accurate information about the status of the unstable vehicle. It enables the driver to make informed decisions and plan the route accordingly to avoid the unstable vehicle. In one embodiment, the message includes generating an alarm in the vehicle, where the alarm is at least one of a text message, a visual cue, an audible alarm, a haptic cue, and a vibration.
[0276] According to one embodiment of the system, the system is operable to determine a contact area generated by the unstable vehicle, where the contact area includes one or more of a group of surrounding vehicles moving at a speed below a threshold speed, a group of surrounding vehicles moving at a speed above the threshold speed, and a group of surrounding vehicles moving within the threshold speed limit. According to one embodiment of the system, the threshold speed is determined based on the speed limit of the route on which the unstable vehicle is traveling and the average speed of the vehicles away from the unstable vehicle. According to one embodiment of the system, the contact area includes one or more vehicles participating in a vehicle chase. According to one embodiment of the system, the message further includes one or more images of the contact area generated by the unstable vehicle, and an area around the unstable vehicle including the contact area.
[0277] According to one embodiment of the system, the message further includes an image of the contact area generated by the unstable vehicle. According to one embodiment of the system, the contact area includes a group of surrounding vehicles moving at a speed below the threshold speed. According to one embodiment of the system, the threshold speed is determined based on the speed limit of the route on which the unstable vehicle is traveling and the average speed of the vehicles away from the unstable vehicle. According to one embodiment of the system, the contact area includes an area in which one or more vehicles participate in a vehicle chase.
[0278] According to an embodiment of the system, the first message further includes an image of the unstable vehicle. According to an embodiment of the system, the first message further includes images of the driver of the unstable vehicle and the passengers of the unstable vehicle. According to an embodiment of the system, the first message further includes one or more images of a first contact area generated by the unstable vehicle. According to an embodiment of the system, the first contact area includes an area in which a group of surrounding vehicles move at a speed of at least one of higher than a first threshold speed and lower than a second threshold speed. According to an embodiment of the system, the threshold speeds are determined based on the speed limit on the route on which the unstable vehicle travels and the average speed of the vehicles away from the unstable vehicle. According to an embodiment of the system, the first contact area includes an area in which one or more vehicles are involved in a vehicle chase.
[0279] Figure 7A Shown is a sent message or communication message sent to nearby vehicles and displayed on the infotainment system of the nearby vehicles according to an embodiment. The sent message or communication message includes generated graphics. When the host vehicle 702 sends an alert message for the identified unstable vehicle 704 to the nearby vehicle 706, the nearby vehicle 706 identifies the message and a position map of the surrounding vehicles including the vehicle 706, and receives the message of the unstable vehicle and the possible heading profile 708. The possible collision point 710 is shown in a graphical format to better understand the surrounding environment of the receiving vehicle. The graphics also show the host vehicle 702, the unstable vehicle 704, the nearby vehicle 706, the possible heading profile 708 of the unstable vehicle, and the possible collision point 710 to provide a clear description of the vehicle's surrounding environment or the traffic around the vehicle. In one embodiment, the nearby vehicle decodes and maps the position message sent by the host vehicle. In another embodiment, the nearby vehicle can use its own sensors to obtain the information required for mapping. In one embodiment, the message is displayed on the infotainment system of the nearby vehicle. In one embodiment, the contact area is also depicted in the graphics.
[0280] According to an embodiment of the system, the system is further operable to display an action to the driver of the host vehicle. According to an embodiment of the system, the system is further operable to display a message to the driver of the nearby vehicle.
[0281] Figure 7B Shown is an example broadcast message when an unstable vehicle is detected according to an embodiment. It may include elements related to the unstable vehicle. To prepare a compact message for communicating the unstable vehicle alert and the details of the unstable vehicle, a binary coding scheme can be used, in which each item is assigned a specific number of bits. The number of bits assigned to each item will depend on the range and precision required for that particular attribute. Figure 7BShows an example field and bit allocation according to one embodiment. In this example, each field in the message has a specific number of bits allocated to it:
[0282] The event type classifies the type of event that the alert is targeted at. The file may use 8-bit characters. The Vehicle Identification Number (VIN) field uses 32 bits (32 characters, each character represented by 8-bit ASCII) to represent the vehicle identification number, which is the unique identifier of the vehicle. The manufacturer uses 48 bits (6 characters, each character represented by 8-bit ASCII) to specify the name of the manufacturer. The model uses 48 bits (6 characters, each character represented by 8-bit ASCII) to specify the model name of the unstable vehicle.
[0283] The unstable vehicle size field uses 8 bits (4 bits for length and 4 bits for width) to represent the size in meters or feet. The unstable vehicle shape field uses 4 bits to represent the shape identifier, where different shape codes can be assigned to various vehicles based on the vehicle's weight and the area occupied on the road (e.g., small, medium, large, etc.). The weight field uses 12 bits to represent the weight of the unstable vehicle in kilograms or pounds to accommodate a range of weight values. The unstable vehicle location field uses 4×4 bits to represent the latitude and longitude location of the unstable vehicle. The unstable vehicle heading uses 16 bits to represent the heading of the unstable vehicle. The time value field uses 32 bits to represent the timestamp in Unix epoch format to indicate the time of message generation. The reserved bits are bits reserved for future use or additional attributes that may be added to the message format later. The reserved bits can also be used for the speed of the unstable vehicle, nearby landmarks, etc.
[0284] The message fields and bit allocation are presented only as examples and assumptions for demonstration purposes. In an implementation, the fields, the actual message format, and the number of bits allocated to each item may vary based on the specific requirements and constraints of the application and communication protocol being used.
[0285] In one embodiment, the message can be customized to include basic information about the unstable vehicle, its identification number, and its location. In one embodiment, the message is similar to the HL7 protocol. In one embodiment, the message sent to nearby vehicles includes an alert signal that requests at least one of a speed instruction and a route instruction from the nearby vehicles. The alert signal includes information about the unstable vehicle. In one embodiment, the message is broadcast to all vehicles.
[0286] According to an embodiment of the system, the system is operable to broadcast the message. According to an embodiment of the system, the message includes the identity of the erratic vehicle, where the identity includes one or more of a vehicle identification number, license plate number, make and model, color, and distinctive features. According to an embodiment of the system, the distinctive features include one or more of bumper stickers, dents, and accessories attached to the erratic vehicle. According to an embodiment of the system, the message includes the location of the erratic vehicle and the direction of travel of the erratic vehicle.
[0287] According to an embodiment of the system, the message further includes a request for daisy-chain communication to notify other surrounding vehicles within the geographical range. Daisy-chain communication refers to communication that occurs in series, one after another. The signal / message sent or broadcast reaches the first group of vehicles within the range of the main vehicle network, and then the first group of vehicles or a subgroup of the first group of vehicles transmits the message to the second group of vehicles, thereby increasing the reach of the message. The message can also be transmitted to the next group of vehicles to ensure that vehicles can receive the message in advance and plan their action routes to avoid the erratic vehicle and the route on which the erratic vehicle is traveling, even if they are far from the actual location of the erratic vehicle.
[0288] According to an embodiment of the system, the message further includes an image of the erratic vehicle. According to an embodiment of the system, the message further includes images of the driver and passengers of the erratic vehicle.
[0289] Figure 7C An example of a message and message content that can be transmitted from a main vehicle to nearby vehicles is shown. In one embodiment, the message is similar to the HL7 protocol. In one embodiment, the message includes one or more fields from the broadcast message as Figure 7B shown and additional information for nearby vehicles under the maneuver request field. It can include the actions that nearby vehicles need to take so that the main vehicle can get out of the path of the erratic vehicle. In one embodiment, it includes actions for nearby vehicles so that the nearby vehicles can avoid contact with the erratic vehicle. In one embodiment, additional information can be sent, which can include road conditions and traffic conditions near the main vehicle.
[0290] Figure 8AShows the structure of a neural network / machine learning model with a feedback loop according to an embodiment. An artificial neural network (ANN) model includes an input layer, one or more hidden layers, and an output layer. Each node or artificial neuron is connected to another node or artificial neuron and has associated weights and thresholds. If the output of any single node is above a specified threshold, the node is activated and sends data to the next layer of the network. Otherwise, no data is passed to the next layer of the network. A machine learning model or ANN model can be trained on a set of data to obtain requests in the form of input data, make predictions on the input data, and then provide a response. The model can learn from the data. The learning can be supervised learning and / or unsupervised learning and can be based on different scenarios and different data sets. Supervised learning includes the logic of using at least one of decision trees, logistic regression, and support vector machines. Unsupervised learning includes the logic of using at least one of k-means clustering, hierarchical clustering, hidden Markov models, and the Apriori algorithm. The output layer can predict an unstable vehicle, the path followed by the unstable vehicle, the likelihood of a collision with a vehicle on the road, and the collision point based on the input data.
[0291] In one embodiment, the ANN can be a deep neural network (DNN), which is a multi-layer cascaded neural network that includes an artificial neural network (ANN), a convolutional neural network (CNN), and a recurrent neural network (RNN), and can identify features from the input, conduct expert reviews, and perform operations that require prediction, creative thinking, and analysis. In one embodiment, the ANN can be a recurrent neural network (RNN), which is a type of artificial neural network (ANN) that uses sequential data or time series data. Deep learning algorithms are typically used to handle sequential or time problems, such as language translation, natural language processing (NLP), speech recognition, and image recognition, etc. Like feedforward and convolutional neural networks (CNNs), recurrent neural networks learn using training data. Their significant feature is "memory" because they obtain information from previous inputs via a feedback loop, thus affecting the current input and output. The output from the output layer in the neural network model is fed back to the model through feedback. When training the model, the adjustment of the weights of the hidden layer(s) will be adjusted to better match the expected output. This will allow the model to make fewer mistakes when providing results.
[0292] The neural network is characterized by having a feedback loop that can dynamically adjust the system output when it learns new data. In machine learning, backpropagation and feedback loops are used to train artificial intelligence AI models and continuously improve them during their use. As the amount of incoming data received by the model increases, the model has more opportunities to learn from the data. The feedback loop or backpropagation algorithm can identify inconsistencies and feed the corrected information back to the model as input.
[0293] Even if an AI / ML model is well-trained with a large amount of labeled data and concept sets, after some time, when new unlabeled inputs are added, the performance of the model may degrade for many reasons, including but not limited to concept drift, a decrease in recall precision due to deviation from true positive drift, and data drift over time. The feedback loop of the model maintains the accuracy of the AI results and ensures that the model can still maintain its performance and continuously improve even when new unlabeled data is absorbed. The feedback loop refers to the process in which the predicted output of the AI model is reused to train a new version of the model.
[0294] AI / ML models can be used in two scenarios: i) to identify unstable behaviors, and ii) to predict unstable vehicle paths and possible collisions and collision points. In one embodiment, different AI / ML models will be built and trained. In one embodiment, the model can be an integrated model that can both identify unstable vehicles and predict the likelihood of collisions and collision points.
[0295] Initially, when training the AI / ML model, some labeled samples containing positive and negative examples of concepts (e.g., unstable behavior patterns and normal behavior patterns, etc.) are used for the model to learn. Afterwards, unlabeled data can be used to test the model. Through the use of, for example, deep learning and neural networks, the model can predict whether the desired output (e.g., whether a vehicle is an unstable vehicle) is within the prediction range. However, in the case where the model returns a low probability score, this input may be sent to a controller (possibly a human arbiter), who will verify and correct the result if necessary. The human arbiter is only used in special cases. The feedback loop dynamically feeds the labeled data verified by automatic labeling or the controller back to the model and uses it as training data so that the system can dynamically improve its judgment in real time. These models can be used at various levels, for example, in image processing for detecting unstable vehicles based on a given series of images.
[0296] Figure 8BShows the structure of a neural network / machine learning model with reinforcement learning capabilities according to an embodiment. The network receives feedback from an authorized network environment. Although this feedback system is similar to supervised learning, the feedback obtained in this case is evaluative rather than instructive, meaning there is no teacher in supervised learning. After receiving the feedback, the network adjusts its weights to make better predictions / identifications in the future. Machine learning techniques (e.g., deep learning) allow the model to obtain labeled training data and learn to identify these concepts in subsequent data and images. New data can be supplied to the model for testing, and thus, training can be enhanced by supplying the model with data that has already been predicted. If the machine learning model has a feedback loop, a reward is given for each true positive of the system's output, further strengthening the learning. The feedback loop ensures that the AI results do not stagnate. By incorporating the feedback loop, the model output remains dynamically improved over time / with use.
[0297] Figure 8C Shows an example block diagram of using a machine learning model to identify unstable behavior and unstable vehicles according to an embodiment. The machine learning model 802 can take as input any data related to unstable vehicles, lanes, other traffic conditions, road conditions, and learn to identify features in the data that predict an unstable behavior output. The training data samples can include, for example, the host vehicle sensor data 804 obtained by observing unstable behavior in the surrounding environment. Some data can be historical data from the host vehicle in similar situations (e.g., similar roads, similar weather conditions, traffic intersections, etc.). Subsequently, this information is used to determine unstable behavior. The systems and methods of the present disclosure can also provide data analysis information, which can be used later to improve the detection of unstable vehicles, predict collisions, and provide avoidance actions.
[0298] In one embodiment, the training data samples can also include context data / information 806 related to the surrounding environment. This can include, for example, the position of the host vehicle, the current weather condition, temperature, time of day, traffic conditions in the area, number of lanes, other obstacles, uphill sections of the road, traffic intersections, etc. The system can also collect context information from devices associated with the vehicle. For example, through applications installed on the device (e.g., online map services, like maps) and location services, the system can learn detailed information about the vehicle. Real-time sensor data can be collected, which can include, for example, video, images, audio, infrared, temperature, 3D modeling, and any other suitable type of data to capture the current state around the vehicle.
[0299] Other data 808 can include data from the primary vehicle sensor data 804 and context data / information 806. For example, the primary vehicle can take a possible route based on home and office addresses accessed from the user device.
[0300] Any of the above types of data (e.g., primary vehicle sensor data 804, context data / information 806, other data 808) can be related to the identification of erratic behavior, and this correlation can be automatically learned by the machine learning model 802. In one embodiment, during training, the machine learning model 802 can process training data samples (e.g., primary vehicle sensor data 804, context data / information 806, other data 808), and based on the current parameters of the machine learning model 802, predict an output 810, where the output 810 can be the identification of an erratic vehicle for a given scenario. The predicted output (i.e., the erratic vehicle) may be based on training data with a label 812 associated with the training data sample 818. In one embodiment, during training, the predicted output can be compared with the training data with the label 812 at 814. For example, the comparison 814 can be based on a loss function that measures the difference between the predicted output and the training data with the label 812. Based on the comparison at 814 or the corresponding output of the loss function, the training algorithm can update the parameters of the machine learning model 802 with the aim of minimizing the difference or loss between subsequent predicted outputs 810 and the corresponding labels 812. By iteratively training in this way, the machine learning model 802 can "learn" from different training data samples and become better at predicting the output 810 to predict erratic vehicles similar to those represented by the training labels at 812.
[0301] Using the training data, the machine learning model 802 can be trained to identify features of the input data that represent or are related to erratic behavior. For example, the trained machine learning model 802 can identify data features that indicate the likelihood of a vehicle being an erratic vehicle. Through training, the machine learning model 802 can learn to identify predictive and non-predictive features and apply appropriate weights to the features to optimize the prediction accuracy of the machine learning model 802. In an embodiment using supervised learning where each training data sample 818 has a label 812, the training algorithm can iteratively process each training data sample 818 and generate a predicted output 810 that is the identification of an erratic vehicle based on an erratic behavior pattern using the current parameters of the machine learning model 802. Any suitable machine learning model and training algorithm can be used, including, for example, neural networks, decision trees, clustering algorithms, and any other suitable machine learning techniques. Once training is complete, the machine learning model 802 can obtain input data from the primary vehicle and output whether the target vehicle is an erratic vehicle.
[0302] Figure 8D FIG. 832 shows an example flowchart of continuously monitoring an unstable vehicle and recommending actions using a machine learning model according to an embodiment. The system can receive real-time data related to the primary vehicle sensors and process the data as shown at 832. Any type of sensor can be used to collect data on the surrounding environment from the primary vehicle. The sensor output can be, for example, an image, video, audio, lidar measurement, infrared measurement, temperature measurement, GPS data, traffic signal data, or any other information measured or detected by the sensor. In one embodiment, the sensor output can be the result of capturing environmental information related to the vehicle's surrounding environment by one or more sensors, which can include traffic conditions at a location, target vehicle details, number of lanes, traffic conditions around the primary vehicle, road surface conditions, etc. The system can receive any data related to the sensor output from the sensor, including the raw sensor output and / or any derived data. In one embodiment, the system can use a machine learning model trained using a set of training data to process the received data and identify any actionable parameters of interest. It can receive other data 836 from other sensors of the primary vehicle, such as weather conditions, humidity, temperature, driver behavior, tire tread, tire condition, tire pressure, etc.
[0303]
[0303] As shown at step 834, the system can use the machine learning model to extract features from the received data. The machine learning model is capable of automatically performing this operation based on what it has learned during the training process. In one embodiment, appropriate weights learned during the training process can be applied to the features. These features include unstable behavior patterns, the paths followed by the unstable vehicle over the past few time periods, the speed of the unstable vehicle, the acceleration of the unstable vehicle, steering position, the type of the unstable vehicle, etc.
[0304] As shown at step 838, based on the features of the received data, the machine learning model can detect the unstable vehicle, then predict the section of the road that the unstable vehicle is going to travel, and subsequently generate possible collision points on the section of the road where the unstable vehicle may travel. The machine learning model will generate a first score representing the likelihood of a collision and a second score based on the predicted severity or impact of the collision. These two scores can be combined with weights to generate a score.
[0305] As shown at step 840, the system can determine whether the score is high enough relative to a threshold or a criterion to warrant taking certain actions. If the score is not high enough, indicating a false positive, the system can return to step 832 and continue monitoring subsequent incoming data. On the other hand, if the score is high enough, at step 842 the system can generate an alert to be sent to the host vehicle and generate or determine an appropriate action / response for the host vehicle. In one embodiment, the system can send an alert to nearby vehicles or a group of nearby vehicles. For example, an alert is generated among the nearby vehicles via a message, where the message includes details of one or more unstable vehicles and a request for an action or a coordinated action, where the action includes one or more of reducing speed, increasing speed, advancing in a lane, retreating in a lane, and changing lanes.
[0306] In one embodiment, where appropriate, the system can repeat Figure 8D one or more steps of the method. In one embodiment, steps 832 to 842 can be performed by the system, and any combination of these steps can be performed by any other computing system, such as a remote network or a cloud network. In one embodiment, when using a machine learning model for such determination, the system can transmit the trained machine learning model to a computing system in the vehicle. This may be desirable because the sensor data may be too large to be transmitted in time to the in-vehicle system for training.
[0307] In one embodiment, detecting an unstable vehicle and predicting the path and collision point of the unstable vehicle utilize a convolutional neural network (CNN). In one embodiment, detecting an unstable vehicle and predicting the path and collision point of the unstable vehicle can use a recurrent neural network architecture because the recurrent neural network architecture is capable of using past time information to infer the current input.
[0308] Figure 8EIllustrated is an example flow chart of using swarm intelligence to coordinate moving vehicles to avoid collision / contact areas with unstable vehicles. In one embodiment, swarm intelligence is used to coordinate movement. At step 852, the host vehicle will identify vehicles and unstable vehicles in the area of interest at the current time. At step 854, the host vehicle will detect the current position of the unstable vehicle and predict the next movement of the unstable vehicle. At step 856, the host vehicle calculates its next movement based on information about the positions, speeds, and road conditions of nearby vehicles communicated with nearby vehicles. The next movement can be moving right, moving left, decelerating, accelerating, maintaining the lane, changing lanes, coming to a complete stop, etc. During this step 856, the host vehicle will simultaneously check and avoid collisions with neighboring vehicles and check and avoid the path or area of the unstable vehicle. Then, the host will move to its next position at step 858, and then the host vehicle updates the positions and speeds of the surrounding vehicles at step 860. Since the unstable vehicle and traffic conditions are dynamic, the host vehicle will update the area of interest at step 862 and repeat the process until it avoids the unstable vehicle and the path / contact area of the unstable vehicle. According to one embodiment, the area of interest can be an area where vehicles are located near the unstable vehicle or the contact area, and the unstable vehicle poses a threat to the vehicles in this area. In one embodiment, the host vehicle and the vehicles in the area of interest form a swarm and use swarm intelligence to coordinate the actions of the host vehicle and the vehicles in the area of interest. Emergent behavior results from the interaction of individual vehicles within the swarm. Each vehicle follows simple rules based on its local environment (go forward, change lanes, avoid collisions) to result in complex collective behavior at the swarm level. Swarm intelligence algorithms are inspired by the collaborative behavior of social organisms and provide innovative solutions to complex problems. For example, the ant colony optimization (ACO) algorithm, where ants deposit pheromones to guide the ant colony to find the best solution; the particle swarm optimization (PSO) algorithm, where agents adjust their positions based on collective experience. The bee algorithm mimics the foraging behavior of bees through exploration and communication, while the firefly algorithm draws inspiration from the synchronous flashing of fireflies to achieve convergence to the best solution. Swarm robotics uses local communication to complete tasks such as exploration, while cooperative algorithms involve indirect communication through environmental modification. Any algorithm mentioned in this article is suitable for and adapted to the maneuvering of avoiding the contact area of unstable vehicles.
[0309] Figure 9AA block diagram of a method for detecting an unstable vehicle and determining an avoidance action according to an embodiment is shown. According to one embodiment, method 900 includes: scanning by sensors of a host vehicle at a first frequency to observe unstable behavior in the surrounding environment, as shown at step 902; determining an unstable vehicle by analyzing the unstable behavior, as shown at step 904; scanning by the sensors at a second frequency to determine the identity of the unstable vehicle and analyze the traffic conditions around the unstable vehicle, as shown in step 906; determining the likelihood of a collision, as shown at step 908; sending a message via a communication module to alert nearby vehicles, as shown at step 910; and determining an avoidance action for avoiding a collision, as shown at step 912.
[0310] Figure 9B A block diagram of a system for detecting an unstable vehicle and determining an avoidance action according to an embodiment is shown. According to one embodiment, system 940 includes a sensor 942, a communication module 944, and a processor 946; wherein the processor 946 stores instructions in a non-transitory memory, which when executed, cause the processor to: scan by sensors of the host vehicle at a first frequency to observe unstable behavior in the surrounding environment, as shown at step 902; determine an unstable vehicle by analyzing the unstable behavior, as shown at step 904; scan by the sensors at a second frequency to determine the identity of the unstable vehicle and analyze the traffic conditions around the unstable vehicle, as shown at step 906; determine the likelihood of a collision, as shown at step 908; send a message via the communication module to alert nearby vehicles, as shown at step 910; and determine an avoidance action for avoiding a collision, as shown at step 912. According to one embodiment of the system, the system is a component of a vehicle. According to one embodiment of the system, the traffic conditions include the number of vehicles and the speed of each vehicle.
[0311] According to one embodiment of the system, the second frequency is higher than the first frequency. According to one embodiment of the system, the first frequency is dynamically adjusted to the second frequency based on one or more of traffic conditions, weather conditions, geographical location, road conditions, and the distance to the unstable vehicle.
[0312] According to one embodiment of the system, the unstable behavior includes one or more of the following: rapid steering, speeding, sudden lane change, lane change frequency, acceleration above a first threshold, deceleration below a threshold, a vehicle turning on emergency lights, a vehicle turning on an alarm, and a vehicle coming to a complete stop.
[0313] According to one embodiment of the system, the system further includes a machine vision system and an artificial intelligence module, which are operable to determine unstable behavior, wherein the system is operable to identify patterns indicating unstable behavior in the surrounding environment using the artificial intelligence module. According to one embodiment of the system, the machine vision system and the artificial intelligence module are operable to determine collision avoidance actions.
[0314] According to one embodiment of the system, the communication module is operable for vehicle-to-everything (V2X) communication and vehicle-to-vehicle (V2V) communication.
[0315] According to one embodiment of the system, the sensor includes one or more of a camera, a radar sensor, a lidar sensor, and an ultrasonic sensor.
[0316] According to one embodiment of the system, the host vehicle performs an avoidance action. According to one embodiment of the system, the request for the avoidance action takes into account energy requirements, weather conditions, traffic conditions, and time requirements for the destination. According to one embodiment of the system, the avoidance action includes one or more of the following: maintaining a distance between the host vehicle and the unstable vehicle, adjusting the distance between the host vehicle and the unstable vehicle, changing the route, performing a reverse operation, and performing a lane change.
[0317] Figure 9C A block diagram of a method for detecting an unstable vehicle and determining an avoidance action, stored on a non-transitory computer medium, according to one embodiment is shown. According to one embodiment, instructions are stored on a non-transitory computer-readable storage medium 974, and the instructions can be executed by a computer system 971 to perform operations including: scanning through sensors of the host vehicle at a first frequency to observe unstable behavior in the surrounding environment, as shown in step 902; determining an unstable vehicle by analyzing the unstable behavior, as shown in step 904; scanning through the sensors at a second frequency to determine the identity of the unstable vehicle and analyze the traffic conditions around the unstable vehicle, as shown in step 906; determining the likelihood of a collision, as shown in step 908; sending a message through the communication module to alert nearby vehicles, as shown in step 910; and determining an avoidance action for avoiding a collision, as shown in step 912. A software application 976 can be stored on the computer-readable storage medium 974 and executed by a processor 972 of the computer system 971.
[0318] According to one embodiment of the non-transitory computer-readable storage medium, the instructions further include identifying patterns using an artificial intelligence module, the patterns indicating unstable behavior in the surrounding environment.
[0319] Figure 10AThe block diagram shows a method for a host vehicle to receive and send messages according to an embodiment. According to an embodiment, method 1000 includes: receiving, by the host vehicle via a communication module, a first message from a source, where the first message includes information about an unstable vehicle, and where the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle (step 1002); and sending, via the communication module, a second message to issue an alert to a second vehicle, where the second message includes a portion of the first message and an avoidance action for the second vehicle (step 1004), and where the source is one of a first vehicle, a device, and traffic infrastructure.
[0320] According to an embodiment of the method, the avoidance action for the second vehicle includes one or more of changing a route, changing a lane, changing a speed, changing a driving direction, and changing a distance from the host vehicle.
[0321] Figure 10B The block diagram shows a system for a host vehicle to receive and send messages according to an embodiment. According to an embodiment, it is system 1040, which includes: a communication module 1044; and a processor 1042; where the processor 1042 stores instructions in a non-transitory memory, and when executed, causes the processor to: receive, by the host vehicle via the communication module, a first message from a source, where the first message includes information about an unstable vehicle, and where the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the traveling direction of the unstable vehicle (at step 1002); and send, via the communication module, a second message to issue an alert to a second vehicle, where the second message includes a portion of the first message, a second contact area, and an avoidance action for the second vehicle; and where the system is a component of the host vehicle in step 1004, and where the source is one of a first vehicle, a device, and traffic infrastructure.
[0322] According to an embodiment of the system, the system is operable to broadcast the second message. According to an embodiment of the system, the first message further includes prominent features of the unstable vehicle, where the prominent features include one or more of a bumper sticker, a dent, and any special accessories attached to the unstable vehicle.
[0323] According to an embodiment of the system, the first message further includes a request for the host vehicle to move in a specific direction. According to an embodiment of the system, the system is further operable to display an action to the driver of the host vehicle.
[0324] According to an embodiment of the system, the second contact area is different from the first contact area, and wherein the second contact area is an area updated relative to the first contact area and includes a different group of vehicles.
[0325] Figure 10C A block diagram of a method stored on a non-transitory computer medium for a host vehicle to receive and send messages according to an embodiment is shown.
[0326] According to an embodiment, instructions are stored on a non-transitory computer-readable storage medium 1074, and the instructions can be executed by a computer system 1071 to perform operations including the following: At step 1002, the host vehicle receives a first message from a source through a communication module, wherein the first message includes information about an unstable vehicle, and wherein the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; At step 1004, a second message is sent through the communication module to issue an alert to a second vehicle, wherein the second message includes a part of the first message and an avoidance action for the second vehicle. A software application 1076 can be stored on the computer-readable storage medium 1074 and executed by a processor 1072 of the computer system 1071; and wherein the source is one of a first vehicle, a device, and traffic infrastructure.
[0327] According to an embodiment of the non-transitory computer-readable storage medium, the avoidance action for the second vehicle includes one or more of a route change, a lane change, a speed change, a driving direction change, and a distance change from the host vehicle. According to an embodiment of the non-transitory computer-readable storage medium, the second message is sent to road infrastructure through a communication module including V2X communication.
[0328] Figure 11A A block diagram of a method for a host vehicle to send a message according to an embodiment is shown.
[0329] According to an embodiment, method 1100 includes: At step 1102, the host vehicle sends a message about an unstable vehicle through a communication module to issue an alert to nearby vehicles, wherein the message includes one or more of a license plate number, make and model, color, the location of the unstable vehicle, and the driving direction of the unstable vehicle.
[0330] According to an embodiment of the method, the message further includes an avoidance action for nearby vehicles. According to an embodiment of the method, the avoidance action for nearby vehicles includes one or more of a route change, a lane change, a speed change, a driving direction change, and a distance change from the host vehicle.
[0331] Figure 11BA block diagram of a system for a host vehicle to send a message according to one embodiment is shown.
[0332] According to one embodiment, system 1140 includes a communication module 1144 and a processor 1142; wherein, the processor stores instructions in a non-transitory memory, and when these instructions are executed, causes the processor to: send a message about an unstable vehicle by the host vehicle through the communication module to alert nearby vehicles, wherein, at step 1102, the message includes one or more of a license plate number, make and model, color, location of the unstable vehicle, and direction of travel of the unstable vehicle.
[0333] According to one embodiment of the system, the message further includes a request for nearby vehicles to move in a certain direction, wherein the direction includes a lane change, a route change, and a change in distance from the host vehicle. According to one embodiment of the system, the system is further operable to display an action to the driver of the host vehicle. According to one embodiment of the system, the system is further operable to display the message to the drivers of nearby vehicles.
[0334] Figure 11C A block diagram of a method stored on a non-transitory computer medium for a host vehicle to send a message according to one embodiment is shown.
[0335] According to one embodiment, it is a non-transitory computer-readable storage medium having instructions stored thereon that can be executed by a computer system to perform operations including: sending a message about an unstable vehicle by the host vehicle through the communication module to alert nearby vehicles, wherein the message includes one or more of a license plate number, make and model, color, location of the unstable vehicle, and direction of travel of the unstable vehicle, as shown at step 1102. A software application 1176 can be stored on the computer-readable storage medium 1174 and executed by a processor 1172 of the computer system 1171. According to one embodiment of the non-transitory computer-readable storage medium, the message further includes an avoidance action for nearby vehicles.
[0336] According to one embodiment of the non-transitory computer-readable storage medium, the avoidance action for nearby vehicles includes one or more of a route change, a lane change, a speed change, a change in direction of travel, and a change in distance from the host vehicle. According to one embodiment of the non-transitory computer-readable storage medium, the message is sent to road infrastructure via V2X communication.
[0337] In one embodiment, the system may include a network security module. In one aspect, a Secure Communication Management (SCM) computer device for providing a secure data connection is provided. The SCM computer device includes a processor communicatively coupled to a memory. The processor is programmed to receive a first data message from a first device. The first data message is in a standardized data format. The processor is further programmed to analyze the first data message for potential cybersecurity threats. If it is determined that the first data message does not contain a cybersecurity threat, the processor is further programmed to convert the first data message into a first data format associated with a vehicle environment and transmit the converted first data message in a first data format associated with a vehicle state, and transmit the converted first data message to a communication module using a first communication protocol associated with a negotiation protocol.
[0338] According to one embodiment, secure authentication for data transmission includes: providing a hardware-based security engine (HSE) located in the network security module, the hardware-based security engine having been fabricated in a secure environment and certified in the secure environment as part of an approved network; using the hardware-based security engine to asynchronously authenticate, verify, and encrypt data, storing user permission data and connection status data in an access control list for defining an allowed data communication path of the approved network such that the network security module can communicate with other computing systems (e.g., the communication module) subject to the access control list, using the security engine to asynchronously verify and encrypt data includes using a hardware-based module configured to protect one or more security aspects of the system to identify a user device (UD) incorporating credentials included in the hardware, where the security aspects include communication between the hardware-based module with the user of the user device and the hardware-based security engine.
[0339] Figure 12A A block diagram of a network security module according to one embodiment is shown. In one embodiment, Figure 12A A block diagram of a network security module is shown. Before data communication between the system 1200 and the server 1270 via the communication module 1212 is sent from the system to the server or from the server to the system, it is first verified by the information security management module 1232. The information security management module is operable to analyze data for potential cybersecurity threats, encrypt the data when no cybersecurity threat is detected, and send the encrypted data to the system or the server. The system 1200 includes a processor 1208.
[0340] In one embodiment, the network security module further includes an information security management module that provides isolation between the system and the server. Figure 12BA flowchart showing the protection of data by the network security module 1230 is presented. At step 1240, the information security management module is operable to receive data from the communication module. At step 1241, the information security management module exchanges security keys when communication between the communication module and the server begins. At step 1242, the information security management module receives a security key from the server. At step 1243, the information security management module authenticates the identity of the server by verifying the security key. At step 1244, the information security management module analyzes the security key for potential network security threats. At step 1245, the information security management module negotiates an encryption key between the communication module and the server. At step 1246, the information security management module receives encrypted data. At step 1247, when no network security threat is detected, the information security management module sends the encrypted data to the server.
[0341] In one embodiment, Figure 12C A flowchart showing the protection of data by the network security module 1230 is presented. At step 1251, the information security management module is operable to: exchange security keys when communication between the communication module and the server begins. At step 1252, the information security management module receives a security key from the server. At step 1253, the information security management module authenticates the identity of the server by verifying the security key. At step 1254, the information security management module analyzes the security key for potential network security threats. At step 1255, the information security management module negotiates an encryption key between the communication module and the server. At step 1256, the information security management module receives encrypted data. At step 1257, the information security management module decrypts the encrypted data and performs an integrity check on the decrypted data. At step 1258, when no network security threat is detected, the information security management module sends the decrypted data to the communication module.
[0342] In one embodiment, the integrity check is a hash signature verification using the Secure Hash Algorithm 256 (SHA256) or a similar method. In one embodiment, the information security management module is configured to perform asynchronous authentication and verification of the communication between the communication module and the server.
[0343] In one embodiment, the information security management module is configured to issue an alert when a network security threat is detected. In one embodiment, the information security management module is configured to discard the received encrypted data if the integrity check of the encrypted data fails.
[0344] In one embodiment, the information security management module is configured to verify the integrity of the decrypted data by checking the accuracy, consistency, and any possible data loss during communication via the communication module.
[0345] In one embodiment, the server is physically isolated from the system through the information security management module. When the system communicates with the server, as Figure 12A shown, first, identity authentication is performed on both the system and the server. The system is responsible for communicating / exchanging the public key of the system and the signature of the public key with the server. The public key of the system and the signature of the public key are sent to the information security management module. The information security management module decrypts the signature and verifies whether the decrypted public key is consistent with the original public key received. If the decrypted public key is verified, the identity authentication passes. Similarly, the system and the server perform identity authentication on the information security management module. After the identity authentication is passed to the information security management module, the communicating parties, the system and the server, negotiate encryption keys and integrity check keys for data communication between the two communicating parties through the authenticated asymmetric keys. A session ID number (session ID number) is sent during the identity authentication process, so that the key is bound to the session ID number; when the system sends data to the outside, the information security gateway receives the data through the communication module, performs integrity authentication on the data, then encrypts the data with the negotiated key, and finally sends the data to the server through the communication module. When the information security management module receives data from the server, it first decrypts the data, performs integrity verification on the decrypted data, and if the verification passes, sends the data through the communication module; otherwise, the data will be discarded.
[0346] In one embodiment, identity authentication is implemented by adopting an asymmetric key with a signature. In one embodiment, signature is implemented by a pair of asymmetric keys trusted by the information security management module and the system, where the private key is used to sign the identities of both communicating parties, and the public key is used to verify whether the identities of both communicating parties have been signed. The signed identity includes a public key and a private key pair. In other words, the signed identity refers to the common name of the certificate installed on the user machine.
[0347] In one embodiment, both communicating parties need to authenticate their identities through a pair of asymmetric keys and identify the task responsible for communicating with the information security management module of the system through a unique pair of asymmetric keys.
[0348] In one embodiment, the Rivest-Shamir-Adleman (RSA) encryption algorithm is adopted to encrypt the dynamically negotiated key. RSA is a public key cryptosystem widely used for secure data transmission. The negotiated keys include a data encryption key and a data integrity check key.
[0349] In one embodiment, the data encryption method is a triple data encryption algorithm (3DES) encryption algorithm. The integrity check algorithm is a hashed - based message authentication code (HMAC - MD5 - 128) algorithm. When data is output, integrity check calculation is performed on the data. The calculated message authentication code (MAC) value is added to the header of the data message, and then the data (including the MAC of the header) is encrypted using the 3DES algorithm. After data encryption, header information of the security layer is added, and then the data is sent to the next layer for processing. In one embodiment, the next layer refers to the transport layer in the Transmission Control Protocol / Internet Protocol (TCP / IP) model.
[0350] When communication startup data encryption and data integrity authentication occur between two communication parties, the information security management module ensures the security, reliability, and confidentiality of communication between the system and the server through identity authentication. This method is particularly suitable for embedded platforms with fewer resources and not connected to a Public Key Infrastructure (PKI) system, and by ensuring the security and reliability of communication between the system and the server, it can ensure the security of data on the server under Internet conditions from being harmed by hacker attacks.
[0351] The description of one or more embodiments is for illustrative purposes only and is not exhaustive or limited to the embodiments described herein. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein best explain the principles of the embodiments, practical applications, and / or technical improvements relative to the technologies found in the market, and / or enable other ordinary skilled persons in the art to understand the embodiments described herein.
[0352] List of clauses
[0353] 1. A system, comprising:
[0354] A communication module; and a processor;
[0355] Wherein, the processor stores instructions in non - transient memory, and when these instructions are executed, causes the processor to:
[0356] Receive a first message from a source by the host vehicle through the communication module, wherein the first message includes information about an unstable vehicle, and the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle;
[0357] Send a second message through the communication module to issue an alarm to a second vehicle, wherein the second message includes a part of the first message, a second contact area, and an avoidance action for the second vehicle; and
[0358] Wherein, the system is a component of the host vehicle; and wherein, the information source is one of a first vehicle, a device, and traffic infrastructure.
[0359] 2. The system according to clause 1, wherein the system is operable to broadcast a second message.
[0360] 3. The system according to clause 1, wherein the first message further includes prominent features of the erratic vehicle, and wherein the prominent features include one or more of a bumper sticker, a dent, and any special accessories attached to the erratic vehicle.
[0361] 4. The system according to clause 1, wherein the first message further includes an image of the erratic vehicle.
[0362] 5. The system according to clause 1, wherein the first message further includes images of the driver of the erratic vehicle and the passengers of the erratic vehicle.
[0363] 6. The system according to clause 1, wherein the first message further includes one or more images of a first contact area created by the erratic vehicle.
[0364] 7. The system according to clause 1, wherein the first contact area includes an area in which a group of surrounding vehicles move at a speed of at least one of higher than a first threshold speed and lower than a second threshold speed.
[0365] 8. The system according to clause 7, wherein the first threshold speed and the second threshold speed are determined based on the speed limit on the route on which the erratic vehicle travels and the average speed of vehicles away from the erratic vehicle.
[0366] 9. The system according to clause 1, wherein the first contact area includes an area in which one or more vehicles participate in a vehicle chase together with the erratic vehicle.
[0367] 10. The system according to clause 1, wherein the first message further includes a request for the host vehicle to move in a specific direction.
[0368] 11. The system according to clause 1, wherein the system is further operable to display an action to the driver of the host vehicle.
[0369] 12. The system according to clause 1, wherein the second contact area is different from the first contact area, and wherein the second contact area is an area updated from the first contact area and includes a different group of vehicles.
[0370] 13. A method, comprising:
[0371] The host vehicle receives a first message from a source via a communication module, where the first message includes information about an unstable vehicle, and the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and
[0372] send a second message via the communication module to issue an alert to a second vehicle, where the second message includes a part of the first message and an avoidance action for the second vehicle; and where the source is one of a first vehicle, a device, and traffic infrastructure.
[0373] 14. The method according to clause 13, wherein the avoidance action for the second vehicle includes one or more of a route change, a lane change, a speed change, a driving direction change, and a change in the distance from the host vehicle.
[0374] 15. A non-transitory computer-readable storage medium having stored thereon instructions executable by a computer system to perform operations including:
[0375] The host vehicle receives a first message from a source via a communication module, where the first message includes information about an unstable vehicle, and the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and
[0376] send a second message via the communication module to issue an alert to a second vehicle, where the second message includes a part of the first message and an avoidance action for the second vehicle; where the source is one of a first vehicle, a device, and traffic infrastructure.
[0377] 16. A computer-readable storage medium, wherein the avoidance action for the second vehicle includes one or more of a route change, a lane change, a speed change, a driving direction change, and a change in the distance from the host vehicle.
[0378] 17. The non-transitory computer-readable storage medium according to clause 15, wherein the second message is sent to road infrastructure via a communication module including V2X communication.
[0379] 18. A system, comprising:[[]]
[0380] a communication module; and a processor;
[0381] wherein the processor stores instructions in non-transitory memory, which when executed cause the processor to:[[]]
[0382] The host vehicle sends a message about the unstable vehicle through a communication module to alert nearby vehicles, where the message includes one or more of the license plate number, make and model, color, location of the unstable vehicle, and driving direction of the unstable vehicle.
[0383] 19. The system according to clause 18, wherein the system is operable to broadcast the message.
[0384] 20. The system according to clause 18, wherein the message further includes prominent features of the unstable vehicle, where the prominent features include one or more of bumper stickers, dents, and any special accessories attached to the unstable vehicle.
[0385] 21. The system according to clause 18, wherein the message further includes a request for daisy chain communication to notify other surrounding vehicles within the geographical range or route of the nearby vehicles.
[0386] 22. The system according to clause 18, wherein the message further includes a picture of the unstable vehicle.
[0387] 23. The system according to clause 18, wherein the message further includes pictures of the driver of the unstable vehicle and the passengers of the unstable vehicle.
[0388] 24. The system according to clause 18, wherein the message further includes one or more pictures of the contact area generated by the unstable vehicle.
[0389] 25. The system according to clause 24, wherein the contact area includes a group of surrounding vehicles moving at a speed below a threshold speed.
[0390] 26. The system according to clause 25, wherein the threshold speed is determined based on the speed limit on the route on which the unstable vehicle is traveling and the average speed of the vehicles away from the unstable vehicle.
[0391] 27. The system according to clause 24, wherein the contact area includes an area where one or more vehicles are participating in a vehicle chase with the unstable vehicle.
[0392] 28. The system according to clause 19, wherein the message further includes a request for nearby vehicles to move in a direction, where the direction includes a lane change, a route change, and a change in distance from the host vehicle.
[0393] 29. The system according to clause 19, wherein the system is further operable to display an action to the driver of the host vehicle.
[0394] 30. The system according to clause 19, wherein the system is further operable to display the message to a driver of a nearby vehicle.
[0395] 31. A method, comprising:
[0396] Sending, by a host vehicle via a communication module, a message about an unstable vehicle to alert nearby vehicles, wherein the message includes one or more of a license plate number, make and model, color, location of the unstable vehicle, and driving direction of the unstable vehicle.
[0397] 32. The method according to clause 31, wherein the message further includes an avoidance action for nearby vehicles.
[0398] 33. The method according to clause 32, wherein the avoidance action for nearby vehicles includes one or more of a route change, lane change, speed change, driving direction change, and distance change from the host vehicle.
[0399] 34. A non-transitory computer-readable storage medium storing instructions executable by a computer system to perform operations including:
[0400] Sending, by a host vehicle via a communication module, a message about an unstable vehicle to alert nearby vehicles, wherein the message includes one or more of a license plate number, make and model, color, location of the unstable vehicle, and driving direction of the unstable vehicle.
[0401] 35. The non-transitory computer-readable storage medium according to clause 34, wherein the message further includes an avoidance action for nearby vehicles.
[0402] 36. A non-transitory computer-readable storage medium, wherein the avoidance action for nearby vehicles includes one or more of a route change, lane change, speed change, driving direction change, and distance change from the host vehicle.
[0403] 37. The non-transitory computer-readable storage medium according to clause 34, wherein the message is sent to road infrastructure via V2X communication.
Claims
1. A system, comprising: A communication module; And a processor; Wherein, the processor stores instructions in a non-transitory memory, and when these instructions are executed, it causes the processor to: Receive a first message from a source by the host vehicle through the communication module, wherein the first message includes information about an unstable vehicle, and the information includes one or more of a license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and Send a second message through the communication module to issue an alert to a second vehicle, wherein the second message includes a part of the first message, a second contact area, and an avoidance action for the second vehicle; and Wherein, the system is a component of the host vehicle; and wherein the source is one of a first vehicle, a device, and traffic infrastructure.
2. The system according to claim 1, wherein The system is operable to broadcast the second message.
3. The system according to claim 1, wherein The first message further includes prominent features of the unstable vehicle, and the prominent features include one or more of a bumper sticker, a dent, and any special accessories attached to the unstable vehicle.
4. The system according to claim 1, wherein, The first message further includes an image of the unstable vehicle.
5. The system according to claim 1, wherein, The first message further includes images of the driver of the unstable vehicle and the passengers of the unstable vehicle.
6. The system according to claim 1, wherein, The first message further includes one or more images of the first contact area created by the unstable vehicle.
7. The system according to claim 1, wherein, The first contact area includes an area in which a group of surrounding vehicles move at a speed of at least one of higher than a first threshold speed and lower than a second threshold speed and one or more vehicles participate in a vehicle chase in the area.
8. The system according to claim 7, wherein, The first threshold speed and the second threshold speed are determined based on the speed limit on the route on which the unstable vehicle travels and the average speed of vehicles away from the unstable vehicle.
9. The system according to claim 1, wherein, The first message further includes a request for the host vehicle to move in a specific direction.
10. The system according to claim 9, wherein The specific direction includes a lane change, a route change, and a change in the distance from the host vehicle.
11. The system according to claim 9, wherein, The specific direction is displayed as a vector.
12. The system according to claim 1, wherein The second contact area is different from the first contact area, and the second contact area is an update of the first contact area.
13. The system according to claim 1, wherein The second message further includes a request for daisy-chain communication to notify other surrounding vehicles within the geographical range or route of nearby vehicles.
14. The system according to claim 1, wherein, The system is further operable to display the first message to the driver of the host vehicle.
15. The system according to claim 1, wherein The system is further operable to display the second message to the driver of the second vehicle.
16. A method, comprising: Receiving a first message from a source by the host vehicle through the communication module, wherein the first message includes information about an unstable vehicle, and the information includes one or more of the license plate number, make and model, color, a first contact area, the location of the unstable vehicle, and the driving direction of the unstable vehicle; and Sending a second message through the communication module to issue an alert to a second vehicle, wherein the second message includes a part of the first message and an avoidance action for the second vehicle; and wherein the source is one of a first vehicle, a device, and traffic infrastructure.
17. The method according to claim 16, wherein The avoidance action for the second vehicle includes one or more of a route change, a lane change, a speed change, a driving direction change, and a change in the distance from the host vehicle.
18. A non-transitory computer-readable storage medium having instructions stored thereon that are executable by a computer system to perform operations including the following: The host vehicle receives a first message from a source via a communication module, wherein, The first message includes information about an unstable vehicle, where the information includes one or more of the license plate number, make and model, color, first contact area, location of the unstable vehicle, and driving direction of the unstable vehicle; and Sending a second message via a communication module to alert a second vehicle, where the second message includes a portion of the first message and an avoidance action for the second vehicle; and where the source is one of a first vehicle, a device, and traffic infrastructure.
19. The non-transitory computer-readable storage medium according to claim 18, wherein, The avoidance action for the second vehicle includes one or more of a route change, a lane change, a speed change, a driving direction change, and a distance change from the host vehicle.
20. The non-transitory computer-readable storage medium according to claim 18, wherein, The second message is sent to the road infrastructure via a communication module including V2X communication.