Method and apparatus for driving, controller, vehicle and computer program product

The method uses forward and reverse mappings with a cascaded topology to efficiently identify the root cause of changes in driving system functionality, improving computational efficiency and safety.

WO2026156535A1PCT designated stage Publication Date: 2026-07-30BAYERISCHE MOTOREN WERKE AG +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
BAYERISCHE MOTOREN WERKE AG
Filing Date
2025-01-22
Publication Date
2026-07-30

AI Technical Summary

Technical Problem

Existing driving systems face challenges in identifying the root cause of changes in functionality due to complex relationships between sensing data items, making it difficult and time-consuming to determine the availability of target functions.

Method used

A method involving forward and reverse mappings is employed to determine the availability of a target function based on sensing data items, using a cascaded multilevel topology and mapping policies to identify the root cause of changes in availability.

Benefits of technology

Enables rapid and accurate identification of the root cause of changes in functionality, reducing computational complexity and enhancing functional safety by promptly addressing availability changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025073993_30072026_PF_FP_ABST
    Figure CN2025073993_30072026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed are a method and an apparatus for driving, a controller, a vehicle, and a computer program product. In the method, a plurality of sensing data items are obtained (202) from a plurality of sensing devices. A change of an availability of a target function of a driving system is determined (204) based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. In response to the availability of the target function being changed (206), a root cause of the change of the availability is determined (208) based on a reverse mapping from the availability of the target function to the plurality of sensing data items. In this way, the root cause of the change of the availability can be determined easily.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR DRIVING, CONTROLLER, VEHICLE AND COMPUTER PROGRAM PRODUCTFIELD

[0001] Embodiments of the present disclosure generally relate to driving assistance technology, and in particular, to a method and an apparatus for driving, a controller, a vehicle, and a computer program product.BACKGROUND

[0002] With the development of driving assistant technologies, modern vehicles have been equipped with various sensing devices. During the driving of a vehicle, diverse data items regarding the vehicle and its surroundings are collected by the various sensing devices. The various sensing devices may collaborate together with their collected data items to provide various functions for the assistance of the driving.SUMMARY

[0003] In general, embodiments of the present disclosure provide a solution for driving.

[0004] In a first aspect, there is provided a method for driving. The method comprises obtaining a plurality of sensing data items from a plurality of sensing devices. The method further comprises determining a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. The method further comprises determining, in response to the availability of the target function being changed, a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items. In some scenarios, a relationship between the sensing data items and the availability of the target function may be very complicated, and thus it may be really hard to identify the root cause of the change of the availability manually. Even if the root cause were identified manually, it would be quite time-consuming. By performing the reverse mapping, the method of the present disclosure can identify the root cause of the change of the availability easily.

[0005] In some embodiments of the first aspect, the method may further comprise associating qualifiers with the respective sensing data items. An individual qualifier may define an availability of an associated sensing data item. The forward mapping may define a relationship between the plurality of sensing data items and the availability of the target function based at least partly on the qualifiers. The associated qualifier can help to construct the forward mapping logically.

[0006] In some embodiments of the first aspect, the method may further comprise determining the forward mapping using a plurality of managers. The plurality of managers may be in a cascaded multilevel topology. An individual manager may perform a subfunction of the target function and determine an output qualifier of an output of the subfunction from an input of the subfunction and an input qualifier of the input. As mentioned above, in some scenarios, the relationship between the sensing data items and the availability of the target function may be very complicated, the cascaded multilevel topology can help to construct the forward mapping logically.

[0007] In some embodiments of the first aspect, the input of the subfunction performed by a manager at a first level of the topology may comprise at least one sensing data item, and the output qualifier of the output of the subfunction performed by a manager at a last level of the topology may indicate the availability of the target function. In this way, the sensing data items and the availability of the target function can be related to the topology.

[0008] In some embodiments of the first aspect, an individual subfunction may comprise a mapping policy, and the mapping policy may be used to determine the output qualifier of the output of the subfunction from the input of the subfunction and the input qualifier of the input.

[0009] In some embodiments of the first aspect, the mapping policy may comprise using the output qualifier of the output of the subfunction to indicate that the output is available, in response to the input qualifier of the input of the subfunction indicating that the input is available.

[0010] In some embodiments of the first aspect, the mapping policy may comprise using the output qualifier of the output of the subfunction to indicate that the output is unavailable, or partly available, in response to the input qualifier of the input of the subfunction indicating that the input is unavailable.

[0011] In some embodiments of the first aspect, the mapping policy may comprise using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on an operation result of the subfunction, in response to the input qualifier of the input of the subfunction indicating that the input is partly unavailable.

[0012] In some embodiments of the first aspect, the action of using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on the operation result of the subfunction may comprise using the output qualifier of the output of the subfunction to indicate that the output is available, in response to the operation result of the subfunction being completed.

