CN117062028A - 用于车辆的分布式处理系统 - Google Patents
用于车辆的分布式处理系统 Download PDFInfo
- Publication number
- CN117062028A CN117062028A CN202310514279.4A CN202310514279A CN117062028A CN 117062028 A CN117062028 A CN 117062028A CN 202310514279 A CN202310514279 A CN 202310514279A CN 117062028 A CN117062028 A CN 117062028A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- electric vehicle
- data processing
- processing system
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 215
- 238000000034 method Methods 0.000 claims abstract description 364
- 230000008569 process Effects 0.000 claims abstract description 287
- 238000004891 communication Methods 0.000 claims abstract description 236
- 230000004044 response Effects 0.000 claims abstract description 39
- 238000010586 diagram Methods 0.000 claims description 12
- 238000012797 qualification Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 description 21
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 10
- 238000005457 optimization Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 102000008115 Signaling Lymphocytic Activation Molecule Family Member 1 Human genes 0.000 description 1
- 108010074687 Signaling Lymphocytic Activation Molecule Family Member 1 Proteins 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000004146 energy storage Methods 0.000 description 1
- GVVPGTZRZFNKDS-JXMROGBWSA-N geranyl diphosphate Chemical compound CC(C)=CCC\C(C)=C\CO[P@](O)(=O)OP(O)(O)=O GVVPGTZRZFNKDS-JXMROGBWSA-N 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 239000002243 precursor Substances 0.000 description 1
- 238000010791 quenching Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/46—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for vehicle-to-vehicle communication [V2V]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/08—Testing, supervising or monitoring using real traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/40—Resource management for direct mode communication, e.g. D2D or sidelink
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
Abstract
本发明公开了用于跨车辆分发操作的系统和方法。包括耦接到存储器的一个或多个处理器的数据处理系统可识别能够由该数据处理系统执行的操作。该数据处理系统可计算在该车辆与第二车辆之间的通信信道的持续时间并确定该通信信道的该持续时间大于或等于阈值。响应于该确定该通信信道的该持续时间大于或等于该阈值,该数据处理系统可确定将该操作拆分为第一进程和第二进程以用于由该车辆和该第二车辆进行分布式处理。响应于该确定将该操作拆分,该数据处理系统可向该第二车辆传输对执行该第二进程的请求以使该第二车辆执行该第二进程。
Description
引言
车辆可包括处理器和显示装置。车辆的处理器可接收输入,并且生成输出以用于经由该车辆的显示装置进行呈现。
发明内容
该技术解决方案涉及在不同车辆间分发处理。例如,车辆可经由无线电区域网(RAN)将计算任务卸载到远程计算系统。然而,RAN连通性可能不总是对于车辆可用。该技术解决方案的系统、方法和设备可通过将进程拆分为由第一车辆执行的第一进程和由第二车辆执行的第二进程并向第二车辆传输第二进程来减少能量消耗、处理或处理延时。车辆(诸如电动车辆)可生成消息并将该消息分发到其他车辆。消息可包括指示两个车辆将处于彼此视线中多长时间的数据。在一些情况下,该数据可包括方向(例如,航向)、速度、海拔、计划车辆路线、行进目的地、车辆位置。消息可包括指示电动车辆的可用计算资源的数据。第一电动车辆可从至少一个第二电动车辆接收一个消息或从多个车辆接收多个消息,并且确定该第一车辆的特定资源密集型操作是否应当被分发到第二电动车辆。第一电动车辆可执行计算,该计算确定例如第一电动车辆和第二电动车辆将处于视线中多长时间、其他车辆是否具有足够的计算资源在车辆处于视线中时执行计算任务或其他车辆是否有资格。响应于确定在第一电动车辆与第二电动车辆之间分发操作,第一电动车辆可与第二电动车辆通信,从而使操作被拆分为两个单独进程,即将由第一车辆执行的第一进程和将由第二车辆执行的第二进程。车辆可经由直接车辆间通信技术彼此通信以分发计算资源密集型操作。当经由RAN对外部计算的接入不可用时,车辆可分发计算资源密集型操作。
至少一个方面涉及一种系统。该系统可包括数据处理系统,该数据处理系统包括耦接到存储器的一个或多个处理器。该数据处理系统可识别能够由该数据处理系统执行的操作。该数据处理系统可计算在该车辆与第二车辆之间的通信信道的持续时间并确定该通信信道的该持续时间大于或等于阈值。响应于该确定该通信信道的该持续时间大于或等于该阈值,该数据处理系统能够确定将该操作拆分为第一进程和第二进程以用于由该车辆和该第二车辆进行分布式处理。响应于该确定将该操作拆分,该数据处理系统可向该第二车辆传输对执行该第二进程的请求以使该第二车辆执行该第二进程。
至少一个方面涉及一种方法。该方法可包括由包括耦接到存储器的一个或多个处理器的数据处理系统识别能够由处理电路执行的操作。该方法可包括由该数据处理系统计算在该车辆与第二车辆之间的通信信道的持续时间并由该数据处理系统确定该通信信道的该持续时间大于或等于阈值。该方法可包括由该数据处理系统响应于确定该通信信道的该持续时间大于或等于该阈值而确定将该操作拆分为第一进程和第二进程以用于由该车辆和该第二车辆进行分布式处理。该方法可包括由该数据处理系统响应于该确定将该操作拆分而向该第二车辆传输对执行该第二进程的请求以使该第二车辆执行该第二进程。
至少一个方面涉及一种系统。该系统可包括数据处理系统,该数据处理系统包括耦接到存储器的一个或多个处理器。该数据处理系统可生成包括数据的消息,该消息指示在该车辆与第二车辆之间的通信信道的持续时间。该数据处理系统可向该第二车辆传输该消息。该数据处理系统可从该第二车辆接收对执行进程的请求。该第二车辆可将该持续时间与阈值进行比较以确定向该车辆发送该请求。该数据处理系统可通过执行该进程来生成结果数据。该数据处理系统可向该第二车辆传输该结果数据。
至少一个方面涉及一种车辆。该车辆可包括数据处理系统,该数据处理系统包括耦接到存储器的一个或多个处理器。该数据处理系统可识别能够由该数据处理系统执行的操作。该数据处理系统可计算在该车辆与第二车辆之间的通信信道的持续时间并确定该通信信道的该持续时间大于或等于阈值。响应于该确定该通信信道的该持续时间大于或等于该阈值,该数据处理系统能够确定将该操作拆分为第一进程和第二进程以用于由该车辆和该第二车辆进行分布式处理。响应于该确定将该操作拆分,该数据处理系统可向该第二车辆传输对执行该第二进程的请求以使该第二车辆执行该第二进程。
至少一个方面涉及一种车辆。该车辆可包括数据处理系统,该数据处理系统包括耦接到存储器的一个或多个处理器。该数据处理系统可生成包括数据的消息,该消息指示在该车辆与第二车辆之间的通信信道的持续时间。该数据处理系统可向该第二车辆传输该消息。该数据处理系统可从该第二车辆接收对执行进程的请求,该第二车辆将该持续时间与阈值进行比较以确定向该车辆发送该请求。该数据处理系统可通过执行该进程来生成结果数据。该数据处理系统可向该第二车辆传输该结果数据。
下面详细讨论这些方面和其他方面以及具体实施。前述信息和以下详细描述包括各个方面和具体实施的例示性示例,并且提供用于理解受权利要求书保护的方面和具体实施的性质和特性的概述或框架。附图提供了对各方面和具体实施的说明和进一步理解,并且并入本说明书并构成本说明书的一部分。前述信息和以下详细描述和附图包括例示性示例并且不应被视为限制性的。
附图说明
附图并非旨在按比例绘制。在各个附图中,类似的参考标号和名称指示类似的元件。为了清楚起见,可能没有在每个附图中标记每个部件。在附图中:
图1是分发进程的第一电动车辆和第二电动车辆的框图。
图2描绘了可与多个车辆通信的示例RAN。
图3描绘了其中车辆分发操作的示例。
图4描绘了示例电动车辆。
图5是描绘第一车辆向第二车辆分发操作的示例方法的流程图。
图6是描绘第一车辆执行由第二车辆分发的操作的示例方法的流程图。
图7是描绘第一车辆向第二车辆分发操作的示例方法的另一个流程图。
图8是描绘计算机系统的架构的框图,该计算机系统可用于实现本文所述和所示的系统和方法的要素,本文所述和所示的系统和方法包括例如图1所绘的系统和图5至图7所绘的方法。
具体实施方式
以下是与跨车辆(诸如电动车辆)分发操作的方法、设备和系统相关的各种构思和该方法、设备和系统的实现方式的更详细描述。上文介绍的和以下更详细讨论的各种概念可以多种方式中的任一种来实现。
本公开总体涉及用于跨电动车辆分发计算资源的系统和方法。用于电动车辆的计算密集型操作(诸如驾驶员辅助系统操作)可至少部分地在远程计算系统上执行,例如由云平台执行。电动车辆可经由电动车辆的无线电部件与将电动车辆与远程计算系统连接的无线电接入网络(RAN)通信。无线电部件可包括执行与另一个系统的双向或定向通信的一个或多个天线或电路。然而,电动车辆在一些情况下可能无法接入RAN并因此可能无法使远程计算系统执行用于车辆的计算密集型操作。例如,当车辆在偏远地理区域、在停车场、在地下、在作业现场、进行越野操作时,RAN接入可能不可用。另外,在车辆上本地执行计算可能造成车辆的计算资源、车辆的电池资源的过度利用,或者将延时或延迟引入计算流水线中。为了解决这些示例技术问题,该技术解决方案的系统和方法可利用提供在车辆之间的直接通信的通信协议。直接通信可不要求蜂窝网络。用于在车辆之间的直接通信或跨多个车辆分发操作的示例通信协议可包括侧行链路。侧行链路允许车辆对一切(V2X)通信和车辆对车辆(V2V)通信。这些技术可提供直接车辆间通信,即使当对RAN的接入不可用时也是如此。侧行链路通信可使用在车辆之间的视线通信信道。
车辆诸如电动车辆可生成消息并向彼此分发消息。可基于时间间隔、周期性地、响应于请求或以连续方式来生成和分发这些消息。消息可以是数据分组或被包括在该数据分组中。数据分组可用标头进行索引。数据分组可包括主体。标头可包括例如数据分组的标识符、生成数据分组的车辆的标识符、或者时间戳。数据分组的主体可包括指示在车辆之间的通信信道的持续时间的数据。在一些情况下,该数据可包括方向(例如,航向)、速度、计划车辆路线、行进目的地或车辆位置。消息可包括指示电动车辆的可用计算资源的数据。消息可包括诸如标识符、时间戳、计算硬件标识符或空间图等数据。第一电动车辆可从第二电动车辆接收一个消息或从多个车辆接收多个消息,并且确定该第一车辆的特定资源密集型操作是否应当被分发到至少一个第二电动车辆或任何其他车辆。第一电动车辆可执行计算,该计算确定例如第一电动车辆和至少一个第二电动车辆将处于视线中多长时间、其他车辆是否具有足够的计算资源在车辆处于视线中时执行计算任务或其他车辆是否有资格。响应于确定在第一电动车辆与至少一个第二电动车辆之间分发操作,第一电动车辆可与至少一个第二电动车辆通信,从而使操作被拆分为两个单独进程,即由第一车辆执行的第一进程和由第二车辆执行的第二进程。
图1是用于在车辆间进行分布式处理的系统100的框图。系统100可包括第一车辆(诸如第一电动车辆105)、与该第一车辆交接或以其他方式接入该第一车辆。系统100可包括第二车辆(诸如第二电动车辆110)、与该第二车辆交接或以其他方式接入该第二车辆。第一电动车辆105可包括数据处理系统115。第二电动车辆110可包括数据处理系统155。数据处理系统115和数据处理系统155可以是相同或相似类型的数据处理系统。例如,数据处理系统155可包括数据处理系统115的一个或多个部件或功能。数据处理系统115可以是第一电动车辆105的车载计算系统。数据处理系统115可包括执行第一电动车辆105的操作的多件硬件。数据处理系统115可包括执行用于第一电动车辆105的操作的一个或多个中央处理单元(CPU)或图形处理单元(GPU)。数据处理系统115可包括存储第一电动车辆105的数据的多个存储器装置。存储器装置可包括硬盘驱动器、随机存取存储器(RAM)、只读存储器(ROM)或各种其他类型的存储器存储设备。数据处理系统115可包括或使用图8所绘的一个或多个部件或功能。
第一电动车辆105可包括无线电通信电路150。第二电动车辆110可包括无线电通信电路205。无线电通信电路150和无线电通信电路205可以是相同或相似类型的无线电通信电路。无线电通信电路150可实现与其他系统或装置的无线通信。无线通信可包括向另一个装置无线地传输数据。通信可包括从该另一个装置无线地接收数据。无线电通信电路150可包括实现与RAN或与第二电动车辆110的无线电通信的一个或多个电路。无线电通信电路150可包括天线、接收器、发射器、收发器、滤波器、放大器、数字信号处理单元、调制器、前端模块或实现信号处理以用于无线电通信的其他硬件。无线电通信电路150可实现与蜂窝网络(例如,RAN)的蜂窝通信。无线电通信电路150可实现与Wi-Fi网络的Wi-Fi通信。无线电通信电路150可实现与蓝牙装置的蓝牙通信。无线电通信电路150可通过局域网(LAN)、广域网(WAN)或城域网(MAN)实现通信。无线电通信电路150可经由与一个或多个网络的通信将第一电动车辆105连接到互联网。无线电通信电路150可实现与第二电动车辆110的装置对装置通信或自组织通信。无线电通信电路150可实现车辆间通信协议以直接与第二电动车辆110通信而无需通过蜂窝塔或RAN通信。车辆间通信协议可以是对等通信协议。车辆间通信协议可包括侧行链路或执行直接车辆对车辆通信的另一个通信协议。无线电通信电路150可与第二电动车辆110的无线电通信电路205通信。
无线电通信电路150可实现5G新空口(NR)。无线电通信电路150可经由5G协议与蜂窝网络或与第二电动车辆110通信。无线电通信电路150可通过3G、4G长期演进(LTE)、5G或6G通信网络通信。无线电通信电路150可通过任何类型的符合标准的通信网络(例如,第3代合作伙伴计划(3GPP)网络)通信。无线电通信电路150可实现侧行链路协议。无线电通信电路150可实现侧行链路以经由5G NR在特定范围(例如,预定义视线范围)内与其他装置通信。侧行链路协议可提供具有高带宽的低延时通信。第一电动车辆105可经由侧行链路向第二电动车辆110传输大文件或从第二电动车辆110接收大文件。大文件可以是大于10兆字节(MB)的文件。大文件可以是大于110MB的文件。大文件可以是大于1千兆字节(GB)的文件。第一电动车辆105和第二电动车辆110可经由侧行链路自形成网络。经由侧行链路,第一电动车辆105和第二电动车辆110可在没有到RAN的连接的情况下自形成网络。
侧行链路可包括车辆对一切(V2X)通信。V2X通信可包括车辆对网络(V2N)通信。无线电通信电路150可经由V2N与网络(例如,RAN)通信。V2X可包括车辆对车辆(V2V)通信。无线电通信电路150可经由V2V与第二电动车辆110通信。V2X可包括车辆对基础设施(V2I)通信。无线电通信电路150可经由V2I与交通基础设施(例如,交通灯系统、智能交通标志、导航系统)通信。V2X可包括车辆对行人(V2P)通信。无线电通信电路150可经由V2P与行人系统(例如,人行道上的行人的智能电话、道路工人系统、道路工人的智能电话)通信。
数据处理系统115可包括消息分发器120。数据处理系统155可包括消息分发器160。消息分发器120和消息分发器160可以是软件模块的相同实例或类似软件模块的实例。消息分发器160可生成消息。消息分发器160可使无线电通信电路205向第一电动车辆105的无线电通信电路150传输消息。消息可指示在第二电动车辆110与第一电动车辆105之间的通信信道的持续时间。消息可指示可由第一电动车辆105用来确定、计算或预测通信信道的持续时间的数据。通信信道的持续时间可以是在第二电动车辆110与第一电动车辆105之间的直接车辆间通信信道的持续时间。持续时间可以是在第二电动车辆110与第一电动车辆105之间的视线通信信道的持续时间。
消息分发器160可包括车辆操作数据收集器175。车辆操作数据收集器175可收集第二电动车辆110的操作数据。消息分发器160可包括消息构造器190。消息构造器190可生成消息。消息构造器190可使消息包括由车辆操作数据收集器175收集的操作数据。车辆操作数据收集器175可使消息包括第二电动车辆110的操作数据。车辆操作数据收集器175可从第二电动车辆110的一个或多个驾驶系统(例如,数字或机械里程表、全球定位系统、导航系统、罗盘、自主驾驶系统、高度计或车辆控制系统)收集第二电动车辆110的操作数据。车辆操作数据收集器175可经由数据处理系统155的看门狗信号收集操作数据。看门狗信号可以是数字定时器的信号。数字定时器可运行以检测计算系统的数据,例如,数据值或错误,操作数据可指示第二电动车辆110的行驶方向(例如,第二电动车辆110的航向)。行驶方向可以度为单位或可以是北、南、东、西、西北、东北、西南或东南的指示。操作数据可指示车辆正在行进的速度。操作数据可指示第二电动车辆110的速度。速度可以英里/小时(MPH)或公里/小时(KPH)为单位。操作数据可指示第二电动车辆110的海拔。海拔可以海平面以上英里、海平面以上英尺、海平面以上千米、海平面以上米为单位。操作数据可指示第二电动车辆110正在行进于的道路,例如道路的名称或标识符。操作数据可指示第二电动车辆110正在行驶到的计划目的地。操作数据可指示第二电动车辆110正在行进于的计划行进路线,例如地址。操作数据可指示第二电动车辆110的当前位置,例如纬度和经度坐标。操作数据可基于第二电动车辆110的当前位置、第二电动车辆110的速度和第二电动车辆110的行进方向来指示第二电动车辆110的预测位置,例如第二电动车辆110将在未来的特定时间所在的纬度或经度坐标。操作数据可指示车辆停车或以其他方式静止。
消息分发器160可包括计算资源识别器180。计算资源识别器180可识别第二电动车辆110的可用计算资源量以执行用于分布式处理的进程。消息构造器190可使消息包括可用计算资源量。识别器180可识别第二电动车辆110的可用计算资源量。计算资源识别器180可监视数据处理系统155并确定正在由第二电动车辆110的车载应用程序或进程消耗的处理资源水平和存储器资源水平。计算资源识别器180可基于指示可用于一件处理硬件的总处理资源水平和当前正在被消耗的处理资源水平的规范来识别可用处理资源水平。计算资源识别器180可基于指示可用于一件存储器硬件的总存储器资源水平和当前正在被消耗的存储器资源水平的规范来识别可用存储器资源水平。
消息分发器160可包括车辆特性识别器185。车辆特性识别器185可识别第二电动车辆110的特性。消息构造器190可使消息包括第二电动车辆110的由识别器185识别的特性的指示。识别器185可从数据处理系统155的一个或多个存储装置检索第二电动车辆110的特性的指示。特性可包括第二电动车辆110的标识符。标识符可唯一地识别第二电动车辆110。标识符可以是或包括密码标识符。例如,密码标识符可以是或包括数字签名。特性可以是对数据处理系统155的计算硬件的描述。描述可指示数据处理系统155的处理器、存储器装置或存储装置的产品或型号标识符。描述可指示处理器、存储器装置和存储装置的类型。类型可指示特定处理器是CPU还是GPU。类型可指示存储器装置是静态随机存取存储器(RAM)(SRAM)动态RAM(DRAM)还是同步动态RAM(SDRAM)。
消息构造器190可使消息包括时间戳。消息构造器190可生成具有时间戳的消息,或者更新消息以包括时间戳。时间戳可指示消息被创建的时间。时间戳可指示由无线电通信电路205向无线电通信电路150传输消息的时间。消息构造器190可使消息指示可用性时间段。可用性时间段可指示第二电动车辆110可用于执行与第一电动车辆105的分布式处理的未来的时间长度。消息分发器160可使消息由无线电通信电路205传输到第一电动车辆105。消息分发器160可使消息周期性地生成或传输。消息分发器160可响应于检测到第一电动车辆105的存在而生成或传输消息。消息分发器160可响应于从第一电动车辆105的无线电通信电路150接收到包括对消息的请求或包括第一电动车辆105可用于执行分布式处理的指示的数据来生成或传输消息。
消息构造器190可使消息包括由进程执行器195生成的空间图数据。空间图数据可以是由第二电动车辆110正在操作于的进程执行器195生成的当前空间图。消息构造器190可使消息包括由进程执行器195生成的当前空间图。进程执行器125和进程执行器195中的每一者可执行同时定位和映射算法(SLAM)以生成空间图。可实时生成空间图。空间图可重叠有语义信息。语义信息可基于经由电动车辆105和110的传感器收集的数据。空间图可包括车辆(例如,第一电动车辆105或第二电动车辆110)所在的环境的三维(或二维)表示。空间图可包括公路行驶数据,例如建筑物、道路、标志、行人、其他车辆、自行车、摩托车。空间图可包括越野数据,例如树、岩石、山、丘陵、动物。空间图可在对象移动通过环境时(例如,在其他车辆、行人、骑自行车者或动物移动通过环境时)跟踪对象。
将全SLAM算法应用于单个场景的点云可能是计算密集的(例如,消耗或利用大于数据处理系统115的计算或存储器容量的40%、50%、60%、70%、80%或更多)。SLAM可应用于分别由电动车辆105和110的传感器收集的点云数据以生成每个车辆的相应空间图。进程执行器125和进程执行器195中的每一者可分别在电动车辆105和110的空间图上运行应用程序。应用程序可以是驾驶员辅助系统(ADAS)任务。ADAS任务可包括碰撞避免、自适应巡航控制、车辆速度建议、紧急制动动作、自主停车、辅助停车、自主驾驶或辅助驾驶。
第一电动车辆105的进程分发器130可分析第二电动车辆110的当前空间图以识别在由第二电动车辆110的进程执行器125生成的空间图与由第二电动车辆110的进程执行器195生成的空间图之间的重叠程度。满足阈值的重叠可指示由进程执行器195生成的空间图的部分可用于构建由进程执行器125生成的空间图。响应于重叠满足阈值,第一电动车辆105的操作拆分器145可确定将生成第一电动车辆105的空间图的操作的执行拆分为由进程执行器125执行以生成空间图的第一部分的第一进程和由进程执行器195执行以生成空间图的第二部分的第二进程。无线电通信电路205可向第一电动车辆105的无线电通信电路150传输空间图的第二部分。进程执行器125可从无线电通信电路150接收空间图的第二部分。进程执行器125可将第一部分与第二部分结合以生成第一电动车辆105的全空间图。进程执行器125可在全空间图上运行一个或多个应用程序,例如自主驾驶、驾驶员辅助、辅助制动、碰撞避免。
在一些情况下,进程分发器130可在不确定重叠的情况下请求空间图的第二部分。例如,进程分发器130可假设第二电动车辆110具有或可计算空间图的第二部分。进程分发器130可响应于确定第二电动车辆110的位置或方向(例如,第二电动车辆110在沿与第一电动车辆105相同的方向行进的第一电动车辆105前方)而作出该假设。进程分发器130可向第二电动车辆110发送对空间图的第二部分的请求。进程执行器125可分析空间图的所接收的第二部分以识别出空间图中的一些丢失,例如第一部分。进程执行器125可响应于识别出从第二电动车辆110接收到的空间图丢失第一部分而生成第一部分。
在一些情况下,代替电动车辆105和110两者生成全空间图,可由电动车辆105和110中的每一者生成空间图的一部分。空间图的由第一电动车辆105生成的部分可以是空间图的对第一电动车辆105唯一且不与由第二电动车辆110的应用程序生成并使用的空间图重叠的部分(例如,非重叠部分)。第二电动车辆110可生成由第二电动车辆110的应用程序使用的空间图的一部分或全空间图。空间图的部分或全空间图可包括重叠部分。重叠部分可以是第二电动车辆110的空间图的与由第一电动车辆105的应用程序使用的空间图重叠的部分。第二电动车辆110可经由无线电通信电路205向第一电动车辆105传输第二电动车辆110的空间图的重叠部分。第一电动车辆105可将空间图的由第一电动车辆105生成的重叠部分与空间图的由第二电动车辆110生成的部分结合以生成全空间图。如果电动车辆105和110彼此密切接近,则电动车辆105和110的空间图的部分可重叠。对于全都密切接近的两个或更多个电动车辆(例如,大型电动车辆车队),考虑到空间图重叠的分布式处理可极大地减少电动车辆的处理消耗和电动车辆的电池功率消耗。
进程执行器125可执行第一进程以生成第一数据集。进程执行器195可执行第二进程以生成第二数据集。第一数据集和第二数据集可各自分别包括数据,诸如空间图、指示道路上的事故的数据、描述道路状况的数据、描述天气的数据、RADAR图、基于RADAR数据生成的天气图、交通模式图。第一数据集和第二数据集的至少一部分可重叠。进程分发器130可确定第一数据集和第二数据集重叠。进程分发器130可基于第一电动车辆105和第二电动车辆110的位置来确定第一数据集和第二数据集重叠。进程分发器130可基于在消息中从第二电动车辆110接收到数据集来确定数据集重叠。进程分发器130可将所接收的数据集与由进程执行器125生成的数据集进行比较以识别在这两个数据集之间的重叠程度。响应于确定第一数据集和第二数据集重叠,进程分发器130可确定将生成用于第一电动车辆105的全数据集的操作拆分为由第一电动车辆105的进程执行器125执行的第一进程和由进程执行器195执行的第二进程。
第一电动车辆105可经由无线电通信电路150从第二电动车辆110接收消息。无线电通信电路205可向无线电通信电路150传输消息。无线电通信电路150可向数据处理系统115的进程分发器130提供消息。数据处理系统155可包括进程分发器200。第一电动车辆105的进程分发器130和第二电动车辆110的进程分发器200可以是软件模块的相同实例或类似软件模块的实例。进程分发器130可识别由进程执行器125执行的操作。进程分发器130可识别可拆分为用于分布式处理的多个进程的操作。进程可以是计算任务或计算线程。操作可以是将SLAM应用于点云以生成空间图。进程分发器130可分析由进程执行器125执行或存储的各种操作的标签或标识符以确定该操作可被拆分为多个进程。标签或标识符可指示要拆分为多个进程的操作的资格。
进程分发器130可从消息分发器160接收消息。进程分发器130可包括车辆资格识别器135。车辆资格识别器135可确定第二电动车辆110是否有资格执行分布式处理。车辆资格识别器135可识别操作是否可由进程分发器130的操作拆分器145拆分并向第二电动车辆110传输。车辆资格识别器135可基于第二电动车辆110的被包括在消息中的标识符来识别第二电动车辆110的资格。车辆资格识别器135可将该标识符与和有资格执行分布式处理的电动车辆相关联的标识符集进行比较。例如,某些型号车辆或运行某些软件版本的车辆可有资格执行分布式处理,并且这些车辆的标识符可被包括在标识符集中。通过检查标识符以确定资格,车辆范围预测器140可防止车辆假冒或欺骗。
进程分发器130可包括车辆范围预测器140。进程分发器可预测在第一电动车辆105与第二电动车辆110之间的通信信道的持续时间满足阈值(例如,大于或等于阈值)。进程分发器130可基于该消息来预测通信信道的持续时间。响应于预测持续时间,进程分发器130可将通信信道的持续时间与阈值进行比较。车辆范围预测器140可基于第二电动车辆110的速度和第二电动车辆110的行进方向来确定、计算或预测通信信道的持续时间。车辆范围预测器140可基于相对于第一电动车辆105的速度和第一电动车辆105的行进方向的第二电动车辆110的速度和第二电动车辆110的行进方向来预测通信信道的持续时间。车辆范围预测器140可基于第二电动车辆110的海拔来预测通信信道的持续时间。车辆范围预测器140可基于相对于第一电动车辆105的海拔的第二电动车辆110的海拔来预测通信信道的持续时间。由车辆范围预测器140使用的速度、方向或海拔可被包括在从第二电动车辆110向第一电动车辆105传输的消息中。车辆范围预测器140可基于海拔来确定海拔差(例如,海拔差的绝对值)小于阈值。车辆范围预测器140可基于第一电动车辆105的传感器(例如,第一电动车辆105的相机系统、第一电动车辆105的无线电探测和测距(RADAR)系统、第一电动车辆105的光探测和测距(LIDAR)系统、第一电动车辆105的超声感测系统)来预测第二电动车辆110的速度和方向。
车辆范围预测器140可预测第一电动车辆105和第二电动车辆110将在彼此预定义距离内的时间长度。预定义距离可以是无线电通信电路150与无线电通信电路205通信的距离。车辆范围预测器140可确定在第一电动车辆105与第二电动车辆110之间的欧几里德距离。预定义距离可以是无线电通信电路150可以预定或期望服务质量(例如,延时、误码率、分组丢失、抖动或信噪比)与无线电通信电路205交换数据分组的距离。车辆范围预测器140可将时间长度与阈值时间长度进行比较。阈值时间长度可基于第二电动车辆110执行用于分布式处理的进程的预测时间长度。车辆范围预测器140可从数据处理系统115的进程执行器125接收所识别的操作的指示。车辆范围预测器140可分析操作或从拆分该操作产生的进程,以确定阈值时间长度。阈值时间长度可以是执行操作或从将该操作拆分为多个进程产生的进程的时间长度。车辆范围预测器140可基于第二电动车辆110的可用计算资源来确定阈值时间长度。车辆范围预测器140可基于第二车辆的可用计算资源来确定是否将操作拆分为第一进程和第二进程以用于由第一电动车辆105和第二电动车辆110进行分布式处理。车辆范围预测器140可从由无线电通信电路205向无线电通信电路150传输的消息识别可用计算资源。车辆范围预测器140可通过预测第二电动车辆110的可用计算资源执行操作或从将该操作拆分为多个进程产生的进程的时间长度来确定阈值时间长度。
车辆范围预测器140可识别执行要分发到第二电动车辆110的特定进程的阈值时间。车辆范围预测器140可预测在未来的阈值时间值处的第一电动车辆105的未来位置和第二电动车辆110的未来位置。车辆范围预测器140可基于第一电动车辆105和第二电动车辆110的所预测的未来位置来确定第一电动车辆105和第二电动车辆110隔开特定距离。车辆范围预测器140可将该距离与阈值距离进行比较。车辆范围预测器140可响应于预测距离满足阈值距离(例如,预测距离小于或等于阈值距离)而确定执行与第二电动车辆110的分布式处理。阈值距离可以是可发生通信的第一电动车辆105与第二电动车辆110之间的最大距离。阈值距离可以是可以可靠方式(例如,以特定信号强度或特定数据差错率)发生通信的第一电动车辆105与第二电动车辆110之间的特定距离。
操作拆分器145可基于从第二电动车辆110接收到的消息的时间戳来确定是否将操作拆分为用于由第一电动车辆105和第二电动车辆110进行的分布式处理的第一进程和第二进程。时间戳可指示生成了消息的时间。操作拆分器145可确定自生成了消息以来已经经过的时间量。操作拆分器可将时间量与阈值进行比较。响应于确定已经经过的时间量满足阈值,操作拆分器145可将操作拆分为第一进程和第二进程。时间长度满足阈值可指示消息是相对新的,并且可假设该消息的数据是准确的,例如,自生成了消息以来已经经过的时间量小于阈值。
操作拆分器145可基于由车辆范围预测器140作出的确定来确定将操作拆分为多个进程。例如,操作拆分器145可响应于车辆范围预测器140对通信信道的持续时间满足阈值的预测来确定拆分操作。操作拆分器145可将操作拆分为用于由第一电动车辆105和第二电动车辆110进行的分布式处理的第一进程和第二进程。操作拆分器145可识别向其分发操作的一组电动车辆。操作拆分器145可基于该组电动车辆中的车辆数量来将该操作拆分为特定数量的进程。例如,进程数量可等于电动车辆数量。操作拆分器145可通过生成包括操作的第一操作部分的第一进程(例如,第一计算作业)并生成包括操作的第二部分的第二进程(例如,第二计算作业)来拆分操作。无线电通信电路150可将第二进程与对执行第二进程的请求一起传输到第二电动车辆110。
操作拆分器145可生成由电动车辆存储的第一进程和由第二电动车辆110存储的第二进程的指示。指示可以是识别第一进程或第二进程的进程标识符。作为向第二电动车辆110传送第二进程本身的替代或补充,无线电通信电路150可向第二电动车辆110传输对执行第二进程的请求。请求可包括由第二电动车辆110存储的第二进程的标识符。第二电动车辆110可使用标识符来识别第二进程并执行第二进程。通过由第一电动车辆105传送进程的标识符而不是进程本身,可减少无线电通信带宽的使用。
第二电动车辆110的无线电通信电路205可接收由操作拆分器145拆分的进程。无线电通信电路205可从第二电动车辆110接收对执行进程的请求。请求可包括进程本身或进程的标识符。进程执行器195可执行从第一电动车辆105接收到的进程。如果进程已经由进程执行器195存储,则进程执行器195可使用从第一电动车辆105接收到的标识符来识别进程。响应于识别出该进程,进程执行器195可执行该进程。由进程执行器195存储的进程可以是在第二电动车辆110的制造或调配阶段期间加载到第二电动车辆110上的一件软件。进程可以是第二电动车辆110的操作,例如,SLAM操作、天气图生成操作、交通模式图操作、自主驾驶操作、驾驶员辅助操作、紧急制动操作、碰撞避免操作。由第二电动车辆110存储的进程可以是由第一电动车辆105先前分发到第二电动车辆110的进程。为了避免重复地从第一电动车辆105向第二电动车辆110传输进程,第二电动车辆110可将该进程持久地保存在存储设备中。在进程例如在第一分布式处理会话期间第一次从第一电动车辆105传输之后,第一电动车辆105可例如在第一分布式处理会话之后执行的第二分布式处理会话期间向第二电动车辆110发送对执行先前传输的进程的请求。
进程执行器195可执行进程以生成结果数据。结果数据可以是进程的结果。结果可以是空间图。结果可以是对第一电动车辆105的驾驶建议,例如改变车道、提高速度或降低速度。结果数据可以是操作将生成的结果的一部分。结果的与其他结果数据结合的部分可以是操作的结果。进程执行器125可通过执行由操作拆分器145拆分出的另一个进程来生成另一个结果数据。例如,对于由操作拆分器145拆分为第一进程和第二进程的操作,进程执行器125可执行第一进程,并且进程执行器195可执行第二进程。进程执行器125可通过执行第一进程来生成第一结果数据。进程执行器195可通过执行第二进程来生成第二结果数据。进程执行器195可经由无线电通信电路205向第一电动车辆105传输第二结果数据。进程执行器125可基于第一结果数据和第二结果数据来生成操作的结果。进程执行器125可将第一结果数据和第二结果数据结合到操作的结果中。第一结果数据可以是空间图的通过执行操作生成的第一部分。第二结果数据可以是空间图的通过执行操作生成的第二部分。结合第一结果数据和第二结果数据可生成空间图。
进程执行器125可确定进程执行器195在完成第二进程或返回第二进程的结果的过程中是否遇到错误。进程执行器125可生成自第二进程被分发到第二电动车辆110以用于分布式处理以来的时间。进程执行器125可将自第二进程被分发以来的时间与阈值时间进行比较。如果时间超过阈值时间,则进程执行器125可确定进程执行器195在完成第二进程或返回第二进程的结果的过程中遇到错误。响应于检测到错误,进程执行器125可完成第二进程。进程执行器125可将由进程执行器125执行的第二进程的结果与由进程执行器125执行的第一进程的结果结合。进程执行器125可基于预期第二进程要花费的时间长度来确定时间阈值。进程执行器125可将时间阈值确定为执行第二进程的预定时间(为进程执行器195提供完成第二进程的宽限期的时间量)和预期时间长度的和。
虽然图1提供了执行分布式处理的两个车辆的示例,但是该技术解决方案可使用两个或更多个车辆(例如,三个车辆、四个车辆、十个车辆、五十个车辆或任何其他数量的车辆)来执行分布式处理。例如,两个或更多个车辆可包括相同或类似的部件或功能来执行图1所绘的分布式处理。例如,在露营地处的多个车辆可一起工作以通过分布式处理来生成空间图。在作业现场的属于一个或多个建筑、采矿或林业公司的多个车辆可实现分布式处理。虽然在图1中将第一电动车辆105描述为向第二电动车辆110分发进程,但是第二电动车辆110可向第一电动车辆105分发要完成的进程。
第一电动车辆105还可通过第二电动车辆110向第三车辆分发进程。例如,第一电动车辆105可与第二电动车辆110处于视线通信中。不与第一电动车辆105处于视线通信中的第三车辆可与第二电动车辆110处于视线通信中。第一电动车辆105可经由第二电动车辆110与第三车辆连接。第一电动车辆105可将操作拆分为三个进程。第一进程可由第一电动车辆105执行。第二进程可被分发到第二电动车辆110以供第二电动车辆110执行。第三进程可被分发到第三车辆。第一电动车辆105可向第二电动车辆110传输第三进程。第二电动车辆110可向第三车辆传输第三进程。第三车辆可执行第三进程并生成结果。第三车辆可向第二电动车辆110传输结果。第二电动车辆110可向第一电动车辆105传输结果。
图2描绘了可包括RAN 255的系统210的示例,第一电动车辆105、第二电动车辆110和电动车辆240与该RAN通信。车辆240可包括车辆105或车辆110的一个或多个系统、部件或功能。RAN 225可包括一个或多个基站。基站可包括执行与第一电动车辆105、第二电动车辆110和电动车辆240的无线通信的天线。RAN 225可具有通信范围215。范围215可以是圆形形状、椭圆形形状、心形形状、自由形式形状。当第一电动车辆105、第二电动车辆110和电动车辆240在范围215内时,第一电动车辆105、第二电动车辆110和电动车辆240可分别与RAN225建立通信信道245、250和255。
RAN 225可将第一电动车辆105、第二电动车辆110和电动车辆240与远程计算系统220连接。远程计算系统220可以是经由互联网和核心网络与RAN连接的云计算系统。远程计算系统220可经由通信信道230与RAN 225通信。远程计算系统220可以是移动边缘计算(MEC)平台。第一电动车辆105、第二电动车辆110和电动车辆240可分别通过通信信道245、250和255经由与RAN的通信将计算操作卸载到远程计算系统220。
第一电动车辆105、第二电动车辆110和电动车辆240可各自执行本地应用程序。这些应用程序可以是ADAS应用程序或其他驾驶辅助特征。应用程序可在由远程计算系统220计算的空间图上运行。第一电动车辆105、第二电动车辆110和电动车辆240可传送经由第一电动车辆105、第二电动车辆110和电动车辆240的传感器收集的传感器数据。远程计算系统220可使用传感器数据来为第一电动车辆105、第二电动车辆110和电动车辆240中的每一者生成空间图。远程计算系统可将空间图传送到第一电动车辆105、第二电动车辆110和电动车辆240中的每一者。
图3描绘了系统300的示例,其中电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240分发操作。车辆240或320可包括车辆105或车辆110的一个或多个系统、部件或功能。在图3的示例中,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240在通信范围215外。当第一电动车辆105在RAN的通信范围215内时,第一电动车辆105可经由通信信道245执行与RAN的通信。第一电动车辆105可经由无线电通信电路150执行通信。该通信可使远程计算系统220执行用于第一电动车辆105的操作。第一电动车辆105可基于该通信来检测与RAN的通信问题。例如,第一电动车辆105(其正在行进远离RAN 225)可检测到第一电动车辆105不再在通信范围215内。响应于检测到通信问题,第一电动车辆105(例如,操作拆分器145)可确定将操作拆分为第一进程和第二进程以用于由第一电动车辆105和另一个电动车辆(例如,第二电动车辆110)进行分布式处理。第一电动车辆105可通过识别出消息是损坏的、尚未从RAN 225接收到响应、RAN 255的信号强度小于阈值来检测通信问题。
电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可在没有到RAN225的一致网络连接的区域中操作。例如,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可在RAN 225的范围215外的公园、露营地、田地或森林中越野行驶。电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可在RAN 225的范围215外的偏远道路上。电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可在RAN255外的作业现场。例如,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可位于矿山、工厂、太阳能板场、风车场、建筑工地。当电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240处于未接入RAN 225的位置时,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可确定分发操作以用于分布式进程。
电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可各自与电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240中的一者或多者共享进程。在一些情况下,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240的车载计算资源可能不足以同时执行用于生成空间图的SLAM和对空间图进行操作的ADAS任务,并且因此电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可分发操作来进行分布式处理。在一些情况下,电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240的车载计算资源足以同时执行用于生成空间图的SLAM和对空间图进行操作的ADAS任务,但是电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可分发操作来进行分布式处理以减少电池功率消耗或减少处理器或存储器利用。
电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可彼此传输消息。消息可指示相应车辆的速度、相应车辆的行进方向、相应车辆的可用计算资源。基于从电动车辆320接收到的消息,第一电动车辆105可确定在电动车辆320与第一电动车辆105之间的通信信道325的持续时间。在一些情况下,电动车辆320可基于从第一电动车辆105接收到的消息来确定通信信道325的持续时间。信道330还可具有基于在电动车辆320与第一电动车辆105之间的距离的延时。例如,电动车辆320或第一电动车辆105可将延时确定为十毫秒。
基于从第二电动车辆110接收到的消息,第一电动车辆105可确定在第二电动车辆110与第一电动车辆105之间的通信信道335的持续时间。在一些情况下,第二电动车辆110可基于从第一电动车辆105接收到的消息来确定通信信道335的持续时间。信道335还可具有基于在第一电动车辆105与第二电动车辆110之间的距离的延时340。例如,第一电动车辆105或第二电动车辆110可将延时340确定为二十毫秒。基于从电动车辆240接收到的消息,第二电动车辆110可确定在电动车辆240与第二电动车辆110之间的通信信道345的持续时间。电动车辆240可基于从第二电动车辆110接收到的消息来确定通信信道345的持续时间。信道330还可具有基于距离的延时350。例如,电动车辆320或第一电动车辆105可将延时350确定为十毫秒。
电动车辆320、第一电动车辆105、第二电动车辆110和电动车辆240可基于考虑到要分发的进程的预期运行时间、每个车辆的通信范围、车辆的行进速率和方向、在电动车辆之间的通信信道的持续时间和由在车辆间的地理空间距离引起的延时的优化分发进程来进行分布式处理。第一电动车辆105可响应于基于从电动车辆110和320接收到的消息识别出通信信道335具有比通信信道325长的持续时间而向第二电动车辆110而不是电动车辆320分发进程。此外,第一电动车辆105可响应于确定第一电动车辆105和第二电动车辆110正在沿相同方向行进而第一电动车辆105和电动车辆320正在沿相反方向行进来选择第二电动车辆110而非电动车辆320。优化可使第二电动车辆110优先于电动车辆320,即使通信信道335的延时大于通信信道325的延时也是如此,这是因为电动车辆正在沿相同方向行进。该优化可以是多因子模拟退火算法。
图4描绘了安装有至少一个电池组420的第一电动车辆105的示例横截面视图400。第一电动车辆105可包括电动卡车、电动运动型多用途车辆(SUV)、电动厢式货车、电动车辆、电动车、电动摩托车、电动滑板车、电动乘用车、电动客运或商用卡车、混合动力车辆或其他交通工具,诸如海上或空中交通工具、飞机、直升机、潜艇、轮船或无人机,以及其他可能性。电池组420还可用作能量存储系统以向建筑物诸如住宅或商业建筑物供电。第一电动车辆105可以是完全电动的或部分电动的(例如,插电式混合动力),并且进一步地,第一电动车辆105可以是完全自主的、部分自主的或无人驾驶的。第一电动车辆105也可以是人工操作的或非自主的。第一电动车辆105(诸如电动卡车或车辆)可包括车载电池组420、电池模块430或电池单元425以向电动车辆供电。第一电动车辆105可包括底盘405(例如,框架、内部框架或支撑结构)。底盘405可支撑第一电动车辆105的各种部件。底盘405可横跨第一电动车辆105的前部部分435(例如,发动机罩或盖部分)、车身部分440和后部部分445(例如,行李厢、有效载荷或后备厢部分)。电池组420可安装或放置在第一电动车辆105内。例如,电池组420可安装在第一电动车辆105的底盘405上的前部部分435、车身部分440或后部部分445中的一者或多者内。电池组420可包括或连接至少一个母线,例如集电器元件。例如,第一母线415和第二母线410可包括导电材料,以将电池组420或电池单元425与第一电动车辆105的其他电气部件连接或以其他方式电联接,以向第一电动车辆105的各种系统或部件供电。
图5是描绘第一车辆向第二车辆分发操作的示例方法500的流程图。方法500可由图1至图4和图8所绘的一个或多个系统或部件(包括例如第一电动车辆105或数据处理系统115)执行。方法500可由图1至图3所述的第二电动车辆110的一个或多个系统或部件执行。方法500可由图2至图3所述的电动车辆240的一个或多个系统或部件执行。方法500可由图3所述的电动车辆320的一个或多个系统或部件执行。方法500可包括动作505至535中的任何一个或多个动作。动作505至535可以各种次序执行并且不限于图5所示的次序。动作505识别操作。动作510接收指示通信信道的持续时间的数据。动作515计算通信信道的持续时间。动作520确定拆分操作。动作525向车辆传输进程。动作530从车辆接收进程的结果。动作535生成操作的结果。
在动作505处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)识别操作。该操作可以是用于车辆的资源密集型操作。资源密集型操作可执行SLAM以基于点云来生成空间图。点云可以是由车辆的传感器收集的数据。该操作可以是ADAS任务。ADAS任务可在空间图上执行。ADAS任务可包括碰撞避免、自适应巡航控制、车辆速度建议、紧急制动动作、自主停车或自主驾驶。
在动作510处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)接收指示通信信道的持续时间的数据。通信信道的持续时间可指示在第一车辆(例如,第一电动车辆105)与第二车辆(例如,第二电动车辆110)之间的通信信道的持续时间。该数据可包括第二车辆的速度、第二车辆的行进方向、第二车辆行进于的道路、第二车辆的航向、第二车辆行进到的目的地。第二车辆可生成包括该数据的消息并经由无线电通信电路(例如,无线电通信电路205)传输该消息。第一车辆可经由无线电通信电路(例如,无线电通信电路150)接收消息。可在不利用RAN(例如,RAN 225)的情况下车辆间传送消息。可经由侧行链路传送消息。第一车辆可从第一车辆的一个或多个传感器(例如,RADAR、LIDAR、超声传感器)接收数据。
在动作515处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)计算通信信道的持续时间。第一车辆(例如,第一电动车辆105)可基于在动作510处接收到的数据来计算、确定或预测通信信道的持续时间。第一车辆可确定第二车辆(例如,第二电动车辆110)相对于第一车辆的速度和方向。第一车辆和第二车辆的速度和方向可指示通信信道的持续时间。第一车辆可确定第二车辆正在以特定速度行进远离第一车辆(例如,两个车辆以不同速度沿相同方向行进或车辆沿不同方向行进),并且基于无线通信范围,第二车辆将在已经经过特定时间量之后处于范围外。第一车辆可基于第二进程来确定执行第二进程所需的时间长度。第一车辆可将执行进程所需的时间长度与阈值进行比较。阈值可以是通信信道的持续时间。第一车辆可基于时间长度满足阈值来确定将操作拆分为第一进程和第二进程以用于由第一车辆和第二车辆进行分布式处理。
在动作520处,方法500可包括车辆(例如,电动车辆105)的数据处理系统(例如,数据处理系统115)确定拆分在动作505处识别的操作。第一车辆可确定在动作515处预测的通信信道的持续时间满足阈值(例如,大于或等于阈值)。第一车辆可存储预定阈值。第一车辆可基于执行在动作505处识别的操作或执行该操作的一部分的时间长度来预测阈值。第一车辆可响应于确定阈值的持续时间满足阈值而确定拆分操作。第一车辆可确定将操作拆分为第一进程和第二进程以用于由第一车辆和第二车辆进行分布式处理。
在动作525处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)向车辆(例如,第二电动车辆110)传输进程。该进程可由第一车辆(例如,第一电动车辆105)的无线电通信电路(例如,无线电通信电路150)向第二车辆(例如,第二电动车辆110)的无线电通信电路(例如,无线电通信电路205)传输。第一车辆可响应于在动作530处确定拆分操作而确定向第二车辆传输进程。第一车辆可向第二车辆传输第二进程。第一车辆可保留第一进程并执行第一进程以生成第一结果。
在动作530处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)从车辆(例如,第二电动车辆110)接收进程的结果。接收动作525的传输的第二车辆(例如,第二电动车辆110)可执行进程。第二车辆可执行进程以生成结果数据。第二车辆可对输入数据执行进程。输入数据可由第二车辆存储或由第二车辆从第二车辆的一个或多个传感器收集。输入数据可由第二车辆从传输进程的车辆接收。例如,第二车辆可执行SLAM以基于点云来生成空间图。点云可由第二车辆存储或与由车辆传输的进程一起传输到第二车辆。响应于第二车辆完成进程,第二车辆可向第一车辆传输结果数据。第二车辆可经由无线电通信电路(例如,无线电通信电路205)向车辆的无线电通信电路(例如,无线电通信电路150)传输结果数据。第二车辆可经由车辆间通信协议传输结果。第二车辆可在不接入RAN的情况下直接向车辆传输结果。第二车辆可经由RAN传输结果。第二车辆可经由侧行链路向车辆传输结果。
在动作535处,方法500可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)生成操作的结果。车辆可通过将在动作530处接收到的结果与一个或多个其他结果结合来生成结果。例如,车辆可从另一个车辆接收另一个结果。例如,车辆可将操作拆分为两个进程。车辆可将第一进程分发到第二车辆并将第二进程分发到第三车辆。车辆可将从第二车辆接收到的第一进程的结果与从第三车辆接收到的第二进程的第二结果结合。车辆可执行第一进程本身并生成结果。车辆可接收结果并将结果结合在一起。车辆可用操作的结果执行附加操作。例如,操作的结果可以是通过跨车辆分发SLAM生成的空间图。车辆可执行消耗空间图的ADAS任务。ADAS任务的结果可以是用于控制车辆的控制决策。例如,基于控制决策,车辆可加速、减速、制动、发动、熄掉、操纵、切换车道、离开道路、切换驾驶模式、停放在停车位中。
图6是描绘第一车辆执行由第二车辆分发的操作的示例方法600的流程图。方法600可由图1至图3所述的第二电动车辆110的一个或多个系统或部件执行。方法600可由图1至图4和图8所述的第一电动车辆105的一个或多个系统或部件执行。方法600可由图2至图3所述的电动车辆240的一个或多个系统或部件执行。方法600可由图3所述的电动车辆305的一个或多个系统或部件执行。方法600可包括动作605至525中的任何一个或多个动作。动作605至625可以各种次序执行。动作605生成指示通信信道的持续时间的消息。动作610向车辆传输消息。动作615接收对执行进程的请求。动作620基于进程来生成结果数据。动作625传输结果数据。
在动作605处,方法600可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)生成指示通信信道的持续时间的消息。该消息可包括车辆的速度、车辆的行进方向、车辆正在行进于的道路、车辆正在驶向的目的地、车辆正在沿循的路线的指示。第二车辆(例如,第一电动车辆105)可使用消息的数据来确定通信信道的持续时间。通信信道的持续时间可指示车辆和第二车辆将能够基于它们的速度和方向来执行车辆间通信多长时间。通信信道的持续时间可指示在车辆与第二车辆之间的视线通信信道的长度。
在动作610处,方法600可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)向车辆(例如,第一电动车辆105)传输消息。车辆可经由无线电通信电路(例如,无线电通信电路205)传输消息。无线电通信电路可向第二车辆(例如,第一电动车辆105)的另一个无线电通信电路(例如,无线电通信电路150)传送消息。车辆可周期性地生成或传输消息。例如,车辆可每五秒传输一次消息。车辆可连续地或周期性地生成并广播消息。车辆可响应于在车辆与第二车辆之间发起通信信道而向第二车辆传输消息。车辆和第二车辆可通过交换识别信息、加密密钥、生成通信信道数据来发起通信信道。
在动作615处,方法600可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)接收对执行进程的请求。车辆可从第二车辆(例如,第一电动车辆105)接收请求。该请求可请求由车辆存储的进程由车辆执行。该请求可包括进程本身。第二车辆可确定在车辆与第二车辆之间的通信信道的持续时间满足阈值。响应于确定通信信道的持续时间满足阈值,车辆可将操作拆分为两个进程。第二车辆可向车辆传输进程中的一个进程。
在动作620处,方法600可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)基于进程来生成结果数据。车辆可执行进程以生成结果数据。车辆可识别由车辆存储的与请求相关联的进程。车辆可执行请求。车辆可收集用于执行进程的输入数据。车辆可从车辆的传感器(例如,RADAR、LIDAR、超声传感器)收集输入数据。车辆可接收输入数据作为请求的一部分。输入数据可由第二车辆(例如,第一电动车辆105)经由第二车辆的传感器收集。第二车辆可将输入数据与对执行进程的请求一起发送到车辆。车辆可用所接收的输入数据执行进程。进程可以是全或部分SLAM。SLAM可生成全或部分空间图。
在动作625处,方法600可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)传输结果数据。车辆可向第二车辆(例如,第一电动车辆105)传输结果数据。车辆可向传输在动作615处接收到的请求的车辆传输结果数据。车辆可经由无线电通信电路(例如,无线电通信电路205)传输结果数据。车辆可直接向第二车辆传输结果数据。例如,车辆可经由车辆间通信协议传输结果数据。例如,车辆可经由侧行链路传输结果数据。
图7是描绘第一车辆向第二车辆分发操作的示例方法的流程图。方法700可由图1至图4和图8所述的第一电动车辆105的一个或多个系统或部件执行。方法700可由图1至图3所述的第二电动车辆110的一个或多个系统或部件执行。方法700可由图2至图3所述的电动车辆240的一个或多个系统或部件执行。方法700可由图3所述的电动车辆305的一个或多个系统或部件执行。方法700可包括动作705至755中的任何一个或多个动作。动作705至755可以各种次序执行。动作705开始分发进程。动作710识别附近车辆。动作715交换凭据并确立资格。动作720将车辆添加到拒绝列表。动作725将车辆添加到允许列表。动作730交换消息。动作735执行优化算法。动作740选择车辆。动作745分发进程。动作750不分发进程。动作755返回结果。
在动作705处,方法700可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)开始分发进程。车辆可周期性地开始分发进程。车辆可响应于识别出操作被调度来执行而开始分发进程。例如,车辆可识别操作。操作可被调度来执行。车辆可基于操作的历史执行频率来识别调用该操作的可能性高。
在动作710处,方法700可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)识别附近车辆。车辆可用V2X协议识别附近车辆。无线电通信电路(例如,无线电通信电路150)可执行侧行链路并利用V2X协议来识别附近车辆(例如,第二电动车辆110)。
在动作715处,方法700可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)与第二车辆(例如,第二电动车辆110)交换凭据并确立车辆的资格。凭据可包括标识符、密钥、数字签名。车辆还可交换标识符,诸如型号标识符、软件版本、操作模式。操作模式可指示用户已经允许其车辆执行分布式处理。操作模式可指示用户已经禁止其车辆执行分布式处理。基于凭据,车辆可确定第二车辆是否有资格。车辆可将凭据与具有批准凭据的车辆的列表进行比较。车辆可分析标识符以确定第二车辆是否有资格进行分布式处理。
在动作720处,方法700可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)将第二车辆(例如,第二电动车辆110)添加到拒绝列表。拒绝列表可以是由第一电动车辆105存储的列表。拒绝列表可包括不被允许执行分布式处理的车辆的列表。拒绝列表可包括车辆不被允许与之执行分布式处理的车辆的列表。可基于在动作715处的凭据交换来将第二车辆添加到拒绝列表。
在动作725处,方法700可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)将第二车辆(例如,第二电动车辆110)添加到允许列表。允许列表可以是车辆可与之执行分布式处理的车辆的列表。允许列表上的车辆可具有所需的软件版本、用户批准或硬件来执行分布式处理。可基于在动作715处的凭据交换来将第二车辆添加到允许列表。
在动作730处,该方法可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)交换消息。车辆可与在动作725处更新的允许列表上的车辆传输消息。允许列表上的车辆可向车辆传输消息。消息可由消息分发器(例如,消息分发器120)生成。消息可指示允许列表上的每个车辆的速度、允许列表上的每个车辆的行进方向、允许列表上的每个车辆的位置、允许列表上的每个车辆的可用计算资源量。
在动作735处,该方法可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)执行优化算法。车辆可基于在动作730处接收到的消息的数据来执行优化算法。优化算法可选择允许列表上的车辆中的一个车辆。优化算法可选择满足一个或多个条件的车辆。优化算法可生成每个车辆的得分。最优得分可基于在车辆与允许列表上的每个车辆之间的通信信道的持续时间。
在动作740处,该方法可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)确定是否选择第二车辆(例如,第二电动车辆110)。车辆可响应于基于在动作735处执行的优化算法确定第二车辆处于最优路径中而选择第二车辆。车辆可选择具有最优得分的第二车辆。车辆可选择不与最优得分相关联的第二车辆。车辆可选择具有满足阈值的得分的第二车辆。车辆可基于所选择的车辆和车辆正在行进的速度和方向来选择第二车辆。所选择的车辆和车辆的速度和方向可指示在所选择的车辆与车辆之间的通信信道的持续时间。车辆可执行优化算法以选择与满足阈值的通信信道的持续时间相关联的车辆。阈值可基于预测所选择的车辆执行用于分布式处理的进程的时间长度。
在动作745处,该方法可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)分发进程。车辆可将操作拆分为第一进程和第二进程。第二进程可由车辆传输到第二车辆(例如,第二电动车辆110)以执行分布式处理。车辆可经由无线电通信电路(例如,无线电通信电路150)传输该进程。车辆可经由对等或车辆间通信协议传送进程。车辆可经由侧行链路传送进程。在动作750处,该方法可包括车辆(例如,第一电动车辆105)的数据处理系统(例如,数据处理系统115)不将进程分发到特定车辆。车辆可不将用于分布式处理的进程分发到在车辆与一个或多个车辆之间的通信信道的持续时间内不满足条件的一个或多个车辆。
在动作755处,该方法可包括车辆(例如,第二电动车辆110)的数据处理系统(例如,数据处理系统155)。车辆可执行所接收的进程。车辆可包括执行进程并生成结果的进程执行器(例如,进程执行器195)。结果数据可由车辆传输回分发车辆(例如,第一电动车辆105)。结果数据可经由车辆的无线电通信电路(例如,无线电通信电路205)传输到分发车辆的无线电通信电路(例如,无线电通信电路150)。结果可经由对等或车辆间通信协议(例如,侧行链路)传送。
图8描绘了数据处理系统115的示例框图。数据处理系统115可包括或可用于实现数据处理系统或其部件。数据处理系统115可包括用于传送信息的至少一个总线825或其他通信部件,以及耦接到总线825来处理信息的至少一个处理器830或处理电路。数据处理系统115可包括耦接到总线825来处理信息的一个或多个处理器830或处理电路。数据处理系统115可包括耦接到总线825来存储信息和将由处理器830执行的指令的至少一个主存储器810(诸如随机存取存储器(RAM)或其他动态存储装置)。主存储器810可用于在处理器830执行指令期间存储信息。数据处理系统115还可包括耦接到总线825来为处理器830存储静态信息和指令的至少一个只读存储器(ROM)815或其他静态存储装置。存储装置820(诸如固态装置、磁盘或光盘)可耦接到总线825以持久地存储信息和指令。
数据处理系统115可经由总线825耦接到显示器800诸如液晶显示器或有源矩阵显示器。显示器800可向用户(诸如第一电动车辆105的驾驶员或其他最终用户)显示信息。输入装置805(诸如键盘或语音接口)可耦接到总线825来向处理器830传送信息和命令。输入装置805可包括显示器800的触摸屏。输入装置805可包括光标控件(诸如鼠标、轨迹球或光标方向键)以用于向处理器830传送方向信息和命令选择,并用于控制显示器800上的光标移动。
本文所述的进程、系统和方法可由数据处理系统115响应于处理器830执行包括在主存储器810中的指令布置来实现。此类指令可从另一个计算机可读介质(诸如存储装置820)读入主存储器810。主存储器810中包含的指令布置的执行使得数据处理系统115执行本文所述的说明性进程。多处理布置中的一个或多个处理器可用于执行主存储器810中包含的指令。可以使用硬连线电路来代替软件指令或与软件指令以及本文描述的系统和方法相结合。本文描述的系统和方法不限于硬件电路和软件的任何特定组合。
尽管图8中已经描述了示例计算系统,但是包括本说明书中描述的操作的主题可在其他类型的数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括在本说明书中公开的结构及其结构等效物中或在它们中的一者或多者的组合中实现。
本文的一些描述强调了系统部件的各方面的结构独立性或这些系统部件的操作和职责的分组。执行类似整体操作的其他分组也在本申请的范围内。模块可以在硬件中实现或作为非暂态计算机可读存储介质上的计算机指令来实现,并且模块可以分布在各种硬件或基于计算机的部件上。
上面描述的系统可以提供这些部件中的任一个或每一个的多个部件,并且这些部件可以在独立系统上提供,或在分布式系统中的多个示例上提供。此外,上面描述的系统和方法可以作为一个或多个计算机可读程序或可执行指令来提供,该程序或可执行指令包含在一个或多个制品上或制品中。该制品可以是云存储、硬盘、CD-ROM、闪存存储器卡、PROM、RAM、ROM或磁带。一般来说,计算机可读程序可以用任何编程语言(诸如LISP、PERL、C、C++、C#、PROLOG)实现,或用任何字节代码语言(诸如JAVA)实现。软件程序或可执行指令可以作为目标代码存储在一个或多个制品上或制品中。
示例和非限制性模块实现元件包括提供本文确定的任何值的传感器、提供作为本文确定的值的前身的任何值的传感器、包括通信芯片、振荡晶体、通信链路、电缆、双绞线、同轴线路、屏蔽线路、发射器、接收器或收发器的数据链路或网络硬件、逻辑电路、硬连线逻辑电路、根据模块规范配置的处于特定非暂态的可重新配置逻辑电路、至少包括电、液压或气动致动器的任何致动器、螺线管、运算放大器、模拟控制元件(弹簧、滤波器、积分器、加法器、除法器、增益元件)或数字控制元件。
本说明书中描述的主题和操作可以在数字电子电路中实现,或在计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等效物,或在它们中的一个或多个的组合中实现。本说明书中描述的主题可以被实现为一个或多个计算机程序(例如一个或多个计算机程序指令电路),该一个或多个计算机程序被编码在一个或多个计算机存储介质上,用于由数据处理设备执行或控制数据处理设备的操作。替代地或另外地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,该信号被生成以编码信息,用于传输到合适的接收器设备,以由数据处理设备执行。计算机存储介质可以是或被包括在计算机可读存储装置、计算机可读存储基板、随机或串行存取存储器阵列或装置、或它们中的一者或多者的组合中。尽管计算机存储介质不是传播信号,但是计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是或被包括在一个或多个单独的部件或介质中(例如,多个CD、盘或包括云存储的其他存储装置)。本说明书中描述的操作可以被实现为由数据处理设备对存储在一个或多个计算机可读存储装置上或从其他源接收到的数据执行的操作。
术语“计算装置”、“部件”或“数据处理设备”等包含用于处理数据的各种设备、装置和机器,包括例如可编程处理器、计算机、片上系统或多个或前述的组合。该设备可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台操作时环境、虚拟机或它们中的一者或多者的组合的代码。该设备和执行环境可以实现各种不同的计算模型基础设施,诸如web服务、分布式计算和网格计算基础设施。
计算机程序(也称为程序、软件、软件应用程序、应用程序、脚本或代码)可以用任何形式的编程语言编写,包括编译或解译语言、声明或过程语言,并且可以以任何形式部署,包括作为独立程序或作为模块、部件、子例程、对象或适合在计算环境中使用的其他单元。计算机程序可以对应于文件系统中的文件。计算机程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或存储在多个协作文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署为在一个计算机或位于一个地点或分布在多个地点并且通过通信网络互连的多个计算机上执行。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过对输入数据进行操作并且生成输出来执行动作。过程和逻辑流程也可以由专用逻辑电路来执行,并且设备也可以被实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。适于存储计算机程序指令和数据的装置可以包括非易失性存储器、介质和存储装置,包括例如半导体存储装置,例如EPROM、EEPROM和闪存存储器装置;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CDROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路来补充或并入其中。
本文描述的主题可以在计算系统中实现,此计算系统包括后端部件,例如作为数据服务器,或包括中间件部件,例如应用服务器,或包括前端部件,例如具有图形用户接口或web浏览器的客户端计算机,用户可以通过此图形用户接口或web浏览器与本说明书中描述的主题的实现进行交互,或包括一个或多个此类后端、中间件或前端部件的组合。该系统的部件可以通过任何形式或介质的数字数据通信(例如通信网络)来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互联网(例如,因特网)和对等网络(例如,自组织对等网络)。
虽然操作在附图中以特定顺序描绘,但这些操作不需要以所示的特定顺序或按顺序执行,并且不需要执行所有示出的操作。本文所述的动作可以不同顺序执行。
现在已经描述了一些例示性具体实施,显然前述内容是例示性的而非限制性的,已经通过举例的方式呈现。具体地,虽然本文呈现的许多示例涉及方法动作或系统元件的特定组合,但这些动作和这些元件可以其他方式组合来实现相同目的。结合一个具体实施讨论的动作、元件和特征不旨在被排除在其他具体实施中的类似角色之外。
文本所用的措辞和术语是为了描述的目的,而不应被视为限制性的。本文中“包括”、“包含”、“具有”、“含有”、“涉及”、“特征在于”及其变型的使用意在涵盖其后列出的项目、其等同物和另外的项目,以及仅由其后列出的项目组成的另选具体实施。在一个具体实施中,本文所述的系统和方法由所述的元件、动作或部件中的一者、多于一者的每种组合或全部组成。
本文以单数形式提及的系统和方法的任何实现方式或元件或动作也可以包括包含多个这些元件的实现方式,并且本文中任何实现方式或元件或动作的任何复数形式也可以包括仅包含单个元件的实现方式。单数或复数形式的引用不旨在将当前所公开的系统或方法、其部件、动作或元件限制为单个或多个构造。对基于任何信息、动作或元件的任何动作或元件的引用可包括其中动作或元件至少部分地基于任何信息、动作或元件的具体实施。
本文所公开的任何具体实施可与任何其他具体实施或实施方案组合,并且对“具体实施”、“一些具体实施”、“一个具体实施”等的引用不一定是互相排斥,而是旨在指示结合具体实施描述的特定特征、结构或特性可包括在至少一个具体实施或实施方案中。本文所用的此类术语不一定全部指相同的具体实施。任何具体实施可以与本文所公开的方面和具体实施一致的任何方式包含地或排他地结合任何其他具体实施。
对“或”的引用可被解释为包含性的,使得使用“或”描述的任何术语可指示单个、多于一个和所有所述术语中的任一种情况。对术语的连接列表中的至少一者的引用可被解释为包含性的“或”,以指示单个、多于一个和所有所述术语中的任一种情况。例如,对“‘A’和‘B’中的至少一者”的引用可包括仅“A”、仅“B”以及“A”和“B”两者。与“包括”或其他开放式术语结合使用的此类引用可包括另外的项。
在附图、具体实施方式或任何权利要求中的技术特征后接附图标记的情况下,包括附图标记是为了增强附图、具体实施方式和权利要求书的可理解性。因此,有或没有附图标记对任何权利要求元件的范围都没有任何限制作用。
在实质上不脱离本文所公开的主题的教导内容和优点的情况下,可对所述元件和动作进行修改,诸如各种元件的大小、尺寸、结构、形状和比例、参数值、安装布置、材料的使用、颜色、取向的变化。例如,示出为一体形成的元件可由多个部分或元件构成,元件的位置可颠倒或以其他方式变化,并且分立元件的性质或数量或位置可改变或变化。在不脱离本公开的范围的情况下,还可在所公开的元件和操作的设计、操作条件和布置中进行其他替换、修改、改变和省略。
例如,本文所述的车辆可以是各种类型的车辆,例如内燃发动机车辆、混合动力车辆或电动车辆。例如,本文所述且附图所示的车辆可以是相同类型的车辆或不同类型的车辆。例如,本文所述的系统和方法可在内燃发动机车辆、混合动力车辆、电动车辆或它们的各种组合上实现。例如,本文所述的由第一车辆和第二车辆执行的操作可以是能够互换的,例如,第二车辆可执行参照第一车辆描述的操作并且第一车辆可执行参照第二车辆描述的操作。进一步的相对平行、垂直、竖直或其他定位或取向描述包括纯竖直、平行或垂直定位的+/-10%或+/-10度内的变化。除非另外明确指出,否则对“约”、“基本上”或其他程度术语的引用包括与给定测量值、单位或范围的+/-10%的变化。所联接的元件可彼此直接或通过居间元件电联接、机械联接或物理联接。因此,本文所述的系统和方法的范围由所附权利要求书而不是前述说明书来指示,并且落入权利要求书的等同物的含义和范围内的变化包含在其中。
Claims (20)
1.一种车辆的系统,所述系统包括:
用于执行以下操作的数据处理系统,所述数据处理系统包括耦接到存储器的一个或多个处理器:
识别能够由所述数据处理系统执行的操作;
计算在所述车辆与第二车辆之间的通信信道的持续时间并确定所述通信信道的所述持续时间大于或等于阈值;
响应于所述确定所述通信信道的所述持续时间大于或等于所述阈值而确定将所述操作拆分为第一进程和第二进程以用于由所述车辆和所述第二车辆进行分布式处理;以及
响应于所述确定将所述操作拆分而向所述第二车辆传输对执行所述第二进程的请求以使所述第二车辆执行所述第二进程。
2.根据权利要求1所述的系统,所述系统包括:
用于执行以下操作的所述数据处理系统:至少部分地基于所述第二车辆相对于所述车辆的速度和方向来确定所述通信信道的所述持续时间大于或等于所述阈值。
3.根据权利要求1所述的系统,其中所述通信信道包括视线通信。
4.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
基于车辆对车辆通信协议经由所述车辆的无线电模块向所述第二车辆传输对执行所述第二进程的所述请求。
5.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块从所述第二车辆接收消息,所述消息包括所述第二车辆的标识符;以及
基于所述第二车辆的所述标识符来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
6.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块执行与无线电区域网的通信以使远程计算系统执行所述操作;
基于所述通信来检测与所述无线电区域网的通信问题;以及
响应于检测到所述通信问题而确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
7.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块接收消息,所述消息包括所述第二车辆的执行所述第二进程的资格的指示;以及
基于所述第二车辆的执行所述第二进程的资格的所述指示来将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和第二车辆进行分布式处理。
8.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块从所述第二车辆接收消息,所述消息包括所述第二车辆的速度和所述第二车辆的行驶方向;以及
基于所述第二车辆的所述速度和所述第二车辆的所述行驶方向来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
9.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块从所述第二车辆接收消息,所述消息包括所述第二车辆的可用计算资源;以及
基于所述第二车辆的所述可用计算资源来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
10.根据权利要求1所述的系统,所述系统包括:
所述操作包括生成所述车辆的第一空间图;以及
所述数据处理系统被配置为:
经由所述车辆的无线电模块从所述第二车辆接收消息,所述消息包括由所述第二车辆生成的第二空间图,其中所述第一空间图和所述第二空间图的至少一部分重叠;以及
基于所述第二空间图来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
11.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电模块从所述第二车辆接收消息,其中所述消息还包括以下项中的至少一者:
所述第二车辆的位置;
所述第二车辆的标识符;
与所述消息相关联的时间戳;和
所述第二车辆的计算硬件的描述;以及
基于所述位置、所述标识符、所述时间戳和所述计算硬件的所述描述中的至少一者来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
12.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
经由所述车辆的无线电部件从所述第二车辆接收响应,所述响应包括所述第二进程的进程结果;以及
基于所述第二进程的所述进程结果和所述第一进程的另一个进程结果来生成结果。
13.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
确定所述第二车辆在完成所述第二进程或返回所述第二进程的结果的过程中遇到错误;以及
响应于确定所述第二车辆在完成所述第二进程或返回所述第二进程的所述结果的过程中遇到所述错误而执行所述第二进程。
14.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
确定所述车辆和所述第二车辆将处于视线通信中的时间长度;
执行所述时间长度与所述阈值的比较;以及
基于所述时间长度与所述阈值的所述比较来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
15.根据权利要求1所述的系统,所述系统包括用于执行以下操作的所述数据处理系统:
至少部分地基于执行所述操作的时间长度来设置所述阈值。
16.根据权利要求1所述的系统,所述系统包括:
所述操作被配置为执行以生成第一数据集,其中:
所述第二车辆执行第二操作以生成第二数据集;
所述第一数据集和所述第二数据集的至少一部分重叠;并且
所述第一进程或所述第二进程中的至少一者生成所述第一数据集和所述第二数据集重叠的所述部分。
17.一种方法,所述方法包括:
由包括耦接到存储器的一个或多个处理器的数据处理系统识别能够由所述数据处理系统执行的操作;
由所述数据处理系统计算在所述车辆与第二车辆之间的通信信道的持续时间并由所述数据处理系统确定所述通信信道的所述持续时间大于或等于阈值;
由所述数据处理系统响应于确定所述通信信道的所述持续时间大于或等于所述阈值而确定将所述操作拆分为第一进程和第二进程以用于由所述车辆和所述第二车辆进行分布式处理;以及
由所述数据处理系统响应于所述确定将所述操作拆分而向所述第二车辆传输对执行所述第二进程的请求以使所述第二车辆执行所述第二进程。
18.根据权利要求17所述的方法,所述方法包括:
由所述数据处理系统确定所述车辆和所述第二车辆处于视线通信中的时间长度;
由所述数据处理系统通过基于所述第二进程确定执行所述第二进程所需的时间长度来确定所述阈值;
由所述数据处理系统执行所述时间长度与所述阈值的比较;以及
由所述数据处理系统基于所述时间长度与所述阈值的所述比较来确定将所述操作拆分为所述第一进程和所述第二进程以用于由所述车辆和所述第二车辆进行分布式处理。
19.一种车辆的系统,所述系统包括:
用于执行以下操作的数据处理系统,所述数据处理系统包括耦接到存储器的一个或多个处理器:
生成包括数据的消息,所述消息指示在所述车辆与第二车辆之间的通信信道的持续时间;
向所述第二车辆传输所述消息;
从所述第二车辆接收对执行进程的请求,所述第二车辆将所述持续时间与阈值进行比较以确定向所述车辆发送所述请求;
通过执行所述进程来生成结果数据;以及
向所述第二车辆传输所述结果数据。
20.根据权利要求19所述的方法,所述方法包括具有以下项的所述消息:
所述第二车辆的位置;
所述第二车辆的标识符;
与所述消息相关联的时间戳;以及
所述第二车辆的计算硬件的描述。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/742,571 US11638133B1 (en) | 2022-05-12 | 2022-05-12 | Distributed processing system for vehicles |
US17/742,571 | 2022-05-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117062028A true CN117062028A (zh) | 2023-11-14 |
Family
ID=86059869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310514279.4A Pending CN117062028A (zh) | 2022-05-12 | 2023-05-09 | 用于车辆的分布式处理系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11638133B1 (zh) |
CN (1) | CN117062028A (zh) |
DE (1) | DE102023112016A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230032379A1 (en) * | 2021-07-29 | 2023-02-02 | GM Global Technology Operations LLC | System and method for connected vehicle weather sensing |
CN116208669B (zh) * | 2023-04-28 | 2023-06-30 | 湖南大学 | 基于智慧灯杆的车载异构网络协同任务卸载方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10332320B2 (en) * | 2017-04-17 | 2019-06-25 | Intel Corporation | Autonomous vehicle advanced sensing and response |
US11614962B2 (en) * | 2020-06-25 | 2023-03-28 | Toyota Motor Engineering & Manufacturing North America, Inc. | Scheduling vehicle task offloading and triggering a backoff period |
KR102497226B1 (ko) * | 2020-11-24 | 2023-02-07 | 인천대학교 산학협력단 | 자율주행 차량 애드혹 네트워크를 이용한 오프로딩 방법 |
CN113535261B (zh) * | 2021-07-05 | 2022-09-06 | 云南大学 | 基于边缘计算的车联网车辆集群任务卸载方法 |
-
2022
- 2022-05-12 US US17/742,571 patent/US11638133B1/en active Active
-
2023
- 2023-05-08 DE DE102023112016.6A patent/DE102023112016A1/de active Pending
- 2023-05-09 CN CN202310514279.4A patent/CN117062028A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US11638133B1 (en) | 2023-04-25 |
DE102023112016A1 (de) | 2023-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Mobile edge intelligence and computing for the internet of vehicles | |
CN109769207B (zh) | 一种移动设备动态组网分享算力的系统与方法 | |
Zhang et al. | Vehicular communication networks in the automated driving era | |
US20220227394A1 (en) | Autonomous Vehicle Operational Management | |
EP3694237B1 (en) | Anomaly mapping by vehicular micro clouds | |
CN112233424B (zh) | 一种车路协同的货车队列纵向控制方法、装置及系统 | |
CA3052954C (en) | Autonomous vehicle operational management including operating a partially observable markov decision process model instance | |
CN111436034B (zh) | 固定交通工具微云的按需形成 | |
CN110308716B (zh) | 一种基于集群的自动驾驶车辆的方法、装置及车辆 | |
CN117062028A (zh) | 用于车辆的分布式处理系统 | |
US20200257310A1 (en) | Method and system for determining autonomous vehicle (av) action based on vehicle and edge sensor data | |
CA3052953A1 (en) | Autonomous vehicle operational management blocking monitoring | |
CN111902782A (zh) | 集中式共享自主运载工具操作管理 | |
US10896609B2 (en) | Cooperative parking space search by a vehicular micro cloud | |
US11605298B2 (en) | Pedestrian navigation based on vehicular collaborative computing | |
US11486722B2 (en) | Vehicular edge server switching mechanism based on historical data and digital twin simulations | |
US11178247B2 (en) | Digital twin-based edge server switching decision | |
EP3678353B1 (en) | Matching a first connected device with a second connected device based on vehicle-to-everything v2x message variables | |
US11489792B2 (en) | Vehicular micro clouds for on-demand vehicle queue analysis | |
US11485377B2 (en) | Vehicular cooperative perception for identifying a connected vehicle to aid a pedestrian | |
KR20230124835A (ko) | 차량용 전자 장치 및 그 동작 방법 | |
US11916736B2 (en) | Reorganizing autonomous entities for improved vehicular micro cloud operation | |
Karimi et al. | Collaborative navigation systems for collision avoidance | |
US20200372417A1 (en) | On-Demand Travel Through a Transportation Network | |
US11172341B2 (en) | Mobility-aware assignment of computational sub-tasks in a vehicular cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |