CN109388483A - 用于通过计算云卸载来支持关键任务应用的方法和设备 - Google Patents

用于通过计算云卸载来支持关键任务应用的方法和设备 Download PDF

Info

Publication number
CN109388483A
CN109388483A CN201810853072.9A CN201810853072A CN109388483A CN 109388483 A CN109388483 A CN 109388483A CN 201810853072 A CN201810853072 A CN 201810853072A CN 109388483 A CN109388483 A CN 109388483A
Authority
CN
China
Prior art keywords
task
calculating task
teleprocessing unit
embeded processor
vehicle
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
Application number
CN201810853072.9A
Other languages
English (en)
Inventor
F·白
S·萨米
M·奥塞拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of CN109388483A publication Critical patent/CN109388483A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0098Details of control systems ensuring comfort, safety or stability not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/06Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/06Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
    • B60W2050/065Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot by reducing the computational load on the digital processor of the control computer
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Hardware Redundancy (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种车辆、一种用于驾驶车辆的计算机系统和一种操作车辆的方法。车辆包括嵌入式处理器。嵌入式处理器接收指令以执行涉及车辆操作的计算任务以及将计算机任务卸载到远程处理器。远程处理器接收从嵌入式处理器卸载的计算任务,执行计算任务以获得部分结果,以及将部分结果提供给嵌入式处理器。嵌入式处理器从远程处理器提供的部分结果开始执行计算任务。

Description

用于通过计算云卸载来支持关键任务应用的方法和设备
引言
本主题公开涉及用于执行操作车辆时所涉及的计算任务的系统和方法,并且具体地,涉及用于共享在多个处理器之间操作车辆时所涉及的计算任务的系统和方法。
车辆的嵌入式处理器执行在操作车辆时所涉及的各种计算操作。一些计算操作可以是高度关键任务的,诸如对象感知和感测操作、车辆动态控制(例如,制动、转向、推进)等。诸如娱乐应用、用于仪表板操作的手势控制、路线规划等之类的其他计算操作对于车辆的操作并不是关键的,并且可以在嵌入式处理器具有可用资源时执行。由于车辆的寿命周期,嵌入式处理器可能需要运行10到15年。在此期间,预计将创建超过嵌入式处理器的当前容量的技术和程序。因此,希望提供一种用于将某些计算任务从嵌入式处理器卸载到远程处理器以确保车辆的安全和不间断运行的方法。
发明内容
在一个示例性实施例中,公开了一种操作车辆的方法。该方法包括:在车辆的嵌入式处理器处接收涉及车辆操作的计算任务;将计算任务从嵌入式处理器卸载到远程处理器;在远程处理器处执行计算任务以获得部分结果;将部分结果提供给嵌入式处理器;以及从远程处理器提供的部分结果开始,在嵌入式处理器处执行计算任务。
该方法还包括:在嵌入式处理器处确定用于计算任务的服务质量指标;在嵌入式处理器处确定用于在远程处理器处执行计算任务的执行参数;以及当远程处理器的执行参数满足用于计算任务的服务质量指标时,将计算任务从嵌入式处理器卸载到远程处理器。当远程处理器的执行参数不满足用于计算任务的服务质量指标时,在嵌入式处理器处执行计算任务。
服务质量指标是用于计算任务的可靠性指标、延迟指标和准确度指标中的至少一个。在一些实施例中,确定远程处理器的执行参数包括确定嵌入式处理器与远程处理器之间的通信链路的延迟。另外,当远程处理器执行计算任务时远程处理器的执行参数未能满足用于计算任务的服务质量指标时,在嵌入式处理器处执行计算任务。
在另一示例性实施例中,公开了一种用于驾驶车辆的计算机系统。该计算机系统包括车辆的嵌入式处理器和远程处理器。车辆的嵌入式处理器被配置为接收涉及车辆操作的计算任务以及卸载计算任务。远程处理器被配置为:接收从嵌入式处理器卸载的计算任务;执行计算任务以获得部分结果;以及将部分结果提供给嵌入式处理器。嵌入式处理器还被配置为利用由远程处理器提供的部分结果来执行计算任务。
嵌入式处理器还被配置为:确定用于计算任务的服务质量指标;确定用于在远程处理器处执行计算任务的执行参数;以及当远程处理器的执行参数满足用于计算任务的服务质量指标时,将计算任务卸载到远程处理器。当远程处理器的执行参数不满足用于任务的服务质量指标时,嵌入式处理器被配置为自己执行计算任务。
服务质量指标包括用于计算任务的可靠性指标、延迟指标和准确度指标中的至少一个。远程处理器的执行参数包括嵌入式处理器与远程处理器之间的通信链路的延迟。当远程处理器执行计算任务时远程处理器的执行参数未能满足用于计算任务的服务质量指标时,嵌入式处理器执行计算任务。在各个实施例中,远程处理器是云服务器、在车辆内携带的便携式处理器和/或另一车辆的嵌入式处理器。
在又一示例性实施例中,公开了一种车辆。该车辆包括嵌入式处理器。嵌入式处理器被配置为:接收指令以执行涉及车辆操作的计算任务;将计算机任务卸载到远程处理器;从远程处理器接收计算任务的部分结果;以及从远程处理器提供的部分结果开始执行计算任务。
嵌入式处理器还被配置为:确定用于计算任务的服务质量指标;确定用于在远程处理器处执行计算任务的远程处理器的执行参数;以及当远程处理器的执行参数满足用于计算任务的服务质量指标时,将计算任务卸载到远程处理器。嵌入式处理器还被配置为当远程处理器的执行参数不满足用于计算任务的服务质量指标时执行计算任务。
服务质量指标包括用于计算任务的可靠性指标、延迟指标和准确度指标中的至少一个。远程处理器的执行参数包括嵌入式处理器与远程处理器之间的通信链路的延迟。嵌入式处理器量化对于车辆的计算任务的任务关键性,并在相关的任务关键性满足选定标准时卸载计算任务。在各个实施例中,远程处理器是云服务器、在车辆内携带的便携式处理器和/或另一车辆的嵌入式处理器。
通过以下结合附图的详细描述,本公开的上述特征和优点以及其他特征和优点将变得显而易见。
附图说明
仅通过示例的方式,在以下详细描述中呈现其他特征、优点和细节,详细描述参考附图进行,其中:
图1示出了便于车辆操作的示例性计算机系统;
图2示出了示出图1的计算机系统的细节的示意图;
图3示出了对于运行到完成任务的感测误差与延迟的曲线图;
图4示出了对于非运行到完成任务的感测误差与延迟的曲线图;
图5示出了逐步计算非运行到完成任务的说明性“鱼眼”效果;
图6示出了在一个实施例中说明用于将计算任务卸载到远程处理器的决策过程的流程图;以及
图7示出了在关于在远程处理器处执行任务而发生故障的情况下说明用于执行任务的决策过程的流程图。
具体实施方式
以下描述本质上仅是示例性的,并不旨在限制本公开、其应用或用途。应该理解的是,在整个附图中,相应的附图标记表示相同或相应的部件和特征。
根据本公开的示例性实施例,图1示出了便于车辆102的操作的示例性计算机系统100。计算机系统100包括通过通信链路115与远程处理器120通信的车辆102。车辆102可以是由驾驶员操作的车辆或者可以是自动驾驶或无人驾驶车辆。车辆102包括处理器,在此称为嵌入式处理器104,其执行与操作车辆102有关的各种计算机程序、计算机功能或计算机任务。
车辆102还包括一个或多个环境传感器106,其可以获得关于车辆102的环境的各种测量值,诸如车辆周围环境中的各种物体的距离和速度。这些环境传感器106可以包括例如雷达、激光雷达和相机,其可用于测量各种物体相对于车辆102的距离、方向和/或速度。车辆102还包括一个或多个内部状态传感器108,用于获得关于车辆102或车辆部件的内部操作的测量值。例如,内部状态传感器108可以包括制动传感器、加速度传感器、确定方向盘转动的传感器或者感测涉及车辆基本操作(诸如推进、制动、转向等)的参数的其他传感器。内部状态传感器108还可以测量车辆102的不太关键任务方面,诸如路线图和规划、娱乐系统、空调水平等。在一个实施例中,由环境传感器106和内部状态传感器108获得的数据被发送到嵌入式处理器104,该嵌入式处理器处理数据以便确定车辆102要采取的动作,然后在车辆102处实施该动作。
车辆102还包括通信模块110,其在嵌入式处理器104与远程处理器120之间提供通信链路115。远程处理器120可以是远程服务器,通常称为云计算机或“云”。通信链路115可以是任何合适的无线通信信道,诸如蜂窝通信信道、射频通信信道等。在另一实施例中,远程处理器可以是便携式设备(诸如膝上型电脑、平板电脑、智能手机或者可以在车辆102的车厢内携带的其他便携式设备)的处理器120b。诸如蓝牙通信链路或无线通信链路之类的短程通信链路115b可以用于嵌入式处理器104与便携式设备120b之间的数据通信。在又一实施例中,远程计算机120可以是另一车辆130的处理器120c,而嵌入式处理器104和远程处理器120c通过车辆102与另一车辆130之间的通信链路115c进行通信。在各个实施例中,车辆102与另一车辆130之间的通信链路115c是可见光通信信道。
对嵌入式处理器104的要求可以根据车辆102的类型以及特定计算任务的关键性而变化。对于车辆102的安全操作而言任务越关键,对嵌入式处理器104的高服务质量的要求就越高。可以基于任务在嵌入式处理器104上或在执行任务的任何处理器上进行的服务质量要求来对任务进行分类。任务关键型任务对处理器提出了高服务质量要求。半任务关键型任务对处理器提出了中等服务质量要求。机会型任务对处理器提出了低服务质量要求。也可以使用对处理器限定其他服务质量要求的其他任务分类,但在此不明确地讨论。
例如,任务关键型任务包括:感知任务,诸如检测其他车辆和行人;用于关联来自不同传感器的信号的传感器融合;提供车辆的动态控制的诸如制动、转向、推进功能等之类的任务;短期轨迹规划;以及车辆102的可行驶空间的短期确定。
例如,半任务关键型任务可以包括:长期规划(例如,下一个或即将到来的路段的轨迹规划);基于已经由其他车辆或由嵌入详细地图中的静态物体感测的物体,进行长期可行驶空间确定;基于来自车载嵌入式领域的输入,进行诸如车道变换和转弯之类的长期战术驾驶决策;基于地图信息,在开始自动驾驶会话时进行静态路线规划;动态路线调整;车辆安全状态的连续计算(可以部分地基于来自嵌入式车辆感知功能的输入);安全监控(例如,连续检查以验证控制应用程序的正确性)以及监控驾驶员的状态。
例如,机会型任务包括:信息/娱乐应用卸载;以及动作识别和手势控制,其允许驾驶员在车辆的界面处执行手势,诸如以便选择无线电台。
为了使嵌入式处理器104能够为任务关键型任务提供高服务质量,本公开提供了一种在嵌入式处理器104与另一处理器(诸如云计算机120)之间共享任务的方法。该方法在嵌入式处理器104与远程处理器120之间适当地划分任务,从而不中断地执行用于车辆操作的任务关键型任务。任务的关键性可以由与任务相关联的服务质量指标来量化。示例性服务质量指标包括可靠性(α)、延迟(τ)和准确度(ε)。在此讨论各种计算任务及其服务质量指标。
感知任务检测车辆102的环境传感器范围内的静态物体和移动物体。这些任务对于确定车辆102的短期轨迹和控制车辆102的各种控制部件是时间关键的,以便提供车辆的安全运动。感知任务具有低延迟(τ)要求,这意味着感知任务需要快速且很少或没有延迟地执行。感知任务还要求高水平的可靠性(α)和高水平的准确度(ε)。
短期轨迹规划确定车辆要遵循的即时轨迹。由该短期规划确定的轨迹考虑了环境的现有情况(即,存在静态物体和/或移动物体)。该任务相对于在此讨论的其长期对应物通常以高频率执行。短期轨迹规划任务要求低延迟(τ)、高水平的可靠性(α)和高水平的准确度(ε)。
长期轨迹规划计划超出车辆感知和感测套件范围的距离内的路线和轨迹。长期轨迹规划不考虑在车辆传感器范围内检测到的物体,而是利用具有静态物体和车道信息的高清晰度地图,并且还可以利用关于由其他车辆检测到的移动物体或新检测到的静态物体的信息。当车辆处于长期轨迹规划期间确定的物体范围内时,短期规划可以调整长期规划的结果以便提供安全驾驶。长期轨迹规划任务允许高延迟(τ),但要求中等水平的可靠性(α)和中等水平的准确度(ε)。
安全状态计算任务计算车辆的安全状态并在需要时确定如何达到安全状态(例如,“安全轨迹”)。安全状态计算任务类似于长期规划任务。但是,安全状态计算任务计划在部件失效或系统故障的情况下应采取的措施。例如,安全状态计算可以涉及确定“最小风险条件”的计算。最小风险条件是针对国际自动机工程师学会J3016中的4级(高自动化)和5级(全自动化)定义的自动、无人驾驶和自动驾驶车辆的术语标准。安全状态计算任务允许高延迟(τ),要求高水平的可靠性(α)并且要求高水平的准确度(ε)。
车辆动态控制任务提供车辆的纵向和横向控制,以遵循由短期轨迹规划器或者在失效或故障情况下由安全状态轨迹提供的轨迹。车辆动态控制任务考虑由感知任务检测到的物体。车辆动态控制任务要求低延迟(τ)、高水平的可靠性(α)和高水平的准确度(ε)。
由于任务关键型任务的相对重要性,这些任务可以在嵌入式处理器104处执行,以便可以以及时方式完成它们。将这些任务发送到远程处理器可能会引入可能导致任务性能不佳的延迟和可靠性问题。另一方面,半任务关键型任务和机会型任务根据若干参数可以在远程处理器处执行,而不会干扰这些任务的性能。
图2示出了示出图1的计算机系统100的细节的示意图200。计算机系统包括通过通信信道115进行通信的本地或嵌入式处理器104和远程处理器120。
嵌入式处理器104操作可在嵌入式处理器104上执行的合适的操作系统202。操作系统202运行本地虚拟机204以模拟用于在车辆102处执行操作的操作系统,并运行远程虚拟机206以模拟与远程处理器120的操作系统230兼容的操作系统。准入控制模块208和资源分配模块210在虚拟机204和206上运行。准入控制模块208评估正在请求的任务是否可以由当前可用资源完成。如果否,则正在请求的任务可以由准入控制模块208直接拒绝,而无需进一步处理。如果准入控制模块208确定正在请求的任务可以利用可用资源完成,则系统进行后续步骤并将任务传递到资源分配模块210。资源分配模块210决定嵌入式处理器104处已经接收的计算任务是否可以卸载到远程处理器120。资源分配模块210可以做出静态决策或动态决策。静态决策基于关于资源和/或数据分配的预定规则。动态决策可以考虑诸如嵌入式处理器104与远程处理器120之间的当前连接质量、用于操作车辆102的计算机任务的关键性、嵌入式处理器104处的资源可用性、远程处理器120处的资源可用性等之类的因素。
准入控制模块208和资源分配模块210上方的层包括本地执行管理器212、服务质量(QoS)管理器214和运行时间卸载管理器216,它们在应用程序抽象层218下面一起工作。本地执行管理器212执行计算任务的输入和输出以及本地执行的计算任务的执行。
QoS管理器214对嵌入式处理器104与远程处理器120之间的各种连接性指标进行剖析。QoS管理器214包括应用剖析器220、CPU剖析器222和网络估计器224。应用剖析器220跟踪各种计算机任务/应用程序的服务质量指标。CPU剖析器222监控嵌入式处理器104的资源,以便能够确定嵌入式处理器104有效地处理所选任务/应用程序的能力。网络估计器224跟踪各种通信链路的连接性指标,诸如数据速率、连接稳定性、信道延迟等。
运行时间卸载管理器216执行决策过程以便确定哪些任务将由嵌入式处理器104的本地执行管理器212执行以及哪些任务可以卸载到远程处理器120。当任务可以卸载到远程处理器120时,运行时间卸载管理器216利用通信模块226将任务发送到远程处理器120。
远程处理器120包括运行合适的虚拟机仿真器232的操作系统230。在虚拟机上运行的卸载服务器234从嵌入式处理器104接收任务,执行从嵌入式处理器104接收的任务并将任务发送回嵌入式处理器104。在各个实施例中,远程处理器120可以将任务作为完成任务或作为部分完成任务发回。远程处理器120还包括应用程序抽象层236。
在嵌入式处理器104处执行的任务可以是运行到完成任务或非运行到完成任务。运行到完成任务通常包括任务关键型任务,诸如感测、感知和车辆控制任务。这些任务要么在完成之前运行,要么根本不运行。运行时间卸载管理器216基于用于任务的各种服务质量指标(诸如延迟(τ)、可靠性(α)和估计误差(ε))来决定是否可以将某个任务关键型任务分配给远程处理器120。等式(1)-(3)中示出了任务所需的各种执行参数的确定,分别如下:
在式(1)中,是用于(在嵌入式处理器或远程处理器上)计算第i个任务的预期延迟值。用于在嵌入式处理器处执行第i个任务的估计计算延迟由给出。因此,如果第i个任务仅在嵌入式处理器处执行,则式(1)右手侧的第一项计算预期延迟。用于在远程处理器处执行第i个任务的估计计算延迟由给出。项是用于通过具有带宽Ru的上载蜂窝链路上载第i个任务的数据量的估计延迟。项是用于通过具有带宽Rd的下载蜂窝链路下载第i个任务的数据量的估计延迟。因此,如果第i个任务仅在远程处理器处执行,则式(1)右手侧的第二项计算预期延迟。变量a(i,j)是二进制数(即,取0或1的值),其选择哪个处理器执行计算。值a(i,j)=1表示该任务在本地或嵌入式处理器上执行。值a(i,j)=0表示该任务在远程处理器上执行。当处理器的预期延迟值小于任务的延迟要求(即,对于所有a(i,j))时,则可以确定有足够的延迟可用于适应在嵌入式处理器或远程处理器上处理第i个任务。
在式(2)中,是用于由嵌入式处理器或远程处理器执行第i个任务的预期系统可靠性。当在嵌入式处理器处执行第i个任务时估计可靠性由给出。因此,式(2)右手侧的第一项计算仅在嵌入式处理器处执行第i个任务时提供的可靠性。用于在远程处理器处执行第i个任务的估计计算延迟由给出。变量p是表示与远程处理器的连接失败的概率的值。因此,式(2)右手侧的第二项(2)计算在远程处理器处执行第i个任务时提供的可靠性。当预期处理器可靠性大于所要求的任务可靠性(即,对于所有a(i,j))时,则可以确定在嵌入式处理器和远程处理器之间存在足够的可靠性以执行第i个任务。
在式(3)中,是预期估计误差,其可以归因于例如在向本地/远程处理器发送/捕获数据时发生的感测/检测误差。在嵌入式处理器处执行第i个任务时的估计误差由给出。用于在远程处理器处执行第i个任务的估计误差由给出。当预期处理器误差小于所要求的任务准确度(即,对于所有a(i,j))时,则可以确定存在由嵌入式处理器和远程处理器提供的足够准确度以执行第i个任务。
如果对于a(i,j)=1,执行参数满足服务质量指标(τ,α,ε)(即,如果对于a(i,j)=1,),则可以将任务发送到远程处理器并在远程处理器处执行。否则,将任务发送到嵌入式处理器并在嵌入式处理器处执行。
本地执行元组和远程执行元组的预测通过在嵌入式处理器和远程处理器处剖析先前任务执行情况来估计。可以基于先前远程执行情况在线更新本地执行元组和远程执行元组。它还可以基于与连接相关的操作环境进行参数化。
图3示出了对于运行到完成任务的感测误差与延迟的曲线图。运行到完成任务要求不暂停地完成任务。对于直到任务的执行时间τ0的时间段,任务的误差参数为高值。在执行时间τ0之后(即,在完成任务之后),误差参数下降到零或最小值。由于运行到完成任务的这些要求,这些任务通常在嵌入式处理器上运行。
图4示出了对于非运行到完成任务的感测误差与延迟的曲线图。非运行到完成任务可以在执行任务期间的不同时间暂停。感测误差随时间减小,如配对(τ1,ε1),(τ2,ε2)和(τ3,ε3)所示。这些任务可以逐步地或分阶段地执行,并且处理器可以在执行任务期间的任何时间或某些阶段结束时停止或终止。在不暂停任务的情况下可以行驶的越长,任务的感测误差就越好。另外,当任务恢复时,可以通过进一步处理从其先前值改善结果的质量。
对于无人驾驶,许多计算机任务可以被设计为非运行到完成任务。这些任务包括长期路径规划、长期战术驾驶会话规划、长期路线调整等。这些任务往往产生不立即需要的结果。然而,如果可以在较早的时间(即,在相比于时间τ3,在τ1)计算一般解决方案(诸如一般长期路线指令),则这种一般解决方案可以是可接受的。稍后,可以向驾驶员或车辆提供特定解决方案。在连接中断或云计算机故障的情况下,嵌入式控制器基于最后计算值有足够的时间达到安全状态,对于2级或3级驾驶自动化系统而言,这涉及请求人类驾驶员接管车辆的全面控制,并且对于4级和5级系统而言,这涉及改变系统中的模式以达到最小风险条件。
图5示出了逐步计算非运行到完成任务的说明性“鱼眼”效果。在时间τ1处发生的第一计算阶段x1结束时,处理器可以在第一半径(例如,500米)内提供良好结果(例如,路线规划)。在时间τ2处发生的第二计算阶段x2结束时,处理器可以在大于第一半径的第二半径(例如,1000米)内提供良好结果。在时间τ3处发生的第三计算阶段x3结束时,处理器可以在大于第二半径的第三半径(例如,1500米)内提供良好结果。因此,对于每个连续阶段,具有良好结果的距离增加到更大的半径。
在一个实施例中,远程处理器120可以分阶段地处理任务以在每个阶段结束时获得初步或部分结果。当远程处理器120到达所选阶段的末尾时,它可以将来自该阶段的初步或部分结果提供给嵌入式处理器104,并且嵌入式处理器104可以继续在车辆102处进行处理,这里是利用初步或部分结果并从获得初步或部分结果的点继续处理。因此,远程处理器120连续地向嵌入式处理器104提供初步或部分结果。当在远程处理器120处达到每个连续阶段时,远程处理器120将针对连续阶段的初步或部分结果提供给嵌入式处理器104,然后嵌入式处理器处理所接收的部分结果。给定足够的时间,嵌入式处理器104可以将任务处理为完成。以这种方式,大量计算从嵌入式处理器104卸载到远程处理器120。这种卸载减少或最小化在嵌入式处理器104处执行的计算量,从而释放车辆102处的计算和存储容量。
图6示出了在一个实施例中说明用于将计算任务卸载到远程处理器的决策过程的流程图600。在框602中,为计算任务确定服务质量指标(τ,α,ε)。在框604中,确定用于处理器的执行参数这种确定可以使用关于任务的先前执行情况的现有数据的分析,并且可以包括可变指标,诸如嵌入式处理器与远程处理器之间的连接性等。在框606中,在QoS指标与执行参数之间进行比较,以确定在远程处理器处处理任务是否满足任务的QoS指标。换句话说,对于a(i,j)=0,将执行参数与QoS指标进行比较。如果执行参数满足QoS指标,则在框608中将任务分配给远程处理器。否则,在框610中,运行时间卸载管理器216确定用于嵌入式处理器的执行参数是否满足任务的QoS指标。如果用于嵌入式处理器的执行参数确实满足QoS指标,则在框612中,在嵌入式处理器处执行任务。如果用于嵌入式处理器的执行参数不满足任务的QoS指标,则流程图转到不执行任务的框614。
图7示出了在当前正在远程处理器上执行任务并且嵌入式处理器与远程处理器之间的连接在任务中期丢失的情况下说明用于执行任务的决策过程的流程图700。在框702中,接收指示远程处理器不再满足用于计算任务的服务质量指标(延迟、可用性、可靠性)的信号。服务质量的损失可能是由于嵌入式处理器与远程处理器之间的连接丢失或者对远程处理器的额外要求。在框704中,本地控制器然后确定嵌入式处理器的资源是否足以在本地恢复任务的执行。如果资源在嵌入式处理器处可用,则流程图前进到框706。在框706中,在嵌入式处理器处执行任务。如果资源在嵌入式处理处不可用,则流程图前进到框708。在框708中,不在嵌入式处理器处执行任务。相反,嵌入式处理器启动允许车辆达到安全状态的缓解模式,这可能涉及请求人类驾驶员接管车辆的全面控制或改变车辆中的模式以自动地达到最小风险条件。对于非运行到完成任务,嵌入式处理器可以存储在远程处理器故障之前发生的任务的现有或缓冲结果。
虽然已经参考示例性实施例描述了以上公开内容,但是本领域技术人员将理解,在不背离其范围的情况下,可以进行各种改变并且可以用等同物替换其元件。另外,在不背离本发明的实质范围的情况下,可以进行许多修改以使特定情况或材料适应本公开的教导。因此,意图是本公开不限于所公开的特定实施例,而是将包括落入本申请范围内的所有实施例。

Claims (10)

1.一种操作车辆的方法,包括:
在所述车辆的嵌入式处理器处接收涉及所述车辆操作的计算任务;
将所述计算任务从所述嵌入式处理器卸载到所述远程处理器;
在所述远程处理器处执行所述计算任务以获得部分结果;
将所述部分结果提供给所述嵌入式处理器;以及
从所述远程处理器提供的部分结果开始,在所述嵌入式处理器处执行所述计算任务。
2.根据权利要求1所述的方法,还包括:
在所述嵌入式处理器处确定用于所述计算任务的服务质量指标;
在所述嵌入式处理器处确定用于在远程处理器处执行所述计算任务的执行参数;以及
当所述远程处理器的执行参数满足用于所述计算任务的服务质量指标时,将所述计算任务从所述嵌入式处理器卸载到所述远程处理器。
3.根据权利要求2所述的方法,还包括:当所述远程处理器的执行参数不满足用于所述计算任务的服务质量指标时,在所述嵌入式处理器处执行所述计算任务。
4.根据权利要求2所述的方法,其中,确定所述远程处理器的执行参数还包括确定所述嵌入式处理器与所述远程处理器之间的通信链路的延迟。
5.根据权利要求2所述的方法,还包括:当所述远程处理器执行所述计算任务时所述远程处理器的执行参数未能满足用于所述计算任务的服务质量指标时,在所述嵌入式处理器处执行所述计算任务。
6.一种用于驾驶车辆的计算机系统,包括:
所述车辆的嵌入式处理器,其被配置为:
接收涉及所述车辆操作的计算任务;及
卸载所述计算任务;以及
远程处理器,其被配置为:
接收从所述嵌入式处理器卸载的计算任务;
执行所述计算任务以获得部分结果;及
将所述部分结果提供给所述嵌入式处理器;
其中,所述嵌入式处理器还被配置为利用由所述远程处理器提供的部分结果来执行所述计算任务。
7.根据权利要求6所述的计算机系统,其中,所述嵌入式处理器还被配置为:
确定用于所述计算任务的服务质量指标;
确定用于在所述远程处理器处执行所述计算任务的执行参数;以及
当所述远程处理器的执行参数满足用于所述计算任务的服务质量指标时,将所述计算任务卸载到所述远程处理器。
8.根据权利要求7所述的计算机系统,其中,所述嵌入式处理器还被配置当所述远程处理器的执行参数不满足用于任务的服务质量指标时执行所述计算任务。
9.根据权利要求7所述的计算机系统,其中,所述远程处理器的执行参数还包括所述嵌入式处理器与所述远程处理器之间的通信链路的延迟。
10.根据权利要求7所述的计算机系统,其中,当所述远程处理器执行所述计算任务时所述远程处理器的执行参数未能满足用于所述计算任务的服务质量指标时,所述嵌入式处理器执行所述计算任务。
CN201810853072.9A 2017-08-14 2018-07-30 用于通过计算云卸载来支持关键任务应用的方法和设备 Pending CN109388483A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/676,299 US20190047581A1 (en) 2017-08-14 2017-08-14 Method and apparatus for supporting mission-critical applications via computational cloud offloading
US15/676299 2017-08-14

Publications (1)

Publication Number Publication Date
CN109388483A true CN109388483A (zh) 2019-02-26

Family

ID=65084731

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810853072.9A Pending CN109388483A (zh) 2017-08-14 2018-07-30 用于通过计算云卸载来支持关键任务应用的方法和设备

Country Status (3)

Country Link
US (1) US20190047581A1 (zh)
CN (1) CN109388483A (zh)
DE (1) DE102018119468A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113276831A (zh) * 2020-02-04 2021-08-20 丰田自动车株式会社 车辆控制装置、车辆控制方法以及车辆控制程序

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3071800B1 (fr) * 2017-09-29 2021-04-02 Psa Automobiles Sa Procede d’assistance a la conduite d’un vehicule lors d’une defaillance d’un reseau et systeme associe
US10855753B2 (en) * 2018-02-23 2020-12-01 Standard Cognition, Corp. Distributed computing of vehicle data by selecting a computation resource of a remote server that satisfies a selection policy for meeting resource requirements according to capability information
US10616340B2 (en) 2018-02-23 2020-04-07 Standard Cognition, Corp. Distributed computing of large data by selecting a computational resource of a remote server based on selection policies and data information wherein the selections policies are associated with location constraints, time constraints, and data type constraints
US10974727B2 (en) 2018-06-26 2021-04-13 Ford Global Technologies, Llc Transportation infrastructure communication and control
US10953871B2 (en) * 2018-06-26 2021-03-23 Ford Global Technologies, Llc Transportation infrastructure communication and control
DE102018009906A1 (de) * 2018-12-20 2020-06-25 Volkswagen Aktiengesellschaft Verfahren zum Management von Rechnerkapazitäten in einem Netzwerk mit mobilen Teilnehmern
US11383722B2 (en) * 2019-01-02 2022-07-12 Qualcomm Incorporated Methods and systems for managing interactions between vehicles with varying levels of autonomy
DE102019204922A1 (de) * 2019-04-05 2020-10-08 Volkswagen Aktiengesellschaft Fortbewegungsmittel und Verfahren zur Führung eines autonom fahrfähigen Fortbewegungsmittels im Falle einer Fehlfunktion
DE102019211173A1 (de) * 2019-07-26 2021-01-28 Robert Bosch Gmbh Verfahren und Vorrichtung zum Verwalten von Rechenleistung in einem Datenverarbeitungssystem
WO2021059601A1 (ja) * 2019-09-27 2021-04-01 アイシン・エィ・ダブリュ株式会社 運転支援装置及びコンピュータプログラム
US20210291851A1 (en) * 2020-03-23 2021-09-23 Toyota Motor Engineering & Manufacturing North America, Inc. Switching decision for vehicle computational offloading to roadside edge server
CN111800495B (zh) * 2020-06-30 2021-05-11 华北电力大学 一种车辆雾计算中的任务卸载方法
CN112685186B (zh) * 2021-01-08 2023-04-28 北京信息科技大学 一种计算任务的卸载方法、装置、电子设备及存储介质
US11924860B2 (en) * 2021-07-29 2024-03-05 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for offloading computing tasks from vehicles using characteristics
EP4377179A1 (en) * 2021-11-24 2024-06-05 Volkswagen Aktiengesellschaft Method for operating an autonomous driving vehicle
US20230185621A1 (en) * 2021-12-15 2023-06-15 Coupang Corp. Computer resource allocation systems and methods for optimizing computer implemented tasks
DE102022206923A1 (de) * 2022-07-06 2024-01-11 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Steuergerät zum Bestimmen eines Sicherheitsintegritätsniveaus einer sicherheitsbezogenen Fahrzeugfunktion eines Kraftfahrzeugs

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120053754A1 (en) * 2010-08-31 2012-03-01 Karen Pease Electronic communications and control module
CN103019837A (zh) * 2011-09-27 2013-04-03 中国移动通信集团公司 资源调度方法、装置及终端设备
CN103905337A (zh) * 2014-03-31 2014-07-02 华为技术有限公司 一种网络资源的处理装置、方法和系统
CN103914348A (zh) * 2013-01-03 2014-07-09 通用汽车环球科技运作有限责任公司 在实时处理器线程之间分配处理器加载的方法
CN105100500A (zh) * 2015-08-31 2015-11-25 电子科技大学 基于移动云计算的临界数据卸载方法
US20160286003A1 (en) * 2015-03-25 2016-09-29 Amazon Technologies, Inc. Using multiple protocols in a virtual desktop infrastructure
US20160380914A1 (en) * 2015-06-25 2016-12-29 Here Global B.V. Method and apparatus for providing resource load distribution for embedded systems

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8296419B1 (en) * 2009-03-31 2012-10-23 Amazon Technologies, Inc. Dynamically modifying a cluster of computing nodes used for distributed execution of a program
EP2450795A1 (en) * 2009-06-30 2012-05-09 Fujitsu Limited Computer device, parallel computer system, and synchronization program
JP5764525B2 (ja) * 2012-05-09 2015-08-19 株式会社日立製作所 無線システムの制御装置、および、制御方法
US9367357B2 (en) * 2013-01-18 2016-06-14 Nec Corporation Simultaneous scheduling of processes and offloading computation on many-core coprocessors
US10223147B2 (en) * 2016-08-19 2019-03-05 International Business Machines Corporation Resource allocation in high availability (HA) systems
US10768997B2 (en) * 2016-12-05 2020-09-08 International Business Machines Corporation Tail latency-based job offloading in load-balanced groups
US10332320B2 (en) * 2017-04-17 2019-06-25 Intel Corporation Autonomous vehicle advanced sensing and response

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120053754A1 (en) * 2010-08-31 2012-03-01 Karen Pease Electronic communications and control module
CN103019837A (zh) * 2011-09-27 2013-04-03 中国移动通信集团公司 资源调度方法、装置及终端设备
CN103914348A (zh) * 2013-01-03 2014-07-09 通用汽车环球科技运作有限责任公司 在实时处理器线程之间分配处理器加载的方法
CN103905337A (zh) * 2014-03-31 2014-07-02 华为技术有限公司 一种网络资源的处理装置、方法和系统
US20160286003A1 (en) * 2015-03-25 2016-09-29 Amazon Technologies, Inc. Using multiple protocols in a virtual desktop infrastructure
US20160380914A1 (en) * 2015-06-25 2016-12-29 Here Global B.V. Method and apparatus for providing resource load distribution for embedded systems
CN105100500A (zh) * 2015-08-31 2015-11-25 电子科技大学 基于移动云计算的临界数据卸载方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113276831A (zh) * 2020-02-04 2021-08-20 丰田自动车株式会社 车辆控制装置、车辆控制方法以及车辆控制程序

Also Published As

Publication number Publication date
DE102018119468A1 (de) 2019-02-14
US20190047581A1 (en) 2019-02-14

Similar Documents

Publication Publication Date Title
CN109388483A (zh) 用于通过计算云卸载来支持关键任务应用的方法和设备
US11062535B2 (en) Vehicle management system
US11807247B2 (en) Methods and systems for managing interactions between vehicles with varying levels of autonomy
JP7344120B2 (ja) 軌道生成および実行アーキテクチャ
US11151632B2 (en) Systems and methods for visual search and autonomous delivery
US11302031B2 (en) System, apparatus and method for indoor positioning
US9945679B2 (en) Personalized travel routes to reduce stress
US20170032067A1 (en) Automatic driver modeling for integration of human-controlled vehicles into an autonomous vehicle network
US10659382B2 (en) Vehicle security system
CN111357258B (zh) 用于交通工具应用程序编程接口的系统及方法
CN109131340A (zh) 基于驾驶员行为的主动车辆性能调整
CN106053879A (zh) 通过数据融合的失效操作的车辆速度估计
CA3047095C (en) Vehicle management system
CN111669727B (zh) 利用移动出行代理管理车辆
CN113183975B (zh) 自动驾驶车辆的控制方法、装置、设备以及存储介质
US20150317847A1 (en) Method and Apparatus for Predictive Driving Demand Modeling
US20190339083A1 (en) Method for Satellite-Based Detection of a Vehicle Location by Means of a Motion and Location Sensor
WO2018149901A1 (en) Route planning of a vessel
US20230419252A1 (en) Systems and methods for object replacement
CN109933813A (zh) 基于仿真的效率计算方法及装置、存储介质、电子设备
CN109827584A (zh) 路径规划方法、装置、电子设备与存储介质
CN113475107B (zh) 将云侧角色委派给设备的方法、系统和计算机可读存储介质
CN113052397B (zh) 上车信息的确定方法、装置、电子设备和存储介质
CN115675528A (zh) 基于相似场景挖掘的自动驾驶方法和车辆
CN114323693A (zh) 车路云感知系统的测试方法、装置、设备及存储介质

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190226

WD01 Invention patent application deemed withdrawn after publication