[0013] In some embodiments of the first aspect, the action of using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on the operation result of the subfunction may comprise using the output qualifier of the output of the subfunction to indicate that the output is partly available, in response to the operation result of the subfunction being partly completed.

[0014] In some embodiments of the first aspect, the action of using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on the operation result of the subfunction may comprise using the output qualifier of the output of the subfunction to indicate that the output is unavailable, in response to the operation result of the subfunction being uncompleted.

[0015] In these embodiments, the mapping policy can help to construct the forward mapping logically and specifically.

[0016] In some embodiments of the first aspect, the availability may comprise at least one of: enabled, degraded, or disabled.

[0017] In some embodiments of the first aspect, the action of determining, in response to the availability of the target function being changed, the root cause of the change of the availability based on the reverse mapping from the availability of the target function to the plurality of sensing data items may comprise determining, in response to the availability of the target function being degraded, at least one candidate subfunction being partly completed for each level of the topology and from the last level to the first level; selecting, for each level of the topology, at least one target subfunction with an input qualifier being partly available or unavailable from the at least one candidate subfunction; and determining the input of the target subfunction at the first level with an input qualifier being partly available or unavailable as the root cause of a degraded availability of the target function. In this way, the root cause of the change of the availability can be identified correctly and easily by the reverse mapping of the topology.

[0018] In some embodiments of the first aspect, an individual subfunction of the target function may comprise a distinctive mapping policy with respect to other subfunctions of the target function. In this way, the mapping policy can be customized for the input and output of its corresponding subfunction.

[0019] In some embodiments of the first aspect, a subfunction of the target function may be reused as a subfunction of another function of the driving system. In this way, the storage resources for the target function can be reduced.

[0020] In some embodiments of the first aspect, the method may further comprise displaying the root cause of the change of the availability on a screen of the driving system. In this way, a user of the driving system can be aware of the root cause of the change clearly and promptly, and may take proper actions to the change of the availability in time.

[0021] In a second aspect, there is provided an apparatus for driving. The apparatus comprises an obtaining module, a first determination module and a second determination module. The obtaining module is configured to obtain a plurality of sensing data items from a plurality of sensing devices. The first determination module is configured to determine a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. The second determination module is configured to determine, in response to the availability of the target function being changed, a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items.

[0022] In a third aspect, there is provided a controller. The controller comprises at least one processor and a memory coupled to the at least one processor. The memory has instructions stored therein which, when executed by the processor, cause the controller to perform the method according to the first aspect of the present disclosure.

[0023] In a fourth aspect, there is provided a vehicle comprising a controller according to the third aspect of the present disclosure.

[0024] In a fifth aspect, there is provided a computer program product tangibly stored on a computer-readable medium and comprising machine-executable instructions. The machine-executable instructions, when executed, cause a machine to perform the method according to the first aspect of the present disclosure.

[0025] It is to be understood that the Summary section is not intended to identify key or essential features of embodiments of the present disclosure, nor is it intended to be used to limit the scope of the present disclosure. Other features of the present disclosure will become easily comprehensible through the following description.BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Some embodiments will now be described with reference to the accompanying drawings as below:

[0027] Fig. 1 illustrates a schematic diagram of an example environment in which embodiments of the present disclosure may be implemented;

[0028] Fig. 2 illustrates a flowchart of an example method for driving, in accordance with some embodiments of the present disclosure;

[0029] Fig. 3 illustrates an example of a forward mapping from the plurality of sensing data items to the availability of the target function, in accordance with some embodiments of the present disclosure;

[0030] Fig. 4 illustrates an example of a reverse mapping from the plurality of sensing data items to the availability of the target function, in accordance with some embodiments of the present disclosure;

[0031] Fig. 5 illustrates an example schematic diagram of a process of performing the forward mapping, in accordance with some embodiments of the present disclosure;

[0032] Fig. 6A illustrates an example schematic diagram of a mapping policy, in accordance with some embodiments of the present disclosure;

[0033] Fig. 6B illustrates an example schematic diagram of another mapping policy, in accordance with some embodiments of the present disclosure;

[0034] Fig. 6C illustrates an example schematic diagram of yet another mapping policy, in accordance with some embodiments of the present disclosure;

[0035] Fig. 7A illustrates an example schematic diagram of a process of performing the reverse mapping, in accordance with some embodiments of the present disclosure;

[0036] Fig. 7B illustrates an example flowchart of a process of performing the reverse mapping, in accordance with some embodiments of the present disclosure;

[0037] Fig. 8 illustrates another example schematic diagram of a process of performing the reverse mapping, in accordance with some embodiments of the present disclosure;

[0038] Fig. 9 illustrates a schematic block diagram of an example apparatus for driving in accordance with some embodiments of the present disclosure; and

[0039] Fig. 10 illustrates a schematic block diagram of a device that can be used to implement embodiments of the present disclosure.

