METHOD AND SYSTEM FOR PROVIDING RECOMMENDATIONS CONCERNING A PROJECT CONFIGURATION TO CONFIGURE AN INDUSTRIAL SYSTEM
20220357723 · 2022-11-10
Inventors
Cpc classification
G05B19/4155
PHYSICS
International classification
Abstract
A method for providing recommendations concerning a project configuration to configure an industrial system includes: receiving via an interface a project query related to re-configuring the industrial system, represented by a knowledge graph, wherein components of a set of components are represented by graph nodes and relations between two components which are represented by edges between the corresponding nodes; automatically mining logical rules from the knowledge graph which are assigned to confidence values, whereby the confidence value of each rule is estimated by determining the frequency of occurrence of the rule body in the knowledge graph and by validating if the rule head holds; predicting candidate components of the project query for each logical rule by calculating a score for each candidate component; generating at least one recommendation; and—outputting the generated at least one recommendation to a user via a user interface or executing the generated recommendations.
Claims
1. A method for providing recommendations concerning a project configuration to configure an industrial system, the method comprising: receiving via an interface a project query which is related to at least one component to reconfigure the industrial system, whereby the industrial system is represented by a knowledge graph, wherein components of a set of components are represented by graph nodes and relations between two components which are represented by edges between the corresponding nodes; automatically mining logical rules consisting each of a rule body and a rule head from the knowledge graph which are assigned to confidence values, whereby the confidence value of each rule is estimated by determining the frequency of occurrence of the rule body in the knowledge graph and by validating if the rule head holds; predicting candidate components of the project query for each logical rule by calculating a score for each candidate component which is derived from the confidence values of every rule that implies the candidate; generating at least one recommendation for introducing at least one additional component of the predicted candidate components into the industrial system on the basis of the calculated scores; and outputting the generated at least one recommendation to a user via a user interface or executing the generated recommendations.
2. The method according to claim 1 wherein the at least one recommendation includes a ranking in descending order of the predicted candidate components according to their calculated score.
3. The method according to claim 1 wherein the mining process starts from the source node of the knowledge graph, along edges of the knowledge graph, to target components represented by target nodes of the knowledge graph, to extract different paths between the source node and the target nodes, wherein each logical rule derived from an extracted path is assigned to the confidence value.
4. The method according to claim 1 wherein the at least one recommendation is presented on the user interface with at least one user-understandable explanation.
5. The method according to claim 1 wherein the confidence value can depend on user requirements input by a user via the user interface and/or stored in the knowledge graph.
6. A system for providing recommendations concerning a project configuration to configure an industrial system, whereby the system comprises at least one processor which is configured to perform the following steps: receiving via an interface a project query which is related to at least one component to reconfigure the industrial system, whereby the industrial system is represented by a knowledge graph, wherein components of a set of components are represented by graph nodes and relations between two components which are represented by edges between the corresponding nodes; automatically mining logical rules consisting each of a rule body and a rule head from the knowledge graph which are assigned to confidence values, whereby the confidence value of each rule is estimated by determining the frequency of occurrence of the rule body in the knowledge graph and by validating if the rule head holds; predicting candidate components of the project query for each logical rule by calculating a score for each candidate component which is derived from the confidence values of every rule that implies the candidate; generating at least one recommendation for introducing at least one additional component of the predicted candidate components into the industrial system on the basis of the calculated scores, and outputting the generated at least one recommendation to a user via a user interface or executing the generated recommendations.
7. The system according to claim 6 wherein the at least one recommendation includes a ranking in descending order of the predicted candidate components according to their calculated score.
8. The system according to claim 6 wherein the mining process starts from the source node of the knowledge graph, along edges of the knowledge graph, to target components represented by target nodes of the knowledge graph, to extract different paths between the source node and the target nodes, wherein each logical rule derived from an extracted path is assigned to the confidence value.
9. The system according to claim 6 wherein the at least one recommendation is presented on the user interface with at least one user-understandable explanation.
10. The system according to any of the claim 6 wherein the confidence value can depend on user requirements input by a user via the user interface and/or stored in the knowledge graph.
11. A computer program product, comprising a computer readable hardware storage device having computer readable program code stored therein, said program code executable by a processor of a computer system to implement a method which is being executed by one or more processors of a computer in order to perform the method according to claim 1.
12. A computer-readable storage media with the computer program according to claim 11.
Description
DETAILED DESCRIPTION
[0044] The workflow shown in the figure includes steps marked with 1 to 3.
[0045] User data and/or project configuration data with can be used for an engineering project Pin order to (re-)configure an industrial system comprising various components. These data are multi-relational data that can be represented as a knowledge graph KG whose entities representing components correspond to nodes and whose relations correspond to edges in the knowledge graph.
[0046] The inventive task to provide one or more recommendations R concerning project configuration can be formulated as a kind of link prediction problem in the knowledge graph. The context of entities is taken into consideration for the prediction. A framework can be used for providing scalable rule-based recommendations finally with the outcome of user-interpretable recommendations E which can be presented on a user interface I or used for automatically execution of the one or more recommendations. After receiving via an interface a project query Q which is related to at least one component to (re-)configure the industrial system, in step 1 the framework underlying method firstly learns rules based on historical information and background knowledge. Secondly, in step 2 the rules are applied to generate recommended components C, for which the rules also act as a human-understandable explanation. Thirdly, in step 3 explanation can be added to the one or more recommendations which can be finally presented on the user interface I.
[0047] In the following the steps 1 to 3 are explained in more detail:
[0048] Step 1: Rule learning: That means: automatically mining logical rules consisting each of a rule body and a rule head from the knowledge graph which are assigned to confidence values, whereby the confidence value of each rule is estimated by determining the frequency of occurrence of the rule body in the knowledge graph and by validating if the rule head holds.
[0049] Step 2: Rule application: That means: predicting candidate components of said project query for each logical rule by calculating a score for each candidate component which is derived from the confidence values of every rule that implies said candidate.
[0050] Step 3: Recommendation, optionally with user-understandable explanation: That means: generating at least one recommendation for introducing at least one additional component of the predicted candidate components into the industrial system on the basis of the calculated scores,
[0051] And finally:
[0052] Outputting the generated at least one recommendation to a user via a user interface or executing the generated recommendations.
[0053] Rule Learning:
[0054] Input: knowledge graph containing all information about project configurations, components and a customer who operates the industrial system.
[0055] Output: logical rules with confidence values.
[0056] Information about historical configuration solutions, components along with their technical features, user data, user order history, and background information considering the components and configurations (e.g., compatibility, availability) is encoded into a knowledge graph that serves as the input for the rule learning. Given the knowledge graph, a rule mining method is applied that automatically mines rules from the graph.
[0057] A logical rule has the form h(x.sub.0, x.sub.n+1)←b.sub.1(x.sub.0, x.sub.1)^b.sub.2 (x.sub.1, x.sub.2)^ . . . ^b.sub.n(x.sub.n−1, , x.sub.n), where h(x.sub.0, x.sub.n+1) is the rule head and b.sub.1(x.sub.0, x.sub.1)^b.sub.2 (x.sub.1, x.sub.2) ^ . . . ^b.sub.n(x.sub.
[0058] Examples [0059] Device (Customer, Number)<-OrderHistory(Customer, Device), Failsafe(Device, Type), InstallationHeight(Type, MaxHeight) [0060] Confidence: 78% [0061] Device (Project, Number) <- Proj ectType(Proj ect, Type), TemperatureMax(Type, MaxTemp), Connection (MaxTemp, ConnectionType), Plug(ConnectionType, PlugType) [0062] Confidence: 67%
[0063] A possible rule learning method is AnyBURL [2], which samples random walks in the graph and generalizes them to logical rules. The confidence of a rule is estimated by sampling a specific number/frequency of occurrences of the rule bodies in the graph and checking if the rule head holds.
[0064] Further possible rule learning method is explained in AMIE[3]. This method is explicitly tailored tosupport an open world assumption scenario. It is inspired by association rulemining and introduces a measure for the confidence. It uses a language bias to restrict the search space. Two atoms in a rule are connected if they share a variable or an entity. A rule is connected if every atom is connected transitively to every other atom of the rule. This method mines only connected rules, i.e., it avoids constructing rules that contain unrelated atoms. It is assumed that a rule is closed if every variable in the rule appears at least twice. Such rules do not predict merely the existence of a fact. It mines only closed rules. Recursive rules that contain the head relation in the body are allowed.
[0065] Rule Application:
[0066] Input: logical rules with confidence values; knowledge graph containing all information about project configurations, components, and a customer who operates the industrial system; at least one query about the project of interest. The project query concerns one or more components which are to (re-)configure.
[0067] Output: at least one recommendation e.g. in the form of a list of at least one recommended (candidate) component to add to the project and therefore to introduce the at least one recommended candidate component into the industrial system, whereby the recommendation can also contain information about how candidate component(s) should be integrated/introduces into the industrial system; Score for each recommended component.
[0068] The learned/mined rules in step 1 are applied to the project of interest. If it is assumed that the rules are independent, noisy-or aggregation can be used to find predictions. In this case, all possible component are predicted as candidate components for each rule, where the score of a candidate component is the product of the confidence values of all rules that imply this candidate component. Another possible setting is maximum aggregation, where the score each candidate component with the maximum confidence value of all rules is calculated that imply this candidate component. More precisely, a prediction in the form h(x.sub.0, x.sub.n+1) for each rule it got, where x.sub.0 already exists in the graph (current project), x.sub.n+1 is the new recommended component, and h is the relation that connects the entities x.sub.n+1 and x.sub.0. The relation h determines how exactly the new component x.sub.n+1 should be integrated into the existing configuration.
[0069] Examples: [0070] Device (P, Z)<- ProjectType(P, Production_54), TemperatureMax(Production_54, 40), Connection (40, C_44), Plug(C_44, P_12) [0071] Confidence: 67% [0072] Device (S, X)<-OrderHistory(S, Y), Failsafe(Y, “Prosafe”), Installation-Height(“Prosafe”, 10 m) [0073] Confidence: 78%
[0074] Explainable Recommendation
[0075] Input: at least one recommendation e.g., in the form of a list of recommended components to add to the project; information about how they should be integrated into the configuration; score for each recommended component.
[0076] Output: sorted list of recommended components with scores; human-understandable explanation on why the component is recommended and how exactly the component should be integrated into the configuration.
[0077] The recommendations from step 2 are sorted by decreasing score and output on a user interface. To make the results user-understandable, the predicted links/edges in the graph and the logical rules that imply the predictions are reformulated. The link describes how the component is connected to the project, and the logical rules explain the recommendation.
[0078] In a further step, verbalization is carried out, that make the generated recommendations more human-understandable.
[0079] Examples: [0080] Customer S should order device X because Customer S ordered device Y in the past and device Y comes with failsafe functionality “Prosafe” and devices with failsafe functionality “Prosafe” come with installation height max 10 m, and if a device was ordered with failsafe functionality “Prosafe” and installation height max 10 m, then device X is a good fit for the customer S with 78% confidence. [0081] For Project P, device Z should be ordered because Project P is of Project type Production_54 that comes with a temperature restriction of max 40 degrees and devices with temperature restrictions of max 40 degrees have connection type C_44, and devices which have a connection type C_44 have a plug type P_12 and if a project is of type Production_54, has a temperature restriction of 40 degrees, comes with a connection type C_44 and plug type P_12, then device Z is a good fit for the Project P with 67% confidence.
[0082] Training, deployment and user interaction of the system is described in the following:
[0083] Training
[0084] As a starting point, logical rules are automatically mined (step 1) from all available data about project configurations, components, and customers. The rules do not need to be learned/mined for every new project, but it is possible to reuse the rules for several projects. However, it is useful to update/relearn the rules and especially the confidence values of the rules after a certain amount of new project data is available. The same holds if new components are introduced to the system configuration. New information should be incorporated into the knowledge graph in a timely manner so that the rule learning step can make use of the new data.
[0085] Deployment
[0086] If a user creates a new project, the rules from step 1 are applied to generate prediction of candidate components (step 2) and explainable recommendations (step 3).
[0087] User Interaction
[0088] The explainable recommendations from step 3 are presented in a graphical user interface to the user where the user should have the option to directly click on the desired component to add them to the current project configuration. If the user has certain requirements for the project (e.g., only use a certain type of device), he or she can check them in respective filtering boxes, and the inventive method can filter out the components that do not match the requirements.
[0089] The method can be executed by at least one processor such as a microcontroller or a microprocessor, by an Application Specific Integrated Circuit (ASIC), by any kind of computer, including mobile computing devices such as tablet computers, smartphones or laptops, or by one or more servers in a control room or cloud.
[0090] For example, a processor, controller, or integrated circuit of the system and/or computer and/or another processor may be configured to implement the acts described herein.
[0091] The above-described method may be implemented via a computer program (product) including one or more computer-readable storage media having stored thereon instructions executable by one or more processors of a computing system and/or computing engine. Execution of the instructions causes the computing system to perform operations corresponding with the acts of the method described above.
[0092] The instructions for implementing processes or methods described herein may be provided on non-transitory computer-readable storage media or memories, such as a cache, buffer, RAM, FLASH, removable media, hard drive, or other computer readable storage media. A processor performs or executes the instructions to train and/or apply a trained model for controlling a system. Computer readable storage media include various types of volatile and non-volatile storage media. The functions, acts, or tasks illustrated in the figures or described herein may be executed in response to one or more sets of instructions stored in or on computer readable storage media. The functions, acts or tasks may be independent of the particular type of instruction set, storage media, processor or processing strategy and may be performed by software, hardware, integrated circuits, firmware, micro code and the like, operating alone or in combination. Likewise, processing strategies may include multiprocessing, multitasking, parallel processing and the like.
[0093] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments of the invention. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural form as well, unless the context clearly indicates otherwise.
[0094] Although the present invention has been disclosed in the form of preferred embodiments and variations thereon, it will be understood that numerous additional modifications and variations could be made thereto without departing from the scope of the invention.
[0095] For the sake of clarity, it is to be understood that the use of “a” or “an” throughout this application does not exclude a plurality, and “comprising” does not exclude other steps or elements.
REFERENCES
[0096] [1] Marcel Hildebrandt et al. Configuration of Industrial Automation Solutions Using Multi-Relational Recommender Systems. ECML-PKDD 2018
[0097] [2] Christian Meilicke et al. Anytime Bottom-Up Rule Learning for Knowledge Graph Completion. IJCAI 2019
[0098] [3] Luis Galárraga, Christina Teflioudi, Katja Hose, Fabian M. Suchanek, AMIE: “Association Rule Mining under Incomplete Evidence in Ontological Knowledge Bases”, 20th International World Wide Web Conference (WWW 2013), http://resources.mpi-inf.mpg.de/yago-naga/amie/amie.pdf
[0099] [4] EP20197648