In a method of managing a plurality of computing paths in an artificial neural network (ANN) driven by a plurality of heterogeneous resources, resource information, preference level metrics, and a plurality of initial computing paths are obtained by performing an initialization. The resource information represents information associated with the heterogeneous resources. The preference level metrics represent a relationship between the heterogeneous resources and a plurality of operations. The initial computing paths represent computing paths predetermined for the operations. When a first event including at least one of the plurality of operations is to be performed, a first computing path for the first event is set based on the initial computing paths, the preference level metrics, resource environment, and operating environment. The resource environment represents whether the heterogeneous resources are available. The operating environment represents contexts of the ANN and at least one electronic device including the heterogeneous resources.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method of managing a plurality of computing paths in an artificial neural network (ANN) configured to be driven by a plurality of heterogeneous resources, the method comprising: obtaining resource information, preference level metrics, and a plurality of initial computing paths by performing an initialization, wherein the resource information represents information associated with the plurality of heterogeneous resources, the preference level metrics represent a relationship between the plurality of heterogeneous resources and a plurality of operations, and the plurality of initial computing paths represents computing paths predetermined for the plurality of operations; and setting a first computing path for a first event including at least one of the plurality of operations based on the plurality of initial computing paths, the preference level metrics, resource environment, and operating environment, when the first event is to be performed, wherein the resource environment represents whether the plurality of heterogeneous resources is available, and the operating environment represents contexts of the ANN and at least one electronic device including the plurality of heterogeneous resources. 2. The method of claim 1, wherein setting the first computing path for the first event comprises: determining a first computing resource based on a type of a first operation included in the first event; determining a first arithmetic algorithm for performing the first operation in the first computing resource; and determining a first communication resource based on a type of data processed by the first operation. 3. The method of claim 2, wherein the first computing resource is further determined based on the type of the data processed by the first operation. 4. The method of claim 2, wherein determining the first computing resource comprises: selecting a first resource that is available among the plurality of heterogeneous resources as the first computing resource. 5. The method of claim 4, wherein setting the first computing path for the first event further comprises: changing the first computing resource when the first resource is unavailable. 6. The method of claim 2, wherein setting the first computing path for the first event further comprises: changing the first computing resource when the operating environment is changed. 7. The method of claim 2, wherein setting the first computing path for the first event further comprises: determining a second computing resource based on a type of a second operation included in the first event; determining a second arithmetic algorithm for performing the second operation in the second computing resource; and determining a second communication resource based on a type of data processed by the second operation. 8. The method of claim 2, further comprising: setting a second computing path for a second event including at least one of the plurality of operations based on the plurality of initial computing paths, the preference level metrics, the resource environment, and the operating environment, when the second event is to be performed substantially simultaneously with the first event. 9. The method of claim 8, wherein setting the second computing path for the second event comprises: determining a second computing resource based on a type of a second operation included in the second event; determining a second arithmetic algorithm for performing the second operation in the second computing resource; and determining a second communication resource based on a type of data processed by the second operation. 10. The method of claim 9, further comprising: changing one of the first and second computing paths when the first and second computing paths at least partially overlap with each other. 11. The method of claim 10, wherein changing one of the first and second computing paths comprises: changing the first computing resource from a first resource to a second resource that is different from the first resource when the first resource is selected as both the first and second computing resources and the second event has a priority higher than that of the first event, wherein the plurality of heterogeneous resources includes the first and second resources. 12. The method of claim 11, wherein when the second event is completed at a first time point and the first event is completed at a second time point later than the first time point, changing one of the first and second computing paths further comprises: restoring the first computing resource from the second resource to the first resource after the first time point. 13. The method of claim 1, wherein the preference level metrics include an operation identification (ID), a class ID, a level ID, a resource ID, an arithmetic algorithm ID, and an implementation ID for each of the plurality of operations. 14. The method of claim 1, wherein the plurality of computing paths includes a first type of computing paths for preempting at least one of the plurality of heterogeneous resources, a second type of computing paths based on the resource environment and priorities of the plurality of heterogeneous resources, and a third type of computing paths for limiting some of the plurality of heterogeneous resources. 15. A system of managing a plurality of computing paths in an artificial neural network (ANN), the system comprising: a plurality of heterogeneous resources configured to drive the ANN; and at least one adaptive path manager configured to manage the plurality of computing paths in the ANN, wherein the at least one adaptive path manager is configured to obtain resource information, preference level metrics, and a plurality of initial computing paths by performing an initialization, wherein the resource information represents information associated with the plurality of heterogeneous resources, the preference level metrics represent a relationship between the plurality of heterogeneous resources and a plurality of operations, and the plurality of initial computing paths represents computing paths predetermined for the plurality of operations, wherein the at least one adaptive path manager is configured to set a first computing path for a first event including at least one of the plurality of operations based on the plurality of initial computing paths, the preference level metrics, resource environment, and operating environment, when the first event is to be performed, and wherein the resource environment represents whether the plurality of heterogeneous resources is available, and the operating environment represents contexts of the ANN and at least one electronic device including the plurality of heterogeneous resources. 16. A method of managing a plurality of computing paths in an artificial neural network (ANN) configured to be driven by a plurality of heterogeneous resources, the method comprising: obtaining resource information, preference level metrics, and a plurality of initial computing paths by performing an initialization, wherein the resource information represents information associated with the plurality of heterogeneous resources, the preference level metrics represents a relationship between the plurality of heterogeneous resources and a plurality of operations, and the plurality of initial computing paths represents computing paths predetermined for the plurality of operations; determining that a first trigger signal for a first event is activated and a second trigger signal for a second event is activated, wherein each of the first and second events include at least one of the plurality of operations to be performed; setting a first computing path for the first event and a second computing path for the second event based on the plurality of initial computing paths, the preference level metrics, resource environment, and operating environment, wherein the resource environment represents whether the plurality of heterogeneous resources is available, and the operating environment represents contexts of the ANN and at least one electronic device including the plurality of heterogeneous resources; and changing one of the first and second computing paths when the first and second computing paths at least partially overlap with each other. 17. The method of claim 16, wherein setting the first computing path for the first event comprises: determining a first computing resource based on a type of a first operation included in the first event; determining a first arithmetic algorithm for performing the first operation in the first computing resource; and determining a first communication resource based on a type of data processed by the first operation. 18. The method of claim 17, further comprising: determining whether the operating environment is changed; determining whether a change is required for the first computing resource; and changing the first computing resource when it is determined that the operating environment is changed and that the change is required for the first computing resource. 19. The method of claim 16, wherein changing one of the first and second computing paths comprises: determining that a first computing resource for the first event and a second computing resource for the second event are the same as each other; determining that the second event has a higher priority than the first event; changing the first computing resource from a first resource to a second resource that is different from the first resource; determining that the second event is completed before the first event is completed; and restoring the first computing resource to the first resource. 20. The method of claim 16, wherein the first event is performed in a loop until the first trigger signal is deactivated.