[0040] Throughout all the drawings, the same or similar reference numerals represent the same or similar elements. It is to be understood that the drawings are provided only for illustration and may not be drawn to scale.DETAILED DESCRIPTION

[0041] The principle of the present disclosure will now be described with reference to some embodiments. It is to be understood that these embodiments are described only for the purpose of illustration and to help those skilled in the art to understand and implement the present disclosure, without suggesting any limitation as to the scope of the disclosure. The disclosure described herein can be implemented in various manners other than the ones described below.

[0042] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of the ordinary skills in the art to which this disclosure belongs.

[0043] References in the present disclosure to “one embodiment, ” “some embodiments, ” “an embodiment, ” and the like indicate that the embodiment described may include a particular feature, structure, or characteristic, but it is not necessary that every embodiment includes the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with some embodiments, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments, whether or not explicitly described.

[0044] It shall be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of embodiments. As used herein, the term “and / or” includes any and all combinations of one or more of the listed terms.

[0045] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting to embodiments. As used herein, the singular forms “a,” “an, ” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises, ” “comprising, ” “has, ” “having, ” “includes, ” and / or “including, ” when used herein, specify the presence of stated features, elements, and / or components, etc., but do not preclude the presence or addition of one or more other features, elements, components and / or combinations thereof.

[0046] A driving system, e.g., a driving assistant system, or an autonomous driving system, usually makes complex logical judgments based on various sensor data under various working conditions. For example, the driving system may determine whether a function of the driving system needs to be enabled, disabled, degraded, or upgraded, based on the sensor data. Because the function of the driving system may be implemented based on a lot of sensor data, when making logical judgments, the driving system needs to deal with many kinds of data combinations. This makes an algorithm of the logical judgments very complex, and thus requires a very high computing power of the driving system. If the algorithm of the logical judgments were not well designed, great challenge to the functional safety of the driving system may be brought in.

[0047] Further, as mentioned above, the function of the driving system may be implemented based on many kinds of data combinations. If an availability of the function is changed, it is hard to work out a root cause of the change from the many kinds of data combinations. In the context, the availability of the function refers to a realizable degree of the function.

[0048] In accordance with embodiments of the present disclosure, there is provided a solution for driving to solve at least the above problem. In the solution, a plurality of sensing data items are obtained from a plurality of sensing devices. A change of an availability of a target function of a driving system is determined based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. In response to the availability of the target function being changed, a root cause of the change of the availability is determined based on a reverse mapping from the availability of the target function to the plurality of sensing data items. With the solution of the present disclosure, the method of the present disclosure can identify the root cause of the change of the availability easily.

[0049] Principles and embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. Reference is now made to Fig. 1, which illustrates a schematic diagram of an example environment in which embodiments of the present disclosure may be implemented.

[0050] As shown in Fig. 1, the example environment may include a first vehicle 100A, a second vehicle 100B and a third vehicle 100C. A controller 130 for driving, in accordance with some embodiments of the present disclosure, may be implemented in the first vehicle 100A. The controller 130 may be connected wiredly or wirelessly to a first sensing device 110_1 and a second sensing device 110_2 on the first vehicle 100A. The first sensing device 110_1 and the second sensing device 110_2 may provide their sensing data to the controller 130. The first sensing device 110_1 and the second sensing device 110_2 are just illustrative, the first vehicle 100A may be equipped with more sensing devices. Based on the sensing data from the respective sensing devices, the controller 130 may control the first vehicle 100A to, for example, perform an adaptive cruising control function with a reference of the second vehicle 100B on lane 10A. If the adaptive cruising control function is degraded, the controller 130 may determine not to follow the second vehicle 100B. The controller 130 may decide to disable the adaptive cruising control function, or cause the vehicle 100A to drive on lane 10B and perform the adaptive cruising control function with a reference of the third vehicle 100C on lane 10B. The controller 130 will be described in more detail in connection with Fig. 10 below.

[0051] As used herein, a first vehicle 100A refers to any type of motorized vehicle that is capable of carrying persons and / or objects and is movable. The examples of the first vehicle 100A include but are not limited to cars, sport utility vehicles (SUVs) , buses, trucks, ships, boats, vessels, aircraft, hybrid cars, electric cars, plug-in hybrid electric cars, hydrogen-powered cars, and other alternative fuel cars (e.g., fuels from sources other than petroleum) . The embodiments of the present disclosure are not limited to a specific type of vehicles, but are generally applicable to any environment of a vehicle having a plurality of availabilities for a single function.

[0052] It is to be understood that the environment is described only for illustrative purposes. There may also be other devices, systems, or components that are not shown in the environment. For example, there may be additional information presentation components on the first vehicle 100A, such as a display for illustrating the root cause of the change of the availability.

