(19)
(11)EP 3 786 851 A1

(12)EUROPEAN PATENT APPLICATION

(43)Date of publication:
03.03.2021 Bulletin 2021/09

(21)Application number: 19210341.4

(22)Date of filing:  20.11.2019
(51)Int. Cl.: 
G06N 3/04  (2006.01)
G06N 3/08  (2006.01)
G06N 5/02  (2006.01)
(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR
Designated Extension States:
BA ME
Designated Validation States:
KH MA MD TN

(30)Priority: 29.08.2019 IN 201941034781

(71)Applicant: Siemens Aktiengesellschaft
80333 München (DE)

(72)Inventors:
  • Hildebrandt, Marcel
    81737 München (DE)
  • Mehta, Akhil
    80805 Munich (DE)
  • Mogoreanu, Serghei
    81827 München (DE)
  • Shyam Sunder, Swathi
    81549 München (DE)

  


(54)METHOD AND APPARATUS FOR PROVIDING RECOMMENDATIONS FOR COMPLETION OF AN ENGINEERING PROJECT


(57) The invention relates to a recommendation engine (1) to provide automatically recommendations for the completion of an engineering project, said recommendation engine (1) comprising: a first artificial intelligence, AI, module (1A) adapted to provide latent representations of a sequence of selected items; and a second artificial intelligence, AI, module (1B) adapted to process the latent representations of the sequence of selected items provided by said first artificial intelligence, AI, module (1A) to generate at least one sequence of complementary items required to complement the sequence of selected items to provide a complete sequence of items output via an interface (1C) as a recommendation to complete said engineering project.




Description


[0001] The invention relates to a method and apparatus for providing automatically recommendations for the completion of a complex engineering project, in particular an automation system.

[0002] An engineering project such as an automated system can be complex and comprise a multitude of different components. The configuration of the complex engineering projects may comprise an iterative process, in which a user incrementally selects components. The combination of these selected components can fulfill functional requirements of the engineering projects while being also compatible with one another. The configuration of a complex engineering process is not an easy task and requires time, effort, experience, and a certain amount of domain-specific knowledge to be completed correctly by a user.

[0003] Accordingly, it is an object of the present invention to provide a method and apparatus providing automatically recommendations for the completion of an engineering project.

[0004] This object is achieved according to a first aspect of the present invention by a recommendation engine comprising the features of claim 1.

[0005] The invention provides according to the first aspect a recommendation engine to provide automatically recommendations for the completion of an engineering project,
said recommendation engine comprising
a first artificial intelligence module adapted to provide latent representations of a set of items and
a second artificial intelligence module adapted to process the latent representations of the set of items provided by said first artificial intelligence module to generate at least one sequence of complementary items required to complement the set of items to provide a complete sequence of items output via an interface as a recommendation to complete said engineering project.

[0006] Providing recommendations for completing a partially configured engineering project reduces the time required to select components. Further, the process of selecting items associated with components of the engineering process can be performed by less experienced users with less domain-specific knowledge. The recommendation engine can be used for any kind of engineering project, in particular for different kinds of automated complex systems comprising a plurality of different components, i.e. hardware and/or software components.

[0007] In a possible embodiment of the recommendation engine according to the first aspect of the present invention, the items are selected from a set of available items corresponding to hardware and/or software components usable for the respective engineering project.

[0008] Each item can correspond to an associated hardware component such as a controller or to a software component such as an application program. Accordingly, the recommendation engine according to the present invention can be used for a wide range of different engineering projects encompassing not only hardware components but also software components.

[0009] The information about the order of selected items in the sequence provides additional contextual information supporting the completion of the required items for the respective engineering project.

[0010] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the set of selected items is stored at least temporarily in a memory connected to the recommendation engine. Consequently, loss of selected items can be avoided.

[0011] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the first artificial intelligence module comprises a trained feature learning module adapted to calculate the latent representations of the set of items.

[0012] Latent representations calculated by the first artificial intelligence module can encode technical information about the components of the engineering project.

[0013] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the second artificial intelligence module comprises a trained sequential model adapted to calculate at least one sequence of complementary items output as a recommendation to complete said engineering project.

[0014] The trained sequential model can exploit the temporal dependencies between items selected during engineering projects.

[0015] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the items are selected by a user via a user interface having a screen adapted to output available items to the user. This facilitates the selection of available items.

[0016] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, one or more sequences of complementary items generated by the second artificial intelligence module are output on the screen of the user interface for selection of a next item from one of the sequences of complementary items or for selection of one or more items (not necessarily appearing one after the other) from one of the sequences of complementary items or for selection of a whole sequence of complementary items by the user.

[0017] This provides the advantage that the user has a choice whether to select a single next item or the whole sequence of complementary items for finalizing the selection at once. Accordingly, there is an automation mechanism for auto-completion of a partially configured engineering project.

[0018] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the first artificial intelligence module and the second artificial intelligence module comprise artificial neural networks trained on technical features or properties of components and a plurality of sequences of previously selected items. The artificial intelligence modules can be trained on item features and historical click-stream data.

[0019] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the first artificial intelligence module comprises a trained autoencoder.

[0020] In an alternative embodiment of the recommendation engine according to the first aspect of the present invention, the first artificial intelligence module comprises a tensor factorization model.

[0021] Other artificial intelligence modules can be used comprising models capable of generating latent representations of items.

[0022] In a further possible embodiment of the recommendation engine according to the first aspect of the present invention, the second artificial intelligence module comprises a trained recurrent neural network.

[0023] In a further alternative embodiment of the recommendation engine according to the first aspect of the present invention, the second artificial intelligence module comprises a trained convolutional neural network.

[0024] The invention further provides according to a further aspect a computer-implemented method comprising the features of claim 11.

[0025] The invention provides according to the second aspect a computer-implemented method for providing automatically recommendations for the completion of an engineering project, the method comprising the steps of:

calculating by a first artificial intelligence module latent representations of a set of items,

processing by a second artificial intelligence module the latent representations of the set of items to generate at least one sequence of complementary items required to complete the set of items and

outputting via an interface the at least one sequence of complementary items as a recommendation to complete the engineering project.



[0026] In a possible embodiment of the computer-implemented method according to the second aspect of the present invention, one or more sequences of complementary items generated by the second artificial intelligence module are output on a screen of a user interface for selection of a next item from one of the sequences of complementary items or for selection of one or more items (not necessarily appearing one after the other) from one of the sequences of complementary items or for selection of a whole sequence of complementary items by the user.

[0027] In a further possible embodiment of the computer-implemented method according to the second aspect of the present invention, the selection of one of the complementary items or the selection of a whole sequence of complementary items by the user via the user interface triggers automatically an ordering command to order associated components for said engineering project.

[0028] This facilitates the provision of components required for the engineering project.

[0029] The invention further provides according to a further aspect a software tool comprising the features of claim 14.

[0030] The invention provides according to this aspect a software tool comprising a program code executable to perform the computer-implemented method according to the second aspect of the present invention.

[0031] The invention further provides according to a further aspect a platform comprising the features of claim 15.

[0032] The invention provides according to this aspect a platform comprising a recommendation engine according to the first aspect of the present invention.

[0033] The platform can comprise a cloud platform.

[0034] In the following, possible embodiments of the different aspects of the present invention are described in more detail with reference to the enclosed figures.
Fig. 1
shows a block diagram of a possible exemplary embodiment of a system including a recommendation engine according to the first aspect of the present invention;
Fig. 2
shows schematically possible sequences of complementary items output as recommendations to a user by a recommendation engine as illustrated in Fig. 1;
Fig. 3
shows a flowchart of a possible exemplary embodiment of a computer-implemented method for providing automatically recommendations for the completion of an engineering project according to a further aspect of the present invention.


[0035] As can be seen from the block diagram of Fig. 1, a recommendation engine 1 according to the first aspect of the present invention can form part of a system used to configure an engineering project such as an automated system. The automated system can comprise a plurality of hardware and/or software components. The recommendation engine 1 as illustrated in Fig. 1 comprises in the illustrated embodiment a first artificial intelligence module 1A and a second artificial intelligence module 1B. The first artificial intelligence module 1A is adapted to provide latent representations of a set of items. The second artificial intelligence module 1B is adapted to process the latent representations of the set of items provided by the first artificial intelligence module 1A to generate at least one sequence of complementary items. This sequence of complementary items is required to complement the set of items. To provide a complete sequence of items it can be output via an interface 1C of the recommendation engine 1 to complete the respective engineering project. In a possible embodiment, the items are selected from a set of available items wherein each available item does correspond to a hardware component and/or to a software component which can be used in the engineering project. In the embodiment illustrated in Fig. 1, the illustrated configuration system comprises a memory 2 connected to a user interface 3. The user interface 3 can be integrated in a user terminal or in a mobile user device. The set of selected items is stored at least temporarily in the memory 2 as shown in Fig. 1. The recommendation engine 1 has access to the memory 2 of the configuration system shown in Fig. 1. In the illustrated embodiment of Fig. 1, three selectable items I1, I2, I3 are selected one after the other at times t1, t2, t3 by the user U by means of the user interface 3. Accordingly, in this example, the set of selected items comprises a sequence of item I1 followed by item 12 followed by item 13. Each item I corresponds to a component of an engineering project. Each item I can comprise one or more item features. In a possible embodiment, the recommendation engine 1 has access to a database 4 storing item features of different items. Further, the recommendation engine 1 can have access to a further database 5 where a plurality of completed sequences of items are stored. Each item I corresponds to a hardware component such as a controller or a display panel. Each component can comprise one or more features or properties. For instance, a controller may comprise as technical features a supply voltage, a fail-safe compatibility or its power consumption. A display panel may comprise as technical features a supply voltage and the resolution of its screen.

[0036] The first artificial intelligence module 1A of the recommendation engine 1 can comprise in a possible embodiment a trained feature learning module adapted to calculate the latent representations of the set of items I stored in a selection basket of the memory 2 as shown in Fig. 1. Further, the second artificial intelligence module 1B of the recommendation engine 1 can comprise a trained sequential model adapted to calculate at least one sequence of complementary items output via the data interface 1C of the recommendation engine 1 to the user interface 3 of the user U. In a possible embodiment, the items I are selected by the user U via the user interface 3 having a screen adapted to output available items to the user. One or more sequences of complementary items generated by the second artificial intelligence module 1B can be displayed on the screen of the user interface 3 for selection of a next item from one of the sequences of complementary items or for selection of a whole sequence of complementary items by the user U. Further, it is possible that the user selects one or more items I which do not appear one after the other from one of the sequences of complementary items.

[0037] The first artificial intelligence module 1A as well as the second artificial intelligence module 1B can comprise artificial neural networks trained on technical features of components and trained on a plurality of sequences of previously selected items. In a possible embodiment, the first artificial intelligence module 1A can comprise a trained autoencoder. In an alternative embodiment, the first artificial intelligence module 1A comprises a tensor factorization model. In a preferred embodiment, the second artificial intelligence module 1B comprises a trained recurrent neural network RNN. The recurrent neural network RNN is designed to exploit the temporal dependencies between the selected items within the engineering project. Further artificial neural networks can also be used for the second artificial intelligence module 1B. In a possible embodiment, the second artificial intelligence module 1B comprises a trained convolutional neural network.

[0038] The recommendation system as illustrated in Fig. 1 comprises a recommendation engine 1 which can be used for completing an engineering project that is partially configured by a user U. The recommendation engine 1 reduces the time required for completing the configuration of the engineering project. The recommendation engine 1 exploits the sequential nature of the configuration process of an engineering project. It can also exploit the complex relationships between the underlying components for generating project completion suggestions or recommendations. The information about the order in which components or items have been introduced into the recommendation system 1 comprise contextual information for completing the respective engineering project based on historical examples of previously configured engineering projects for which the same information is available. Introducing the technical information about the components can additionally ensure their compatibility. Further, the information can be used as the basis for recommendation when there is not enough historical data available. The recommendation engine 1 according to the present invention can suggest to a user U the next item to be added to its engineering project. The recommendation engine 1 can also be used to provide automatic project completion, i.e. it can provide a sequence of items associated with components that remain to be added in order to fulfill all functional requirements of the engineering project. An automation mechanism can be installed for auto-completion of the partially configured engineering project.

[0039] Fig. 2 shows an example illustrating the operation of a recommendation engine 1 according to the present invention. In the example, the user U has performed a partial configuration of an engineering project such as an automated system by selecting consecutively three items I1, I2, I3 from the available items. Each item I corresponds to an associated component C usable in the engineering project. The partial configuration, i.e. the set of selected items I1, I2, I3 can be stored in the memory 2 of the recommendation system illustrated in Fig. 1. The set of selected items I1, I2, I3 is applied to the first artificial intelligence module 1A of the recommendation engine 1. The first artificial intelligence module 1A is adapted to provide latent representations of the set of selected items I1, I2, I3. Latent representations for the selected items can be calculated automatically by the trained first artificial intelligence module 1A. The second artificial intelligence module 1B receives the calculated latent representations of the set of selected items I1, I2, I3 provided by the first artificial intelligence module 1A. The second artificial intelligence module 1B can process the received latent representations of the set of selected items provided by the first artificial intelligence module 1A to calculate at least one sequence of complementary items required to complement the set of selected items I1, I2, I3 to provide a complete sequence of items required to complete the whole engineering project. In the illustrated example of Fig. 2, the second artificial intelligence module 1B does generate different sequences of complementary items to complete the engineering project. These different sequences of complementary items form different completion scenarios CompSc which can be output as recommendations to the user U. A first completion scenario recommendation CompSc1 comprises in the illustrated example of Fig. 2 items I11, I12, I13, I14, I15, I16. Accordingly, the first sequence of complementary items comprises six items I11 to I16 which can be selected by the user U to provide a complete sequence of items required to complete the already partially configured (p config) engineering project. A second completion scenario CompSc2 comprises a sequence of complementary items including items I21, I22, I23, I24. A third completion scenario CompSc3 comprises in the illustrated example a sequence of complementary items I31, I32, I33. Accordingly, after having selected the third item I3 at time t3 to provide a partial configuration (p config) of the engineering project, on request three different completion scenarios CompSc can be output via the user interface 3 to the user U as possible recommendations to complete the partially configured engineering project. The user U has now a choice either to select only a single item I of one of the recommended sequences of complementary items CompSc or to select one of the sequences of complementary items CompSc completely to finalize the whole engineering project. Different sequences of complementary items CompSc generated by the second artificial intelligence module 1B can be displayed on a screen of the user interface 3 for the selection by the user U. The user U may select using a selection command of a first type (e.g. clicking on item) a next single item I from one of the sequences of complementary items or may select with a selection command of a second type (e.g. clicking on CompSc) a whole sequence of complementary items. For example, the user U can select the first completion scenario CompSc1 as a whole to select automatically all remaining complementary items I11 to item I16 to complete the configuration of the engineering project. Alternatively, the user U may select completion scenario CompSc2 including four items I21, I22, I23, I24 or completion scenario CompSc3 including items I31, I32, I33. Alternatively, the user U can select with an associated selection command only a single item to continue iteratively the selection process. The selection of a single item can e.g. be performed by clicking on the displayed item. For instance, the user U may select only item I31 from the third displayed sequence of complementary items CompSc3 by clicking on item I31. In the illustrated example of Fig. 2, the user U can then select in the next step item I32 to get a further completion scenario CompSc4 displayed on the screen of the user interface 3 including items I41, I42, I43. In a further step, the user U may then select the whole completed scenario CompSc4 including the three items I41, I42, I43 to complete the engineering project or may select only the next single item of the third completion scenario CompSc3 (i.e. I33) or the next single item of the new completion scenario, i.e. I41 alone.

[0040] Fig. 3 shows a flowchart of a possible exemplary embodiment of a computer-implemented method according to the further aspect of the present invention. In the illustrated embodiment, the computer-implemented method is used for providing automatically recommendations for the completion of an engineering project, in particular an automated system comprising a plurality of hardware and/or software components. In the illustrated embodiment, the computer-implemented method comprises three main steps.

[0041] In a first step S1, latent representations of a set of items I are calculated by a first artificial intelligence module 1A.

[0042] In a further step S2, latent representations of the of items I are processed by a second artificial intelligence module 1B to generate at least one sequence of complementary items required to complete the sequence of selected items.

[0043] In a further step S3, the at least one sequence of complementary items are output as a recommendation to complete the engineering project. In the example as illustrated in Fig. 2, four sequences of complementary items forming different completion scenarios CompSc1 to CompSc4 can be output via a user interface 3 to a user U for further selection. In the illustrated example of Fig. 2, for the partial configuration at time t3, the first three completion scenarios CompSc1 to CompSc3 are displayed for selection. The fourth completion scenario CompSc4 is displayed after the user U has selected items I31 and items I32 in the third completion scenario CompSc3.

[0044] The first artificial intelligence module 1A calculates for each selected item I a latent representation which comprises a vector v for the different features of the associated component. The recommendation engine 1 of the recommendation system according to the present invention has the advantage that it is less reliant on manually defined rules. When provided with sufficiently rich contextual information and enough training examples, the recommendation system can discover substantially more complex dependencies among the components than those that can be specified by a domain expert. The performance of the recommendation system as illustrated in Fig. 1 comprising a recommendation engine 1 according to the first aspect of the present invention does improve with time based on the collected training data.

[0045] A further advantage of the recommendation system according to the present invention is that the system does not only provide recommendations to the user U explicitly but can also suggest to the user U on how to complete the full engineering project rather than just selecting the next item or component. The computer-implemented method as illustrated in the flowchart of Fig. 3 can be implemented in a software tool comprising a program code executable to perform the steps illustrated in Fig. 3.

[0046] The recommendation engine 1 as illustrated in the system of Fig. 1 can be implemented in a possible embodiment as a desktop solution. In this embodiment, the computer-implemented method can be executed by a processor of a user terminal. In an alternative embodiment, the recommendation engine 1 can also be implemented on a web server of a cloud platform connected via a data network to a plurality of different user terminals. In this embodiment, the computer-implemented method can be executed by one or more processors of a server of the cloud platform.

[0047] Further embodiments of the computer-implemented method according to the present invention are possible. For example, in the example of Fig. 2, a user U may select also an item which is not suggested by a completion scenario CompSc, i.e. a sequence of complementary items. The system can then check automatically whether the selected item does lead to a completion of the engineering project or not. If the selected item leads to the completion of the engineering project it can be accepted and on request, new completion scenarios CompSc can be calculated on the extended partial configuration including the added item. In a further exemplary embodiment, after having selected an item I suggested by a calculated completion scenario CompSc, the user U can also step back to the initial partial configuration, i.e. cancel the selected suggested complementary item. For instance, in the example of Fig. 2, after having selected item I11 from the first completion scenario, the user U can delete the selection and fall back to the partial configuration including items I1, I2, I3 and request a new calculation of completion scenarios and/or select another item such as item I21 of the second completion scenario CompSc2. After the selection of a completion scenario CompSc, the user U may in a possible implementation acknowledge the selection to trigger an automatic ordering process of the associated components. For example, after having selected completion scenario CompSc2 including items I21, I22, I23, I24, the system can ask the user U whether he wants to finalize the engineering project and to trigger an automatic ordering of the physical components (hardware and/or software components) associated with the selected items I21, I22, I23, I24 of the selected completion scenario 2. Accordingly, the selecting of a next item or the selection of a whole sequence of complementary items by the user U via the user interface 3 can trigger in a possible implementation automatically an ordering command to order the associated components for completion of the engineering project.

[0048] The recommendation system according to the present invention can employ the temporal dependencies between selected items associated with the components of the engineering project. After the user U has completed the set of items to finalize the project, the selected completion scenario can be used to update a content of the database 5 comprising the plurality of historical completed item sequences. Consequently, the performance of the recommendation system can improve over time with the increasing number of completed projects. The recommendation system can be used by one or more users U.

[0049] The recommendation engine 1 and method according to the present invention can be used for a wide range of different application and use cases and are not restricted to the embodiments illustrated in Fig. 1 and 2. The recommendation engine 1 and computer-implemented method according to the present invention can be used for any complex system which require configuration of its functional components. The computer-implemented method can be implemented in software tools such as TIA Selection Tool, TIA Portal or NX Designer. The invention provides a sequential recommendation system for completion of any kind of complex engineering projects.


Claims

1. A recommendation engine to automatically provide recommendations for the completion of an engineering project,
said recommendation engine comprising:

- a first artificial intelligence, AI, module (1A) adapted to provide latent representations of a set of items; and

- a second artificial intelligence, AI, module (1B) adapted to process the latent representations of the set of items provided by said first artificial intelligence, AI, module (1A) to generate at least one sequence of complementary items required to complement the set of items to provide a complete sequence of items output via an interface (1C) as a recommendation to complete said engineering project.


 
2. The recommendation engine according to claim 1 wherein the items are selected from a set of available items corresponding to hardware components and/or software components usable for the engineering project.
 
3. The recommendation engine according to claim 2 wherein the set of selected items is stored at least temporarily in a memory (2) connected to said recommendation engine (1).
 
4. The recommendation engine according to any of the preceding claims 1 to 3 wherein the first artificial intelligence, AI, module (1A) comprises a trained feature learning module adapted to calculate the latent representations of the set of items.
 
5. The recommendation engine according to any of the preceding claims 1 to 4 wherein the second artificial intelligence, AI, module (1B) comprises a trained sequential model adapted to calculate at least one sequence of complementary items output as a recommendation to complete said engineering project.
 
6. The recommendation engine according to any of the preceding claims 2 to 5 wherein the items are selected by a user via a user interface (3) having a screen adapted to output available items to the user.
 
7. The recommendation engine according to claim 6 wherein one or more sequences of complementary items generated by the second artificial intelligence, AI, module (1B) are output on the screen of the user interface (3) for selection of a next item from one of the sequences of complementary items or for selection of one or more items from one of the sequences of complementary items or for selection of a whole sequence of complementary items by the user.
 
8. The recommendation engine according to any of the preceding claims 1 to 7 wherein the first artificial intelligence, AI, module (1A) and the second artificial intelligence, AI, module (1B) comprise artificial neural networks trained on technical features of components and a plurality of sequences of previously selected items.
 
9. The recommendation engine according to any of the preceding claims 1 to 8 wherein the first artificial intelligence, AI, module (1A) comprises a trained autoencoder or a tensor factorization model.
 
10. The recommendation engine according to any of the preceding claims 1 to 9 wherein the second artificial intelligence, AI, module (1B) comprises a trained recurrent neural network or a trained convolutional neural network.
 
11. A computer-implemented method for providing automatically recommendations for the completion of an engineering project, the method comprising the steps of:

- calculating (S1) by a first artificial intelligence, AI, module (1A) latent representations of a set of items;

- processing (S2) by a second artificial intelligence, AI, module (1B) the latent representations of the set of items to generate at least one sequence of complementary items required to complete the sequence of selected items; and

- outputting (S3) via an interface (1C) at least one sequence of complementary items as a recommendation to complete said engineering project.


 
12. The computer-implemented method according to claim 11 wherein one or more sequences of complementary items generated by the second artificial intelligence, AI, module (1B) are output on a screen of a user interface (3) as recommendations for selection of a next item from one of the output sequences of complementary items or for selection of one or more items from one of the sequences of complementary items or for selection of a whole sequence of complementary items by a user.
 
13. The computer-implemented method according to claim 12 wherein the selection of the next item or the selection of one or more items or the selection of the whole sequence of complementary items by the user via the user interface (3) triggers automatically an ordering command to order associated components for the engineering project.
 
14. A software tool comprising a program code executable to perform the computer-implemented method according to any of the preceding claims 11 to 13.
 
15. A platform comprising a recommendation engine according to any of the preceding claims 1 to 10.
 




Drawing