This application claims priority to EP Application No.21172310.1, having a filing date of May 5, 2021, the entire contents of which are hereby incorporated by reference.
The following relates to a method and a system for providing recommendations concerning a project configuration to configure an industrial system.
The process of configuring an industrial system in engineering projects involves several major steps. The appropriate components have to be selected by a user such that their interplay fulfills all functional requirements arising from the intended use case. To do this, a user or an engineer respectively who is in charge of configuring the industrial system typically utilizes configuration software containing a catalog of available components.
When a set of product components and their technical features are provided a user selects components that are compatible with each other and fulfill the functional requirements of the project configuration. Based on the project type and background knowledge about components, initial components can be proposed to a user in order to allow for a quick start. The user can then adjust the configuration and add more necessary components. Some components can be further configured by setting particular values that are specific to the project (e.g., temperature of devices, technical features).
Recommender systems in industrial configuration tools mostly propose recommended items without taking the multi-relational data structure into account that can be represented by knowledge graphs. Thus, prediction consists only of the item itself and does not contain the connection of the item to the whole configuration that can be provided by links in the graph.
There are different approaches for solving the link prediction task in a recommendation setting:
While the manual definition of rules is time-inefficient and not scalable to large datasets, methods based on tensor factorization and latent features are black-box methods, which are not explainable nor user-understandable.
An aspect relates to provide an improved system and/or method for support in fixing and/or refining a query.
An aspect of embodiments of the invention is a computer-implemented method, for providing recommendations concerning a project configuration to configure or to design an industrial system. The method comprises the steps of:
“If the rule head holds” means if the rule provides the value true.
Mining the logical rules can be performed by a learning agent.
The configuration of industrial system can be done by a (engineering) project. A link prediction problem in a knowledge graph, where the context of entities (and connection to other entities), whereby entities in this context are components, is taken into consideration for the prediction.
The inventive method consists of automatically mining logical rules from the knowledge graph. When comparing data-driven approaches with rule-based solutions, this method is scalable. In addition, depending on complexity of the underlying industrial systems embodiments of the invention could discover complex patterns to base the recommendations on.
Implementation of embodiments of the invention into project engineering software tools can reduce time needed for completing the configuration of an engineering project. The user e.g., a project engineer can accept the complete or select one or more parts of the explained recommendations.
The score can be calculated by a product (so-called nosy-or) of the confidence values or by the maximum (called aggregation) of the confidence values.
Through sampling techniques for estimating the rule confidences and efficient implementation of maximum aggregation when applying the rules, embodiments of the invention is scalable to large datasets.
The mining process usually 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 said confidence value. The knowledge graph usually contains 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).
The at least one recommendation can include a ranking in descending order of the predicted candidate components according to their calculated score.
The at least one recommendation can be presented on the user interface with at least one user-understandable explanation.
The recommendations can come with explanations since the rules act as a human-understandable explanation on why a certain component is recommended, which leads to a more transparent configuration process.
Implementation of embodiments of the invention into project engineering software tools can reduce time needed for completing the configuration of an engineering project. The user e.g., a project engineer can accept the complete or select one or more parts of the explained recommendations.
Said confidence value can depend on user requirements input by a user via the user interface and/or stored in the knowledge graph.
The generated at least one recommendation can be used to performing the (re-)configuration the industrial system by introducing one or more supplementary and/or additional into the industrial system.
Another aspect of embodiments of the invention is 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:
Embodiments as described above for the system can be analogously applied for the method and for computer program product (non-transitory computer readable storage medium having instructions, which when executed by a processor, perform actions)and for the computer-readable storage medium.
This system which can be implemented by hardware, firmware and/or software or a combination of them.
The computer-readable storage medium stores instructions executable by one or more processors of a computer, wherein execution of the instructions causes the computer system to perform the method.
The computer program (product) is executed by one or more processors of a computer and performs the method.
Some of the embodiments will be described in detail, with reference to the following figures, wherein like designations denote like members, wherein:
The figure shows a workflow of the inventive method.
The workflow shown in the figure includes steps marked with 1 to 3.
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.
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.
In the following the steps 1 to 3 are explained in more detail:
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.
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.
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,
And finally:
Outputting the generated at least one recommendation to a user via a user interface or executing the generated recommendations.
Rule Learning:
Input: knowledge graph containing all information about project configurations, components and a customer who operates the industrial system.
Output: logical rules with confidence values.
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.
A logical rule has the form h(x0, xn+1)←b1(x0, x1)^b2 (x1, x2)^ . . . ^bn(xn−1, , xn), where h(x0, xn+1) is the rule head and b1(x0, x1)^b2 (x1, x2) ^ . . . ^bn(x
Examples
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.
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.
Rule Application:
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.
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.
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(x0, xn+1) for each rule it got, where x0 already exists in the graph (current project), xn+1 is the new recommended component, and h is the relation that connects the entities xn+1 and x0. The relation h determines how exactly the new component xn+1 should be integrated into the existing configuration.
Examples:
Explainable Recommendation
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.
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.
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.
In a further step, verbalization is carried out, that make the generated recommendations more human-understandable.
Examples:
Training, deployment and user interaction of the system is described in the following:
Training
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.
Deployment
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).
User Interaction
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.
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.
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.
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.
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.
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.
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.
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.
[1] Marcel Hildebrandt et al. Configuration of Industrial Automation Solutions Using Multi-Relational Recommender Systems. ECML-PKDD 2018
[2] Christian Meilicke et al. Anytime Bottom-Up Rule Learning for Knowledge Graph Completion. IJCAI 2019
[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
[4] EP20197648
Number | Date | Country | Kind |
---|---|---|---|
21172310.1 | May 2021 | EP | regional |