[0053] Reference is now made to Fig. 2, which illustrates a flowchart of an example method 200 for driving, in accordance with some embodiments of the present disclosure. The example method 200 may be performed, for example, by the first vehicle 100A (e.g., by the controller 130 of the first vehicle 100A) shown in Fig. 1. It should be understood that the method 200 may also include additional actions not shown, and the scope of the present disclosure is not limited in this regard. The method 200 is described in detail below in connection with the example environment of Fig. 1.

[0054] At block 202, the method 200 obtains a plurality of sensing data items from a plurality of sensing devices. The plurality of sensing data items may be obtained during a driving of the first vehicle 100A, or may be obtained when the first vehicle 100A is parked. In a case that the example method 200 is performed by the controller 130 of the first vehicle 100A, the plurality of sensing data items may be sent to the controller 130 from the plurality of sensing devices respectively.

[0055] At block 204, the method 200 determines a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. In some embodiments, the availability of the target function may be determined based on the plurality of sensing data items and the forward mapping periodically, semi-persistently, or triggered by another function of the driving system. The availability obtained currently may be compared with an availability obtained previously. If the two availabilities are different, it is determined that a change of the availability occurs.

[0056] If the availability is not changed, i.e., the change of the availability does not occur, then the process goes back to block 202, to obtain new sensing data items. If the availability is changed ( “Y” at block 206) , then the process goes to block 208. At block 208, the method 200 determines a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items. It is noted that the reverse mapping is a reverse of the forward mapping. In the forward mapping, a first mapping direction is from the plurality of sensing data items to the availability of the target function. In the reverse mapping, a second mapping direction is from the availability of the target function to the plurality of sensing data items. The second mapping direction is opposite to the first mapping direction.

[0057] With the solution of the example method 200, the change of the availability of the target function can be noticed by utilizing the forward mapping promptly and easily. By utilizing the reverse mapping, the root cause of the change of the availability can be identified promptly and easily.

[0058] In some embodiments, the availability of the target function may comprise enabled, degraded, or disabled. If the availability of the target function is enabled, it means that the target function works normally. The confidence level of the target function is high. If the availability of the target function is degraded, it means that only a part of the target function may be performed, or the target function may not be performed all the time. The confidence level of the target function is medial. If the availability of the target function is disabled, it means that the target function works abnormally and should be suspended. The confidence level of the target function is low.

[0059] In an example, the change of the availability may be from enabled to degraded. In another example, the change of the availability may be from enabled to disable. In yet another example, the change of the availability may be from degraded to enabled. In still another example, the change of the availability may be from disabled to enabled.

[0060] In some embodiments, the method may further comprise associating qualifiers with the respective sensing data items. An individual qualifier may define an availability of an associated sensing data item. The availability of the sensing data item may be used as a confidence measure of the sensing data item. The availability of the sensing data item may include available, partly available, or unavailable. The forward mapping may define a relationship between the plurality of sensing data items and the availability of the target function based at least partly on the qualifiers.

[0061] Fig. 3 illustrates an example of a forward mapping from the plurality of sensing data items to the availability of the target function, in accordance with some embodiments of the present disclosure. In the example of Fig. 3, a first sensing device 310_1 may output a first sensing data item D1. A first qualifier Q1 is associated with the first sensing data item D1 to indicate the availability of the first sensing data item D1. A second sensing device 310_2 may output a second sensing data item D2. A second qualifier Q2 is associated with the second sensing data item D2 to indicate the availability of the second sensing data item D2. Similarly, a Mth sensing device 310_M may output a Mth sensing data item DM. A Mth qualifier QM is associated with the Mth sensing data item DM to indicate the availability of the Mth sensing data item DM. In some embodiments, the first qualifier Q1 is generated by the first sensing device 310_1. The second qualifier Q2 is generated by the second sensing device 310_2. Similarly, the Mth qualifier QM is generated by the Mth sensing device 310_M.

[0062] It is appreciated that the number of the sensing devices, i.e., M, is not limited by the present disclosure. M can be any integer number equal to or higher than 2. If M is equal to 2, the Mth sensing device 310_M is the second sensing device 310_2.

[0063] The first sensing data item D1 to the Mth sensing data item DM, and the first qualifier Q1 to the Mth qualifier QM may be used as inputs for the mapping. As illustrated by the arrows shown in a block 340, a forward mapping is utilized to derive an output qualifier QN1. The first qualifier Q1 to the Mth qualifier QM can help to construct the forward mapping logically. The dashed lines denote that the output qualifier QN1 of the forward mapping may not be derived from the inputs of the mapping directly. Instead, the output qualifier QN1 of the forward mapping may be derived from the inputs of the mapping via a plurality of unillustrated computing processes. In other words, the logical process to derive the output qualifier QN1 of the forward mapping are not limited by the embodiment of Fig. 3.

[0064] As shown in Fig. 3, the output qualifier QN1 of the forward mapping may be used to determine the availability of the target function, and the execution device 350 may utilize the availability of the target function to execute an instruction generated by the target function. The instruction may for example cause a corresponding mechanism to actuate. In an example, in a case that the availability of the target function is enabled, the execution device 350 may actuate the corresponding mechanism. In another example, in a case that the availability of the target function is disabled, the execution device 350 may not actuate the corresponding mechanism. In yet another example, in a case that the availability of the target function is degraded, the execution device 350 may actuate the corresponding mechanism in a degraded mode for instance.

[0065] Fig. 4 illustrates an example of a reverse mapping from the plurality of sensing data items to the availability of the target function, in accordance with some embodiments of the present disclosure. As shown in Fig. 4, after deriving the output qualifier QN1 of the forward mapping, the controller 130 may determine whether the availability of the target function is changed based on the output qualifier QN1 obtained currently and the output qualifier QN1 obtained previously. If the output qualifier QN1 obtained currently and the output qualifier QN1 obtained previously are different, it is determined that the availability of the target function is changed. If it is determined that the availability of the target function is changed ( “Y” at block 206) , then the output qualifier QN1 of the forward mapping may be used as an input of a reverse mapping. As mentioned above, the reverse mapping is just opposite to the forward mapping. A reverse logical process may be performed in block 340. As illustrated by the arrow shown in block 340, the reverse mapping is utilized to determine which sensing data item is a root cause of the change. Although only the second sensing data item D2 is illustrated as the root cause of the change in Fig. 4, it is noted that a combination of two or more sensing data items may be the root cause of the change.

[0066] In some embodiments, the method may further comprise determining the forward mapping using a plurality of managers. The plurality of managers may be in a cascaded multilevel topology. Reference is now made to Fig. 5, which illustrates the cascaded multilevel topology in block 340. An individual manager may perform a subfunction of the target function and determine an output qualifier of an output of the subfunction from an input of the subfunction and an input qualifier of the input.

[0067] In the example of Fig. 5, the topology has n levels. At a first level (an initial level) of the topology, four managers SF11, SF12, SF 13 and SF14 are illustrated. The input of the subfunction performed by the manager at the first level of the topology may include at least one sensing data item. It includes the first sensing data item D1 to the Mth sensing data item DM in the example of Fig. 5. If the at least one sensing data item is associated with a corresponding qualifier, the input of the subfunction may further include the qualifier. As illustrated, the first qualifier Q1 to the Mth qualifier QM are also the input of the subfunction performed by the manager at the first level.

[0068] In an example, the manager SF11 may execute a subfunction to obtain output data item D11 from the first sensing data item D1 and the second sensing data item D2, if applicable, as well as the first qualifier Q1 and the second qualifier Q2. The manager SF12 may execute a subfunction to obtain output data item D12 from the second sensing data item D2 and the Mth sensing data item DM, if applicable, as well as the second qualifier Q2 and the Mth qualifier QM. The manager SF13 may execute a subfunction to obtain output data item D13 from the first sensing data item D1 and the second sensing data item D2, if applicable, as well as the first qualifier Q1 and the second qualifier Q2. The manager SF14 may execute a subfunction to obtain output data item D14 from the Mth sensing data item DM, if applicable, as well as the Mth qualifier QM.

[0069] In some embodiments, an individual subfunction may comprise a mapping policy, and the mapping policy may be used to determine the output qualifier of the output of the subfunction from the input of the subfunction and the input qualifier of the input. In some embodiments, the mapping policy may be represented by a form of mapping matrix. In the example of Fig. 5, the manager SF11 determines, based on its mapping policy, an output qualifier Q11 of the output (i.e., D11) of the subfunction from the input (i.e., D1 and DM) of the subfunction and the input qualifier (i.e., Q1 and QM) of the input. The manager SF12 determines, based on its mapping policy, an output qualifier Q12 of the output (i.e., D12) of the subfunction from the input (i.e., D2 and DM) of the subfunction and the input qualifier (i.e., Q2 and QM) of the input. The manager SF13 determines, based on its mapping policy, an output qualifier Q13 of the output (i.e., D13) of the subfunction from the input (i.e., D1 and D2) of the subfunction and the input qualifier (i.e., Q1 and Q2) of the input. The manager SF14 determines, based on its mapping policy, an output qualifier Q14 of the output (i.e., D14) of the subfunction from the input (i.e., DM) of the subfunction and the input qualifier (i.e., QM) of the input.

[0070] In some embodiments, the mapping policy for one subfunction of the target function may be distinctive with respect to that for another subfunction of the target function. In this way, the mapping policy can be customized for the input and output of its corresponding subfunction.

[0071] At a second level (a next level of the initial level) of the topology, in the example of Fig. 5, three managers SF21, SF22, and SF23 are illustrated. The output of the manager SF11 at the first level is provided to the managers SF21 and SF23 at the second level. The output of the manager SF12 at the first level is provided to the managers SF21 and SF22 at the second level. The output of the manager SF13 at the first level is provided to the manager SF23 at the second level. The output of the manager SF14 at the first level is provided to the manager SF23 at the second level.

[0072] Although the number of the managers at the second level is illustrated as lower than the number of the managers at the first level in Fig. 5, it is noted that the number of the managers at the second level can be higher than or equal to the number of the managers. The number of the managers at each level of the topology is determined upon the specific application.

[0073] At a last level (a level at an end of the topology) , in the example of Fig. 5, one manager SFn are illustrated. The output qualifier QN1 of the output of the subfunction performed by the manager SFn may indicate the availability of the target function.

[0074] As mentioned above, in some scenarios, the relationship between the sensing data items and the availability of the target function may be very complicated, the cascaded multilevel topology can help to construct the forward mapping logically.

[0075] Fig. 6A illustrates an example schematic diagram of a mapping policy, in accordance with some embodiments of the present disclosure. If all the input qualifiers for one subfunction are labelled as available, it is considered that the input qualifier of the input of the subfunction indicates that the input is available. In this case, the output qualifier of the output of the subfunction is used to indicate that the output is available.

[0076] Fig. 6B illustrates an example schematic diagram of another mapping policy, in accordance with some embodiments of the present disclosure. If one of the input qualifiers for one subfunction is labelled as unavailable, it is considered that the input qualifier of the input of the subfunction indicates that the input is unavailable. In this case, if the subfunction is partly completed, the output qualifier of the output of the subfunction is used to indicate that the output is partly available. If the subfunction is uncompleted, the output qualifier of the output of the subfunction is used to indicate that the output is unavailable. When the input qualifier indicates that the input is unavailable, the subfunction would not be completed. Therefore, this case is not considered in Fig. 6B.

[0077] Fig. 6C illustrates an example schematic diagram of yet another mapping policy, in accordance with some embodiments of the present disclosure. If one of the input qualifiers for one subfunction is labelled as partly available and none of them is labelled as unavailable, it is considered that the input qualifier of the input of the subfunction indicates that the input is partly available. In this case, if the subfunction is completed, the output qualifier of the output of the subfunction is used to indicate that the output is available. If the subfunction is partly completed, the output qualifier of the output of the subfunction is used to indicate that the output is partly available. If the subfunction is uncompleted, the output qualifier of the output of the subfunction is used to indicate that the output is unavailable.

[0078] Fig. 7A illustrates an example schematic diagram of a process of performing the reverse mapping, in accordance with some embodiments of the present disclosure. In a case that the output qualifier QN1 of the forward mapping indicates the availability of the target function is changed, the output qualifier QN1 may be used as an input of the reverse mapping. In the example of Fig. 7A, the output qualifier QN1 may be used as an input of the manager SFn at the last level of the topology. The manager SFn may determine which input causes the output qualifier QN1 being changed. From the last level to the first level, the managers at each level perform a reverse operation with respect to the process of Fig. 5. For example, if the outputs of the managers SF21 and SF22 are determined as a cause of the output qualifier QN1 being changed, they may respectively determine which input causes the output qualifier QN1 being changed. As illustrated in Fig. 7A, the output of the manager SF12 may be determined as the cause of the output qualifier QN1 being changed. Then the manager SF12 may determine D2 and Q2 causes the output qualifier QN1 being changed. In this way, the root cause of the availability of the target function being changed can be found.

[0079] Reference is now made to Fig. 7B, which illustrates an example flowchart of a process of determining the root cause of the availability of the target function being degraded. The root cause may be determined based on the reverse mapping with a reference to Fig. 7A.

[0080] At block 702, the controller 130 determines whether the availability of the target function is degraded. If the availability of the target function is degraded ( “Y” at block 702) , then at block 704 each level of the topology is used as a target level. The order of using the target level is from the last level to the first level. The last level is used as the target level at the beginning of the process, and the first level is used as the target level at the end of the process.

[0081] At block 706, the controller 130 determines at least one candidate subfunction for the target level. The candidate subfunction is a subfunction which is partly completed. With a reference to Fig. 7A, when the target level is the last level, if the subfunction performed by the manager SFn is partly completed, it is determined as the candidate subfunction.

[0082] At block 708, the controller 130 selects, for the target level, at least one target subfunction from the at least one candidate subfunction. The input qualifier of the input of the selected target subfunction is partly available or unavailable. As mentioned above, if one of the input qualifiers for one subfunction is labelled as unavailable, it is considered that the input qualifier of the input of the subfunction indicates that the input is unavailable. If one of the input qualifiers for one subfunction is labelled as partly available and none of them is labelled as unavailable, it is considered that the input qualifier of the input of the subfunction indicates that the input is partly available.

[0083] At block 710, the controller 130 determines whether the target level is the first level. If the target level is not the first level ( “N” at block 710) , then the process goes back to block 704 to use a lower level as the target level. In some embodiments, if the target level is not the last level, the candidate subfunction may be selected from those which are related to the target subfunction determined at a higher level. At block 706, when the target level is the second level, if the subfunctions performed by the managers SF21 and SF22 are partly completed and related to the target subfunction determined at a third level, they are determined as the candidate subfunctions. When the target level is the first level, if the subfunction performed by the manager SF12 is partly completed and related to the target subfunction determined at the second level, it is determined as the candidate subfunction.

[0084] If the target level is the first level ( “Y” at block 710) , then at block 712 the controller 130 determines the input of the target subfunction at the first level with an input qualifier being partly available or unavailable as the root cause of a degraded availability of the target function. With a reference to Fig. 7A, if the second qualifier Q2 of the sensing data item D2 is partly available or unavailable, the sensing data item D2 is determined as the root cause of a degraded availability of the target function.

[0085] In this way, the root cause of the change of the availability can be identified correctly and easily by the reverse mapping of the topology.

[0086] In some embodiments, a subfunction of the target function may be reused as a subfunction of another function of the driving system. Fig. 8 illustrates the example of this case. In the example of Fig. 8, QN1 is an output qualifier of a first function, QN2 is an output qualifier of a second function, QNn is an output qualifier of a nth function. The subfunctions of the first function to the nth function may be mix-used in various combinations. In this way, the storage resources for the first function to the nth function can be reduced. It is noted that some embodiments of the present disclosure can be applicable to this complex topology as shown in Fig. 8. When applied, each function of the first function to the nth function is used as the target function. The way to figure out a root cause of an availability change of each function of the first function to the nth function can be the same as those discussed with reference to Figs. 2 to 7B.

[0087] In some embodiments, the method may further comprise displaying the root cause of the change of the availability on a screen of the driving system. In this way, a user of the driving system can be aware of the root cause of the change clearly and promptly, and may take proper actions to the change of the availability in time.

[0088] Reference is now made to Fig. 9, which illustrates a schematic block diagram of an example apparatus 900 for driving in accordance with some embodiments of the present disclosure. The apparatus 900 comprises an obtaining module 910, a first determination module 920, and a second determination module 930.

[0089] The obtaining module 910 is configured to obtain a plurality of sensing data items from a plurality of sensing devices. The first determination module 920 is configured to determine a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function. The second determination module 930 is configured to determine, in response to the availability of the target function being changed, a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items.

[0090] Reference is made to FIG. 10, which illustrates a block diagram illustrating a controller 1000 in accordance with some embodiments of the present disclosure. As indicated, the controller 1000 includes a central processing unit (CPU) 1001, which can execute various appropriate actions and processing based on the computer program instructions stored in a read-only memory (ROM) 1002 or the computer program instructions loaded into a random-access memory (RAM) 1003 from a storage unit. The RAM 1003 also stores all kinds of programs and data required by operating the controller 1000. CPU 1001, ROM 1002 and RAM 1003 are connected to each other via a bus 1004, to which an input / output (I / O) interface 1005 is also connected.

[0091] Each procedure and processing described above, such as the method 200, can be executed by a processing unit 1001. For example, in some embodiments, the method 200 can be implemented as computer software programs, which are tangibly included in a computer-readable medium, such as a storage unit. In some embodiments, the computer-readable medium is a non-transitory computer-readable medium. In some embodiments, the computer program can be partially or completely loaded and / or installed to the controller 1000 via the ROM 1002 and / or a communication unit. When the computer program is loaded to the RAM 1003 and executed by the CPU 1001, one or more steps of the above described method 200 are implemented. Alternatively, in other embodiments, the CPU 1001 may also be configured in any proper manner to implement the above process / method.

[0092] In some embodiments, the methods and processes described above may be implemented as a computer program product. The computer program product may include a computer-readable storage medium on which computer-readable program instructions for performing various aspects of the present disclosure are loaded.

[0093] The computer-readable storage medium may be a tangible device that may retain and store instructions used by an instruction-executing device. For example, the computer-readable storage medium may be, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: a portable computer disk, 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 mechanical coding device, for example, a punch card or a raised structure in a groove with instructions stored thereon, and any suitable combination of the foregoing. The computer-readable storage medium used herein is not to be interpreted as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber-optic cables) , or electrical signals transmitted through electrical wires.

[0094] The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to various computing / processing devices, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer-readable program instructions from a network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.

[0095] The flow charts and block diagrams in the drawings illustrate the architectures, functions, and operations of possible implementations of the devices, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow charts or block diagrams may represent a module, a program segment, or part of an instruction, and the module, program segment, or part of an instruction includes one or more executable instructions for implementing specified logical functions. In some alternative implementations, functions marked in the blocks may also occur in an order different from those marked in the accompanying drawings. For example, two consecutive blocks may in fact be executed substantially concurrently, and sometimes they may also be executed in a reverse order, depending on the functions involved. It should be further noted that each block in the block diagrams and / or flow charts, as well as a combination of blocks in the block diagrams and / or flow charts, may be implemented using a dedicated hardware-based system that executes specified functions or actions, or using a combination of special hardware and computer instructions.

[0096] Various embodiments of the present disclosure have been described above. The foregoing description is illustrative rather than exhaustive, and is not limited to the disclosed various embodiments. Numerous modifications and alterations are apparent to persons of ordinary skill in the art without departing from the scope and spirit of the illustrated embodiments. The selection of terms as used herein is intended to best explain the principles and practical applications of the various embodiments or the technical improvements to technologies on the market, or to enable other persons of ordinary skill in the art to understand the various embodiments disclosed herein.

Claims

1.A method (200) for driving, comprising:obtaining (202) a plurality of sensing data items from a plurality of sensing devices;determining (204) a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function; anddetermining (208) , in response to the availability of the target function being changed (206) , a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items.2.The method (200) of claim 1, further comprising:associating qualifiers with the respective sensing data items;wherein an individual qualifier defines an availability of an associated sensing data item, and the forward mapping defines a relationship between the plurality of sensing data items and the availability of the target function based at least partly on the qualifiers.3.The method (200) of claim 2, further comprising:determining the forward mapping using a plurality of managers;wherein the plurality of managers are in a cascaded multilevel topology, and an individual manager performs a subfunction of the target function and determines an output qualifier of an output of the subfunction from an input of the subfunction and an input qualifier of the input.4.The method (200) of claim 3, wherein the input of the subfunction performed by a manager at a first level of the topology comprise at least one sensing data item, and the output qualifier of the output of the subfunction performed by a manager at a last level of the topology indicates the availability of the target function.5.The method (200) of claim 4, wherein an individual subfunction comprises a mapping policy, and the mapping policy is used to determine the output qualifier of the output of the subfunction from the input of the subfunction and the input qualifier of the input.6.The method (200) of claim 5, wherein the mapping policy comprises at least one of:in response to the input qualifier of the input of the subfunction indicating that the input is available, using the output qualifier of the output of the subfunction to indicate that the output is available;in response to the input qualifier of the input of the subfunction indicating that the input is unavailable, using the output qualifier of the output of the subfunction to indicate that the output is unavailable, or partly available; orin response to the input qualifier of the input of the subfunction indicating that the input is partly unavailable, using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on an operation result of the subfunction.7.The method (200) of claim 6, wherein using the output qualifier of the output of the subfunction to indicate that the output is unavailable, partly available, or available, based on the operation result of the subfunction comprises at least one of:in response to the operation result of the subfunction being completed, using the output qualifier of the output of the subfunction to indicate that the output is available;in response to the operation result of the subfunction being partly completed, using the output qualifier of the output of the subfunction to indicate that the output is partly available; orin response to the operation result of the subfunction being uncompleted, using the output qualifier of the output of the subfunction to indicate that the output is unavailable.8.The method (200) of claim 7, wherein the availability comprises at least one of: enabled, degraded, or disabled;wherein determining, in response to the availability of the target function being changed, the root cause of the change of the availability based on the reverse mapping from the availability of the target function to the plurality of sensing data items comprises:in response to the availability of the target function being degraded, determining, for each level of the topology and from the last level to the first level, at least one candidate subfunction being partly completed;selecting, for each level of the topology, at least one target subfunction with an input qualifier being partly available or unavailable from the at least one candidate subfunction; anddetermining the input of the target subfunction at the first level with an input qualifier being partly available or unavailable as the root cause of a degraded availability of the target function.9.The method (200) of claim 5, wherein an individual subfunction of the target function comprises a distinctive mapping policy with respect to other subfunctions of the target function.10.The method (200) of claim 3, wherein a subfunction of the target function is reused as a subfunction of another function of the driving system.11.The method (200) of claim 1, further comprising:displaying the root cause of the change of the availability on a screen of the driving system.12.An apparatus (900) for driving, comprisingan obtaining module (910) , configured to obtain a plurality of sensing data items from a plurality of sensing devices;a first determination module (920) , configured to determine a change of an availability of a target function of a driving system based on the plurality of sensing data items and a forward mapping from the plurality of sensing data items to the availability of the target function; anda second determination module (930) , configured to determine, in response to the availability of the target function being changed, a root cause of the change of the availability based on a reverse mapping from the availability of the target function to the plurality of sensing data items.13.A controller (1000) comprising:at least one processor; anda memory coupled to the at least one processor and having instructions stored thereon, the instructions causing the controller to perform the method (200) according to any of claims 1 to 11 when executed by the at least one processor.14.A vehicle (100A) comprising a controller according to claim 13.15.A computer program product tangibly stored on a computer-readable medium and comprising machine-executable instructions, wherein the machine-executable instructions, when executed, cause a machine to perform the method (200) according to any of claims 1 to 11.