Causal graph generation

The two-phase iterative algorithm improves causal graph determination in communication networks by generating candidate graphs offline and refining them online, addressing limitations of existing methods and enhancing accuracy and robustness in dynamic environments.

WO2025168221A1PCT designated stage Publication Date: 2025-08-14TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)

Patent Information

Application Number
PCT/EP2024/057427
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-08
Filing Date
2024-03-20
Publication Date
2025-08-14

AI Technical Summary

Technical Problem

Existing causal discovery algorithms struggle to accurately determine causal graphs in complex communication networks due to limited observational data and the inability to perform interventions, leading to erroneous results and challenges in verifying the correctness of estimated causal relationships, especially in dynamic environments.

Method used

A two-phase iterative algorithm is employed, involving an offline phase for generating multiple candidate causal graphs using various discovery algorithms and domain knowledge, followed by an online phase for verifying and refining these graphs through real-time network interactions and error monitoring, ensuring the selected graph optimally achieves target intents.

Benefits of technology

This approach enhances the accuracy and robustness of causal graph determination by continuously updating and verifying causal relationships, enabling effective intent management and resource allocation in dynamic network environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024057427_14082025_PF_FP_ABST
    Figure EP2024057427_14082025_PF_FP_ABST
Patent Text Reader

Abstract

Causal graph generation The invention provides a method carried out by a processing device, where, in a first phase, a plurality of candidate causal graphs is generated based on training data sets, each of the candidate causal graphs providing a causal relationship relating a corresponding first network related parameter of a cellular network to a second network related parameter of the cellular network. In a second phase, based on actual data sets of the cellular network, a first actual value of the first network related parameter and a second actual value of the second network related parameter is determined, and in the second phase, a predicted second value of the second network related parameter is determined for each of the candidate causal graphs based on the first actual value and the plurality of candidate causal graphs generated in the first phase. The predicted second values determined with each of the candidate causal graphs, is compared to the second actual value of the second network related parameter, in order to determine, for each candidate causal graph, a difference between the actual and the predicted second value, and at least one final causal graph is determined based on the comparing, and is provided for further use.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Causal graph generation

[0002] Technical Field

[0003] The present application relates to a method carried out at a processing unit and to the corresponding processing unit. Furthermore a computer program comprising program code is provided and a carrier comprising the computer program.

[0004] Background

[0005] Communication networks are complex systems that function through the collaboration of numerous components to deliver services to end users. The quality of these services is influenced by various factors, making it a challenging yet crucial task to comprehend the impact of each parameter on the overall performance. However, directly manipulating individual factors to assess their effects is often unfeasible due to the considerable cost involved in network intervention. Consequently, it is preferable to embrace a formal approach in comprehending the role of different parameters and predicting how altering any of these factors will affect performance.

[0006] This challenge becomes even more important with 5G and 6G networks since the complexity and dynamicity of new services increase significantly and assessing the impact of a new network configuration is more crucial. Answering a “what if’ type of question is crucial and the approach of causality can provide a solid framework for the investigation of this type of questions. One example question can be “what if we increase transmit power” or “what if we assign a new priority to service X?” In general, causal inference plays a crucial role in shaping future telecommunication systems by providing a powerful framework to understand the cause- and-effect relationships between various factors affecting network performance and user experience. Here are some ways in which causal inference is essential for future telecommunication systems.

[0007] Optimal Resource Allocation: Causal inference enables network operators to identify which network components or parameters have the most significant impact on service quality. This knowledge allows them to allocate resources optimally, focusing on the areas that have the most substantial causal effect on performance. Performance Enhancement: By understanding the causal relationships, telecom companies can make targeted improvements to the network infrastructure and protocols. This approach ensures that changes are made where they will have the most positive impact on the system's overall performance.

[0008] Predictive Maintenance: Causal inference can help predict potential issues or bottlenecks in the network before they arise. By identifying the causal factors leading to network failures or degradation, proactive measures can be taken to prevent or minimize service disruptions.

[0009] Quality of Service (QoS) Improvement: Telecommunication systems can have numerous interdependent factors influencing QoS. Causal inference allows for a deeper understanding of these factors, leading to the implementation of measures that enhance service reliability, reduced latency, and increased data throughput.

[0010] Network Optimization: As telecommunication systems become more complex, optimizing network configurations becomes increasingly challenging. Causal inference can assist in evaluating different configuration options and selecting the most effective ones to achieve desired outcomes.

[0011] Policy Decisions: Causal inference can provide valuable insights for policymakers in the telecommunications sector. By understanding the causal relationships between regulatory policies, investment decisions, and network performance, policymakers can design more effective strategies to promote the growth and stability of the industry.

[0012] Robust Decision Making: Causal inference allows network operators to make informed decisions with a higher level of confidence. It helps avoid making choices based solely on correlation, which might lead to erroneous conclusions about cause and effect.

[0013] Overall, causal inference empowers telecommunication companies to make evidence-based decisions, optimize their systems, and adapt to changing technological landscapes, resulting in more efficient, reliable, and improved communication networks for the future.

[0014] Also, the role of a causal model (also known as a causal graph or causal network) in the context of a digital twin is to represent and understand the causal relationships between various components and factors within the system being simulated. A digital twin is a virtual representation of a physical system or process, and it is used for simulation, analysis, and decision-making purposes. The causal graph serves as a foundational model that helps establish cause-and-effect relationships among different elements within the digital twin. It typically consists of nodes representing different variables or components and directed edges representing the causal connections between them. The nodes in the graph can represent physical entities, system parameters, environmental factors, or any other relevant variables.

[0015] As an example, if X is causally impacting Y it is denoted as X->Y. X and Y in a networking context can be two different KPIs such as X can be throughput and Y can be Quality of Experience of a user. That means QoE is causally impacted by throughput. In another example, X can be an action or a network configuration such as priority level of a service, number of resources assigned to a user or number of antennas used for a transmission. In this case, Y can be a KPI or network metric such as latency, packet loss, etc. Understanding the causal relation between different network KPIs / action can provide very useful information as we describe above.

[0016] Causal reasoning and inference become more important for autonomous networks. In general, one important direction is intent-based autonomous management of networks. According to a definition an intent is “the formal specification of all expectations including requirements, goals, and constraints given to a technical system”. Examples of expectations are “At least 95% of the URLLC (ultra reliable and low latency communications) users shall experience a latency of maximum 20 msec”, or “At least 80% of the users of the conversational video service shall have a minimum QoE (Quality of Experience) of 4.0”, or “Energy consumption of the system shall be kept to a minimum”. More detailed information on intents and how they relate to closed loops is described in P.H. Gomez, M. Buhrgard, J. Harmatos, S.K. Mohalik, D. Roeland, and J. Niemdller, “Intent-driven Closed Loops For Autonomous Networks”, JICTS, vol.9, no.2, pp. 257-290, Jun. 2021.

[0017] Correspondingly, intent management function is introduced by TM Forum IG1253 v1.3.0, Intent in Autonomous Networks, which operates an autonomous system by using intents. As shown in Fig. 1 an Intent management or handling function 20 can act as an intent owner, intent handler, or both. Intent manager is capable of handling multiple intents submitted by various owners or operator 10. A particular intent instance may be composed of a set of expectations, which define KPIs (key performance indicator) to be satisfied by the intent handling. By comparing the data exposed by the environment 30 and collected by the data grounding agents 21 , the intent handling function 20 checks whether the intents are met or not. As a result of the comparison of target and measured KPIs, and the difference becomes an issue or goal that the intent manager needs to meet. For example, the target KPI is “max 20 msec latency” but the measured KPI is “30 msec latency”. One or more proposal agents 22 are responsible for proposing actions that would solve an issue. Evaluation agents 23 make an assessment if a proposed action is good or not. Finally, actuator agents 24 execute the action on the environment under control. Within intent-based automation, it is critical to understand the causal relations among the KPIs. For instance, if an intent includes a QoE expectation, this expectation must be decomposed into known networking KPIs such as both throughput and latency impact QoE. T o make such decomposition, the causal relation between QoE and throughput and latency should be discovered.

[0018] Discovering the causal relations in a complex system is a fundamental problem, and there is no single method that can discover the true causal graph for any given system. Causal discovery algorithms are known which can be roughly divided into two categories as will be explained briefly below.

[0019] Constraint-based Algorithms: These types of algorithms rely on statistical independence tests. Notable algorithm in this category of algorithms include PC (Peter-Clark) as described in P. Spirtes and C. Glymour, “An algorithm for fast recovery of sparse causal graphs,” Social Science Computer Review, vol. 9, no. 1 , pp. 62-72, 1991 and in P. L. Spirtes, C. Meek, and T. S. Richardson, “Causal inference in the presence of latent variables and selection bias,” arXiv preprint arXiv: 1302.4983, 2013. The PC algorithm includes two stages: at the first stage a skeleton of the graph which contains undirected edges (i.e. , there is a causal relation between X and Y, X-Y but the direction is not resolved yet) is found. At this stage, the graph is fully connected (every node is connected to every other node in the network). Then it applies unconditional independence test between two variables. For instance, if X and Y are tested to be independent the link between them is deleted. If these two variables are independent, then next one starts with conditional independence test by conditioning on other variables in the network, and if one finds a set of variables that make these two nodes independent then the edge is removed. Otherwise, the edge is kept. Once the skeleton is determined, next the edge is oriented by using collider or V-structure that are used to discover the directions with the help of conditional Independence tests. Score-based Algorithms: Score-based techniques, on the other hand, operate by attributing a certain measure (i.e., score) of how effectively a graph aligns with the data. Elevated scores indicate a more favorable alignment, and a score-based methodology can be conceptualized as an optimization endeavor, where the objective is to search for the graph that attains the best score. Popular score based causal discovery algorithms include GES (Greedy Equivalent Search) described in D. M. Chickering, “Optimal structure identification with greedy search,” Journal of machine learning research, vol. 3, no. Nov, pp. 507-554, 2002 or in P. Nandy, A. Hauser, and M. H. Maathuis, “High-dimensional consistency in score-based and hybrid structure learning,” The Annals of Statistics, vol. 46, no. 6A, pp. 3151-3183, 2018.

[0020] Invariant Causal Prediction (ICP): ICP is a causal discovery algorithm that aims to find causal relationships by identifying invariants in the data distribution. It focuses on non-linear causal relations and is robust to hidden common causes as mentioned in Peters, J., Buhlmann, Peter, & Meinshausen, N., Causal inference using invariant prediction: identification and confidence intervals, arXiv preprint arXiv: 1501.01332, (2015).

[0021] Even though certain causal discovery algorithms (such as PC, GES, etc.) can estimate a Markov equivalence class of the true causal graph (from observations) in an asymptotic sense (infinite amount of data), to obtain the true causal graph from the Markov equivalent class interventions are necessary. However, in practice, one has access to only limited amount of observation data and useful interventions may not be even possible. Hence, both structural and functional parameters estimated from the observational data using these algorithms are often erroneous. Estimating the true causal structure from observation data alone is a difficult task. To estimate an accurate causal structure, it is necessary to use interventions. The interventions help to distinguish causal structures having same distribution over the observation variable. But there exist limitations to intervene on an actual system (a deployed network):

[0022] • One cannot intervene on all nodes to obtain the interventional data (certain variable may not be accessible / controllable for intervention)

[0023] • Intervention on certain nodes will adversely affect the performance of the network. Hence, active intervention in an actual system is costly.

[0024] Another important challenge is the verification of the correctness of the estimated causal graph. There are two important aspects associated with the verification process: • In certain situations, actual causal relations of the system variables are not obvious to the users. In this situation, choosing a causal discovery algorithm (and verifying its output) for downstream tasks (tasks whose solutions are based on the causal graph) is challenging.

[0025] • System configuration / state changes leads to the change in causal relations. Hence, the causal graph (selected for downstream tasks) needs to incorporate these changes, adaptively.

[0026] In a given application scenario, it is often observed that no single algorithm is universally superior, that is, different causal discovery algorithms may give partially correct graphs. Also, there are situations where one cannot verify the correctness of the estimated causal graphs (using different algorithms). Performance of different algorithms may vary if the assumption of the actual data does not match with the assumptions made by the algorithm. Hence, it is important to develop strategies for utilizing different graphs obtained (from different algorithms) for the given causal based task, instead of using a single graph. Also, verification of a causal graph without damaging to the system is important.

[0027] Summary

[0028] Accordingly a need exists to overcome some of the problems mentioned above and to improve the generation of causal graphs.

[0029] According to a first aspect a method is provided carried out by a processing device wherein the method comprises the step of generating, in a first phase, a plurality of candidate causal graphs based on training data sets wherein each of the candidate causal graphs provides a causal relationship relating a corresponding first network related parameter of a cellular network to a second network related parameter of the cellular network. In a second phase a first actual value of the first network related parameter and a second actual value of the network related parameter is detected based on actual data sets of the cellular network and in the second phase a predicted second value is calculated of the second network related parameter for each of the candidate causal graphs based on the first actual value and the plurality of candidate causal graphs generated in the first phase. In the second phase the predicted second values determined with each of the candidate causal graphs are compared to the second actual value of the second network related parameter in order to determine, for each of the candidate causal graphs, a difference between the actual and the predicted second value. Based on the comparison at least one final causal graph is determined and the at least one final causal graph is provided for further use.

[0030] Furthermore the corresponding processing unit is provided configured to carry out the method discussed above or as discussed in further detail below.

[0031] With the use of the plurality of candidate causal graphs and the different data sets adn the 2 phases it is possible to improve the determination of the causal relationships between different parameters in a cellular network.

[0032] Furthermore an intent management entity is provided configured to carry out the method mentioned above or as discussed in further detail below wherein in the intent management entity comprises a causal graph agent configured to generate the plurality of candidate causal graphs in the first phase and at least one final causal graph in the second phase. The intent management entity furthermore comprises a data grounding agent configured to collect the training data sets and actual data sets and configured to provide the training data sets and actual data sets to the causal graph agent. A proposal agent of the intent management entity is configured to use the generated at least one final causal graph, to find out a root cause of a problem occurring in the cellular network and to propose an amendment to a first used network parameter used in the cellular network.

[0033] Furthermore a computer program comprising program code is provided to be executed by at least one processing unit wherein execution of the program code causes the at least one processing unit to carry out a method as mentioned above or as discussed in further detail below.

[0034] Furthermore a carrier is provided comprising the computer program wherein the carrier is one of an electronic signal, optical signal, radio signal, and computer readable storage medium.

[0035] It is to be understood that the features mentioned above and features yet to be explained below can be used not only in the respective combinations indicated, but also in other combinations without departing from the scope of the present application. Features of the above-mentioned aspects and embodiments described below may be combined with each other in other embodiments unless explicitly mentioned otherwise. Other devices, systems, methods, features and advantages will be or will become apparent to one with skill in the art upon examination of the following detailed description and figures. Brief of the drawings

[0036] The foregoing and additional features and effects of the application will become apparent from the following detailed description when read in conjunction with the accompanying drawings in which like reference numerals refer to like elements.

[0037] Fig. 1 shows an example implementation of an intent management function as known in the art.

[0038] Fig. 2 shows an example of a causal graph which can be used for determining the at least one final causal graph.

[0039] Fig. 3 shows a further example of a causal graph with different network related parameters used for explaining aspects of the present invention.

[0040] Fig. 4 shows an example view of a flowchart comprising steps used to determine at least one final causal graph with the method comprising two different phases.

[0041] Fig. 5 shows a further example view of a flowchart comprising the steps of a method used to determine at least one final causal graph and the steps carried in the different phases of the method.

[0042] Fig. 6 shows an example view of a table containing data sets which can form the basis for the training data sets used for generating candidate causal graphs.

[0043] Fig. 7 shows an example schematic view of a generation of candidate graphs.

[0044] Fig. 8 shows a schematic view of how a causal graph is used when one node in the causal graph changes its value and how this impacts the other nodes of the causal graph.

[0045] Figs. 9 shows different examples of possible candidate causal graphs.

[0046] Fig. 10 shows a final causal graph selected from the graphs shown in Fig. 9. Fig. 11 shows a schematic view of an architecture in which the causal graph generation is implemented in an intent management function.

[0047] Fig. 12 shows an example causal graph used in the content management function of Fig. 11.

[0048] Fig. 13 shows an example flowchart of a method carried out to determine and use at least one final causal graph.

[0049] Fig. 14 shows a schematic architectural view of a processing device configured to determine the at least one final causal graph.

[0050] Detailed

[0051] In the following, embodiments of the invention will be described in detail with reference to the accompanying drawings. It is to be understood that the following description of embodiments is not to be taken in a limiting sense. The scope of the invention is not intended to be limited by the embodiments described hereinafter or by the drawings, which are to be illustrative only.

[0052] The drawings are to be regarded as being schematic representations, and elements illustrated in the drawings are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose becomes apparent to a person skilled in the art. Any connection or coupling between functional blocks, devices, components of physical or functional units shown in the drawings and described hereinafter may also be implemented by an indirect connection or coupling. A coupling between components may be established over a wired or wireless connection. Functional blocks may be implemented in hardware, software, firmware, or a combination thereof.

[0053] Within the context of the present application, the term “mobile entity” or “user equipment” (UE) refers to a device for instance used by a person (i.e. a user) for his or her personal communication. It can be a telephone type of device, for example a telephone or a Session Initiating Protocol (SIP) or Voice over IP (VoIP) phone, cellular telephone, a mobile station, cordless phone, or a personal digital assistant type of device like laptop, notebook, notepad, tablet equipped with a wireless data connection. The UE may also be associated with nonhumans like animals, plants, or machines. A UE may be equipped with a SIM (Subscriber Identity Module) or electronic-SIM comprising unique identities such as IMSI (International Mobile Subscriber Identity), TMSI (Temporary Mobile Subscriber Identity), or GUTI (Globally Unique Temporary UE Identity) associated with the user using the UE. The presence of a SIM within a UE customizes the UE uniquely with a subscription of the user.

[0054] In the following an iterative algorithm including 2 phases is disclosed, a first or an offline and a second or online phase. The present approach does not aim to find a single best graph but instead it provides a set of candidate graphs that can reflect the actual causal relation accurate

[0055] It is investigated how one can construct such graphs and aim to determine the causal relationships between the identified variables within a networking context. Questions will be asked like "Does changing variable X cause a change in variable Y?" or "Is there a cause- and-effect relationship between variables A and B?". Here, X, Y, A and B can be a network configuration and / or a networking metric / KPI. An online framework is proposed for causal discovery and verification in the context of intent-based automation where the proposed algorithm helps to estimate the intervention values to be set in the intervention nodes to obtain the target variable value, monitors the error of the prediction, and updates the graph if the error is high. The proposed framework selects a graph which is optimum in terms of the associated task to obtain the desired target value (or intent) and it is deployable in the actual system. In this solution proposal, the causal relations in the networking context are jointly discovered, and the accuracy of the discovered causal graphs is verified and evaluated in an iterative manner. Unlike in the previous works, multiple causal graphs are provided which are fed by domain knowledge, and the generated graphs are provided to help get close to the true causal relation.

[0056] In the first phase, also called offline phase hereinafter, with the available data, one first estimates initial set of causal graphs using different causal discovery algorithms. In addition, one can consider the generation of new graphs from these estimated graphs. For example, one can apply both score and constraint-based algorithms over different data sets to find the most consistent edges that appear in most of data sets. For instance, if one observes that over different data sets the edge between X and Y (X->Y) appears as a causal link one can consider this as a valid causal relation. For some edges such as between X and Z, it is possible that X- >Z and Z->X can appear with the same frequency. Under such circumstance, two possible graphs may be generated. At the end, when offline phase is finalized, there can be different number of possible causal graphs which we call as candidate graphs. Also, here we find the causal structed function between causal parents and a child. For instance, assume that in one candidate graph one has X->Y and Z->Y. One can find the function f(X,Z):=Y for each node in each candidate graph.

[0057] In the second phase, also called online phase, one can take each candidate graph and test them in a real network where a continuous data stream is present. In this phase, one can select the optimum graph from the candidate graphs for a given task, based on the optimum graph one can intervene on the system to achieve the target intent, continuously monitoring the error in achieving the target intent (after intervention), and if the error is larger than the predefined criterion then the algorithm will re-estimate the candidate graphs using the new data (where the intervention information is also available). It is assumed that one knows which network configuration is changed and one can keep track of these changes to verify whether the causal graph can really reflect this change or not. For each candidate graph, as new data arrives, one can first determine whether if the change in the real network also occurs according to a given candidate graph. For instance, if one observes that in real network X->Y and Z->Y one can first check if a given candidate graph is containing these edges. Then, one can also check that the function f(X,Z):=Y with the new data is still consistent with the one found in the offline phase. It is possible to make prediction with the new data for each node (i.e. , Y) with respect to its causal parents (i.e., X and Z). Depending on the prediction performance one can eliminate the candidate graph and reduce the space of possible graph sets. One can update the graphs with the new data and continue on this process until no more graph is eliminated.

[0058] In the following, it is investigated how one can construct such a graph and the aim is to determine the causal relationships between the identified variables within a networking context. One can ask questions like “Does changing variable X cause a change in variable Y?” or “Is there a cause-and-effect relationship between variables A and B?” Here, X, Y, A and B can be a network configuration and / or a networking metric / KPI. An online framework is proposed for causal discovery and verification in the context of intent-based automation where the proposed algorithm helps to estimate the intervention values to be set in the intervention nodes to obtain the target variable value, while monitoring the error of the prediction, and updating the graph if the error is high. The proposed framework selects a graph which is optimum in terms of the associated prediction task to obtain the desired target value and it is deployable in the actual system. Causality Background: Causality is a study that investigates how things influence and effect each other. When one can say X is causing Y or X is causally impacting Y, it means that X is a part of data generation process of Y or X contributes to the creation of Y. Inferring the causal relation, which the identification of cause-effect relationship has been a very interesting and important research topics. Although it is a hot topic, discovering a causal-effect relationship from observation data alone is very difficult task. In other words, if one is given only data for X and Y, identifying whether X is causing Y or Y is causing X is a challenging task. In the literature, there have been different algorithms to address this problem, which is called here as Causal Discovery.

[0059] In a causal discovery problem, there can be many variables and the essential problem is to discover which variable is causally impacting which. This can be illustrated best with using directed acyclic graphs. An example of such a graph is given in Fig.2. In Figure 2, there are five variables, also called as nodes, X, Y, Z, W, T. An arrow (also called directed edge or link) indicates there is causal relation between two given nodes. For example, the arrow is pointed from X to Z, which means that X is a cause of Z or X is causing Z. As X is causing Z, there are also dependent nodes. In other words, when one knows X one can give information about Z. There is also a relation between W and T but this relation is not causal. When one has data for W and T and analyze the data, one can see this relation, but this is not a causal relation rather a correlation. There is significant different between causality and correlation and in this example, W does not cause T (or vise verse) but there is correlation between W and T. This difference becomes very important when one needs to change something. For instance, if one wants to change W, it will not help to change T even though they are highly correlated. T o change W, one needs to change X or Y that will change Z and then W. To make this change possible, one needs to know the causal relations, or one needs to discover the causal graph. A desired change is also called an intervention to one or more nodes. Assuming that the causal graph is discovered, then other problem one can attack is to learn the causal functions, also called Structure Causal Model (SCM). As an example, Z is a function of both X and Y, and one can show it as follows:

[0060] Z:=f(X,Y)

[0061] : is used to differentiate that it is not an ordinary function or equation but pointing out that X and Y are cause of Z. f(.) can be a simple linear or very complex non-linear function. Learning this function can be considered as a regression problem, where one can fit a function with the data of X, Y and Z. Referring also to Fig 3, in a communication and networking context, a node can be a networking or service KPI or a network configuration. For instance, based on the graph in Figure 2, X can be a network configuration such as a new priority level assigned to a service, transmit power, amount of resource allocated to a use or service, etc. Also, Z can be a network or service KPI such as throughput, latency, packet loss, QoE, etc. A KPI can be causally affected by some network configuration (i.e., allocated bandwidth) and some other uncontrollable network states such as cell load, channel condition, etc.. If one draws a sample causal graph for our networking context, one example can be shown in Fig. 3 as follows:

[0062] In Figure 3, there are three networking KPIs, latency 51 , throughput 52 and QoE 53. There are four action / network configurations, A, B, C, D 61 to 64 that one can control to change (or to intervene on) a KPI. Also, there is an uncontrollable networking state 71 denoted as S. For instance, throughput is causally impacted by actions B 63 and C 64 and also by the state S 71. In order to change QoE 53, one can attempt to change latency 51 as this graph shows that latency is causing QoE 53. There are also other options to change QoE in the network.

[0063] In two main objectives are covered: first, one aim is to discover such graphs (possible more complex graph with high number of nodes) with best accuracy, and secondly, another aim is to find a method on how one can verify and update the graph to make it more robust to changing environment and networking condition. The state-of-the-art algorithms usually take observational data and apply specific methods such as conditional independence tests and aim to achieve a final graph. However, it may not always possible to observe data corresponding to all different environments and conditions which is key for the enhancement of causal discovery. Unlike those previous works an algorithm is explained that continuously improves the graph by operating on two phases: offline and online phases.

[0064] Fig. 4 shows an example flowchart of steps carried out in the process for determining final causal graphs. In step S81 domain knowledge is determined and used as input together with network data determined in step S82 to start the generation of possible candidate causal graphs in step S83. Steps S81 to S83 are carried out in the first or offline phase. In step S84 the second or online phase starts and real data observations and interventions are used to start the causal graph elimination in step S85. As will be explained below this leads to the determination of a set of proposed candidate graphs. The domain knowledge determined in step S87 is then used to determine the final causal graphs and those graphs are used in step S89 to achieve target task goals, to monitor the task related errors and to store the relevant data. In step S90 it is asked whether the task related error meets a predefined criterion, such as whether the error is smaller than a threshold, and if this is not the case the candidate graphs are updated using the new collected data in step S91. If it is determined in step S90 that the error criterion is met the same optimum final causal graph or final causal graphs are used for the desired task in step S92.

[0065] Fig. 5 describes the different steps during the offline and online phase in more detail. The left part of Fig. 5 describes the offline phase whereas the right part of Fig. 5 describes the online phase.

[0066] During the offline phase, one can start with some initial data, the collecting step S 101 of offline data sets. The initial (i.e., offline) data may contain the measured KPIs values under different network configurations. Fig. 6 shows an exemplary initial data set to be used in the offline phase. The offline data set assumed to be large enough to ensure an accurate initial process. As discussed in more detail below the number of data sets is reduced to obtain N smaller data sets.

[0067] The main purpose of the offline phase is to apply causal discovery methodologies (e.g., scorebased, constraint-based, etc.) with the available set of observational data. Even though the online phase is designed to validate the causal dependencies generated in the offline phase, collecting and aggregating data under various configurations (i.e., through controlled interventions) would be a key step towards generating feasible graphs at the first phase.

[0068] In step S102, the offline data set is resampled to get N smaller sets. By using each smaller set, different Causal Discovery (CD) algorithms are used with an addition of domain knowledge. C ausal graph is obtained with each of the N number of data sets and each CD algorithm. Each graph can be stored. The offline data used as an input for the candidate graph generation step S102 may incorporate a wide range of measurements provided by the network along with the related configurations. In order to learn the effect of interventions , the candidate graph generation phase requires controlled experiments via interventions, (if the interventions are not possible, one can start with the available observations data). An example set of measurements may include measured latency, throughput, packet loss and number of active sessions can be collected and stored in a database for further use by causal discovery algorithms. Similarly, related configurations associated with these measurements, such as resource allocation, VNF scales and 5QI assignments, should be stored as features. The set of features (i.e., measurements and configurations) can be customized according to the needs and requirements of the target use case, and it may not be limited to the examples provided above. Besides, the scope of the offline data set collected from the network can be enriched through the information provided by other operational domains such as cloud data center. The cloud node configurations, resource utilizations and related information can be provided by the data center and stored as an offline data for further improvement of the causal discovery scope.

[0069] The required data to apply causal discovery algorithms can be retrieved through OAM solutions or exposure interfaces provided by the network such as Network Exposure Function (NEF). Once the initial offline data set is created, next one aim at discovering possible causal graphs that can be generated by using the offline data. At this stage of S102, one can aim to find multiple candidate graphs instead of a single one. The candidate graphs can include graphs obtained by different state-of-the-art causal discovery algorithms, the graphs derived from these estimated graphs, and also the graphs obtained by using (or incorporating) the domain knowledge. Those candidate graphs are expected to be close to the ground-truth graph. Next, a method to generate candidate graphs is described in more detail.

[0070] An Algorithm for Candidate Graph Generation (Offline Part)

[0071] In step S101 a Training offline data set, Dtrainis determined. At Step S101 , one start with the initial offline training set (as shown in Table 1 of Fig. 6). One does not use the whole data set denoted as Dtraininitially but rather one resample the data set into a smaller set denoted by resampie Tfijgmay be because applying existing state-of-the-art algorithm to a large data set can lead time-complexity. n=0, while n <=N.

[0072] Step S102: Dresamvle< - resample Dtrain

[0073] GnC<- causalgraphPC(£)res“mpie) + Domain Knowledge GES<- causalgraphGES(£)res“mpie) + Domain Knowledge n = n +1 end

[0074] At Step S102, the initial data set is resampled, and existing casual discovery algorithms are applied with the resampled data set. One can have N resampled data set and these are randomly generated. At Step S102, for example, PC algorithm is applied to each resampled data set (N times) and at each time it produces a causal graph. As an example, causalgraphPC(£)res“mpie) means that PC algorithm is applied to a resampled data set n, and the output graph is GEC- Other causal discovery algorithms can also be applied. For the data with temporal dependencies causal discovery algorithms suitable for time-series data such as PCMCI can be applied here as well. At this step, in order to enhance the degree of automation in the phase of integrating domain knowledge into the discovery process, the domain knowledge can be provided as an input to the discovery algorithms, so that they can be considered as the irreversible associations in the causal graph. The domain knowledge can be developed through the expertise in the domain as well as known relations in the communication networks (e.g., arrival rate and latency).

[0075] In step S103 it is calculated how often an edge between node v and node w appears by each CD algorithm over the N sets. In other words:

[0076] Step S103: <- frequency of edge (vi and Vj) over N graphs fG s <_frequency of edge (vi and Vj) over N graphs

[0077] In step S104 a weight w is given to each CD algorithm and if the weighted frequency of an edge is greater than a threshold, the edge is marked as ground truth. Otherwise, the candidate graphs are created by using both directions between the nodes v and w.

[0078] In other words :

[0079] Step S104: If w1 ff + w2 fGfs> threshold_1 , add this edge

[0080] Else, undirected edge, generate graphs with both directions.

[0081] In step S105 once the candidate graphs are generated at Step S104, one should find the functional relation for each variable (node) in each graph by using its causal parents.

[0082] In the following the steps of the offline phase are discussed in further detail. The domain knowledge used in step S102 can include two different types of information: (1) compulsory links, and (2) tabu links. The compulsory links refer to the links that should be present in the causal graph generated by the discovery algorithms. On the other side, tabu links are the ones that should not exist in the final graph. This set of information can be provided as a parameter to the given causal discovery approach. Below, there is an example set of compulsory links as well as tabu links:

[0083] • Compulsory links o {MBR, Throughput} o {Throughput, Packet loss}

[0084] • Tabu links o {Latency, 5QI} o {Throughput, VNF scale}

[0085] The example given above can be provided as a parameter (or as a constraint) to a given causal discovery method. Then, in each step of the discovery algorithm, it should consider these link information, while trying to e.g., meet conditional independence constraints or maximizing the score.

[0086] Next, the graphs found by the algorithms with domain knowledge are stored to be used in the next step S103. Other causal discovery algorithms can also be applied to each resampled data set such as GES, and similarly it produces a causal graph with each resampled data set. Such causal graphs generated by different causal discovery algorithms are stored as well. At Step S103, it is calculated how often an edge appears in each causal graph generated in Step S102. For example, one produces N causal graphs with PC algorithm at Step S102, and one can measure how many times an edge between node Vj and Vj appears. If it is observed that the edge between Vj and Vj appears with a certain frequency, e.g. 200 times over 1000 graphs, then its frequency of appearing is calculated as 200 / 1000 = 0.2. At Step S103, one calculates those frequencies for each edge generated by different causal discovery algorithms. For instance, is the frequency between node Vj and Vj with PC algorithm over N smaller data set. One may give higher priority to some causal discovery algorithms (e.g., PC can be prioritized over GES). At Step S104, one can assign weight (i.e., w1 and w2 in the algorithm to different discovery algorithms) to each causal discovery algorithm and the frequency of each edge is weighted. If the weighted frequency is greater than a threshold, it is added to the final graph. In other words, at Step S104, fully connected undirected causal graph is kept, and if the edge at Step S104 is greater than the threshold (i.e., 0.8) then the edge in the final graph becomes directed. If the frequency is less than the threshold it implies that there is still some uncertainty in the direction, and one creates two graphs with both directions.

[0087] This is explained in more detail in connection with Fig. 7 below. A fully connected undirected graph 170 is generated. Then the frequency of each edge is determined and the result can be that the frequency of edges 182 and 183 is greater than the threshold in step S104. Accordingly, edges 182 and 183 are directed. However, the frequency of edge 181 is smaller than the threshold, so that 2 candidate graphs 185 and 186 are generated, one with an edge directed from A to C ( graph 185) and another candidate graph with a directed edge from C to A ( graph 186) After Step S104, there may be many causal graphs as shown in Fig. 7. Each of these graphs is called “candidate graph”. As there may be many causal graphs, the system can put a limit on the number of generated candidate graphs. In Step S105, one can find the functional relation for each variable in each graph generated in Step S104. For the above example, for candidate graph 1 , causal parent of node B is A and C. Then one can find

[0088] B : = f(A,C, noise)

[0089] Here, f(.) can be a simple linear regression or can be more complex such as a Neural Network. In another example, for candidate graph 2, A := g(C, noise). Again, g(.) can be linear or one can develop a non-linear regression model. The idea is to use the causal parents of a given node as the input set for the corresponding functions. One can determine those functional forms for each node in each candidate graph at Step S105. After step S105 the offline phase ends and in step S106 the second phase or online phase starts. At this phase, one can verify and evaluate each of the candidate graph found at the offline phase on a working system. Here, one observes the real network, and collects data based on network configurations and network KPIs that have been changed. Unlike the offline data, in the online phase, different network configurations and states which are not seen in the offline phase can be observed. Hence, the online phase contains more data with different network environments.

[0090] The online phase can include the following steps:

[0091] Step S107: It is observed which network configuration or state has changed. For instance, priority of service 1 has changed from X to Y. Also, observe how the network KPIs change after this configuration (i.e., action) was applied, and store this information.

[0092] Step S108: Use each candidate graph to predict the impact of this change at Step S107. For example, take candidate graph x and mimic the same change at Step S107 with this candidate graph. Apply the same change over the candidate graph and using the functional relations between edges, predict each KPI. By way of example, as shown in Fig. 8 it is assumed that in real network in graph 190 node A has changed from A1 to A2. One can apply the same change over the candidate graph x. Then one predicts what happens to B and C by using the functional relations between A, B and C that has been generated in the offline phase. One can then store the predicted KPIs. This step is performed for each candidate graph.

[0093] Step S109: One compares the actual KPIs observed at Step S107 and predicted KPIs determined by each candidate graph at Step S108.

[0094] Step S110: One can calculate the average prediction error for each candidate graph, i.e. the Means Square Error MSE of all KPIs in the graph. This process can be repeated with M iterations. So that M different changes are observed. Let MSE_CG_x be the average Mean Square Error (MSE) of the prediction over all KPIs with candidate graph x.

[0095] Step S110: After calculating the MSE measured with each candidate graph, one select the graph with minimum MSE

[0096] Step S111 : One can determine K candidate graphs with minimum MSE. Those K graphs are sent to a domain expert for a final check and the expert may eliminate some graphs, if it does not reflect the domain knowledge. The final graphs can be employed to perform a target task (intervention). If the error in the task is not meeting a defined error criterium, the graphse are updated and the method returns to step S107. After K iterations, the proposed final graphs at Step S110 should not differ too much. One can determine the stable graphs with satisfying MSE at Step S110 and send them to the system. Here, one can put a limit on the number of stable graphs. For instance, we propose M final stable graphs to the system. A domain expert can also control these final stable graphs and can eliminate some graphs if they are not aligned with the domain knowledge. Then, the graph generation is finalized. Alternatively, one can select the optimum graph (the graph planning to be employed for obtaining solutions for intent management task) from the stable set of graphs based on MSE. Among the graphs in the stable set of graphs, the selected graph should be the one which is consistently better in terms of MSE. After step S111 the online phase ends.

[0097] Once the optimum graph is selected, one can use the optimum graph for intent management task (or any other task), where one can consider two additional steps: Optimum graph for target task and error computation and verification to update the optimum graph, these steps in algorithm help the automatic adaptation of the graph when underlying causal relations changes (after deployment).

[0098] • Optimum graph for target task: To achieve the target intent, one can decide the interventions (actions) on the actual system based on the optimum graph obtained. By way of example, one can consider the problem |pf automatical^ to networ k param ete rsf(re presb hted aS nt>des in the cadsai grap specific Key Performance indicator (KPI) values using the optimum causal graph, one can determine which nodes to intervene on and what values to set on these nodes to achieve the desired target KPI values. The interventions estimated can be applied to the actual system using the optimum graph.

[0099] • Error computation and verification to update the optimum graph: Once the interventions based on the optimum graph is applied to the actual system, compute the error between the actual system output and the desired target intent. For example, compute MSE between actual KPI value observed after intervening on the actual system and the desired target KPI value. If the error is below a predefined threshold use the same optimum graph for further interventions (to achieve the future target intents). If the error is not below the predefined threshold, compute the MSE between the KPI values obtained from the actual system (after intervention) and the prediction of KPI values using the other graphs in the stable graphs set (where for prediction, set node values in the graph as the intervention value already applied in the actual system). If a graph is giving lower MSE than the predefined threshold, then select this graph as the optimum graph, and use it for future intervention prediction

[0100] If none of the stable graphs are able to meet the error criterion for certain number of interventions steps, then the candidates graphs generation is repeated (as described in offline phase) using the new data (contains data after intervention also) and one goes to step S107 and continues.

[0101] The optimum graph obtained in S111 of the Algorithm can be used for different downstream tasks (intent-based automation tasks) such as constructing the proposal agent and prediction agent, root-cause analysis and management, constructing a digital twin of the network, etc. In Optimum graph for target task and Error computation and verification to update the optimum graph, the goal is to use the optimum causal graph for the intent management task, and to continuously monitor the error occurs in the outcome of the task. If the error is high, one can conclude that the causal graph used is not correct. Hence, one needs to select a new optimum graph. To obtain the new optimum graph, one can first search the stable graph set and select a graph which is meeting the error criterion. If none of the graph in the stable set is meeting the error criterion (for a predefined number of intervention steps), one can re-estimate the stable set of graphs using the new data and thus go back to step S101. Since the graph is changed adaptively (based on the error measure), this step helps the causality based intent management system to adapt in non-stationary conditions (where causal relations are changing). In Optimum graph for target task and Error computation and verification to update the optimum graph, Algorithm implicitly performs the verification of the correctness of the estimated causal graphs (in terms of error occurring while performing the intent management / automation task).

[0102] In the Algorithm, at Optimum graph for target task, for illustration, one can consider an example intent management task, that is, automatically intervene on parameters of the network to achieve certain KPI values to a desired target level. To achieve this goal, one needs to identify which parameters in the network (represented as nodes in the causal graph) to change and what value to set for them. Using the causal graph one can identify the causal parents of the target KPIs (these are the nodes one needs to intervene) and using SOM one can find the value to be applied on them.

[0103] Different intent management tasks may require different error criterions for verification. Hence, depending on the task, a suitable error criterion is used in Optimum graph for target task and Error computation and verification to update the optimum graph.

[0104] In the following experimental results are discussed in more detail.

[0105] In order to conduct experiments and validate ideas towards integrating causal learning into cognitive intent-based operations, an in-house network emulator was used. The network emulator includes containerized entities including network functions, UEs, and application instances. These individual components are implemented as web servers providing a set of APIs enabling configuration management. Based on these capabilities, the set of actions that can be executed to reconfigure the network is as follows:

[0106] MBR (Maximum Bit Rate): Changing the maximum throughput that can be achieved by a particular UE.

[0107] Propagation delay : It is a system parameter within the emulator and one can change the propagation delay with adjusting this parameter. Consequently it changes the round trip time (RTT) between the video service and a video UE.

[0108] One can implement Conversational video in the network emulator. Conversational video represents an Enhanced mobile broadband (eMBB) type service that is not latency intolerant. Instead, for this kind of service type, there are Key quality indicators (KQIs) in addition to KPIs that formulate the experienced performance by the user. For this reason, one can define QoE as the target KPI, which is based on both network and application layer measures. In addition to these service KPIs, one can implemented relevant capabilities in the emulator to measure and expose throughput, which is assumed to have high correlation with the service KPIs. Overall, relevant KPIs are QoE, throughput and packet loss, the control parameters are MBR and RTT. Next, we apply our algorithm to capture the casual relations between these KPIs and control parameters.

[0109] In a first step as shown in Fig 9, four candidate graphs 191 - 194 are generated. Then, one can move to the online phase of the algorithm. One can observe real data, and calculate the MSE of QoE by using the learnt function for each node with the causal parents in each candidate graph. One can pick the candidate graph with the minimum MSE. The minimum MSE is achieved with the graph 195 shown in Fig. 10. It is also possible to propose more than one candidate graph, The proposed final graph is aligned with the domain knowledge.

[0110] In connection with Fig. 11 it is explained how one can use the estimated causal graph for the operation of an Intent Management Function, IMF. In an embodiment, the proposed causal graph discovery process can be deployed in the IMF 200. The causal graphs, which are generated and validated on the network through a two phased process, is a promising method for handling the intent life cycle management. In this part it is proposed to utilize causal graphs for proposal and prediction steps. In this direction, the solution proposal introduces an agent to be deployed in IMF, which is responsible of creating and manipulating the causal graphs stored in the knowledge base 210. This “causal graph agent” 220 (i.e., rApp in O-RAN implementation) incorporates the causal graph discovery and validation method. By using the data collected by the data grounding agent 230 and stored in the knowledge base, the causality (causal graph) agent 210 continuously generates candidate graphs and improves them in an online manner. The produced causal graphs are stored in the knowledge base for further use by other agents.

[0111] In particular, the advantage of using causal graphs for intent-based networks is twofold: proposal and prediction. The causal relations among the actions and KPIs can be effectively used by proposal agents in order to find out the root cause leading to an issue (i.e., unmet expectation or intent). When an issue raised in IMF due to a performance degradation (e.g., latency becomes unmet), the corresponding set of proposal agents 240 that are capable of proposing actions to mitigate this issue are triggered. Similar to the typical fault management procedures, the proposal agent 240 first needs to find the root cause that raised the issue. In this regard, the proposal agent can subscribe to the causal graph service provided by the knowledge base and causality agent. To find out the related configurations (i.e., actions) that are promising to solve the issue, the proposal agent initially checks the causal graph. By traversing the tree from the leaf to root, the proposal agent 240 retrieves the list of related KPIs and configurations. Here, leaf node represents the KPI that is degraded and associated with the issue. The fetched list of related KPIs and configurations are the potential root causes for the issue, and so the proposal agent produces the set of actions that will modify the related configurations and / or KPIs. Upon receiving the proposed set of actions, the main objective of prediction agents 250 is to estimate the impact on all active KPIs in the system. The process of predictions to detect conflicts can be improved by utilizing the causal graphs. In an autonomous IMF, it is important to determine the subset of active KPIs that may be impacted by the proposed configuration instead of executing all predictions. This will minimize the duration of closed loop execution and lower the load on the computation resources.

[0112] For example, one can consider the causal graph depicted in Figure 12, which is assumed to be already stored in the knowledge base. In this example scenario, it is assumed that there is an issue with packet loss, which exceeds a threshold defined in an intent. Based on this issue, a single proposal agent or multiple proposal agents are triggered. A proposal agent would initially check the causal graph for finding out the root cause. As proposed, the proposal agent 240 traverses the tree from leaf node (packet loss in this case) to the root(s), and ancestors of the leaf node are marked as potential root causes: latency, MBR, priority. After marking them, the next step is to propose a set of actions. Correspondingly, the proposal agent 240 determines the nodes on which one can intervene. Considering the set of {I MBR, priority}, the proposal agent 240 concludes that latency is not a parameter one can be intervene on. Therefore, the proposal agent generates these proposals:

[0113] • Increasing the priority Increasing the MBR

[0114] These increases can be made at a rate to ensure optimization, or at intervals allowed by the system. The next step is to execute the predictions to estimate the impact of these proposed actions on the system. For this, one can benefit from causal graph to find out the subset of active KPIs that can be impacted by any of these actions. Since the target KPI is packet loss, first packet loss prediction is executed. Based on the functions for KPIs generated through linear or non-linear models, the estimations are made. After completing the packet loss prediction, the next step is to estimate the impact on other KPIs. After checking the causal graph, IMF concludes that the following KPIs are related to the corresponding actions:

[0115] • Priority: {latency, throughput}

[0116] • MBR: {latency, throughput}

[0117] For both priority and MBR action proposals, the impact on latency and throughput are predicted through the functions for these nodes. Here, one can assume that both latency and throughput are active in the system. In other words, there are already expectations submitted to the system via intents for such KPIs.

[0118] Utilizing the causal relations until all relevant KPIs are predicted enhances the performance of predictions and increases the accuracy of estimations. In this step, to limit the number of predictions executed in the system, one can introduce a parameter which defines the maximum number of hops between the intervened node and predicted KPI node. For example, if a KPI node is descendant of a node that is intervened on where number of hops in between is higher than a threshold, the system does not execute its prediction. This helps to optimize the prediction phase with large and complex causal graphs.

[0119] After the prediction step is completed with the predicted values of each related KPIs, the predictions are sent to the evaluation step in an evaluation agent 260.

[0120] From the above said some general conclusions can be drawn:

[0121] As can be deduced from the above said each of the candidate causal graphs can include nodes and edges wherein the generation of the plurality of candidate causal graphs comprises generating a plurality of test causal graphs wherein it is determined for the plurality of test causal graphs how often an edge linking to defined nodes together is present in the test causal graphs and if the edge is present in the test causal graphs more than a threshold value, the corresponding edge is kept in the test causal graph to become part of one of the candidate causal graphs.

[0122] Here it is possible to weight the edges of the test causal graphs based on a method used to generate the corresponding test causal graphs and if a weighted frequency of a corresponding edge is greater than a threshold value the corresponding edge becomes part of the candidate causal graphs as directed edge.

[0123] If the weighted frequency of the corresponding edge is smaller than a threshold value, two candidate causal graphs may be generated with the corresponding edge being directed in opposite direction, so that a first graph is generated where the corresponding edge is a directed edge pointing in one of the two possible directions and the second graph is generated where the corresponding edge is a directed edge pointing in the other of the two possible directions. This was discussed above in connection with Fig. 7.

[0124] From the training data sets it is possible to generate at least one resampled data set having a smaller amount of data than the training data set and the plurality of candidate causal graphs are generated using the resampled data set.

[0125] Furthermore it is possible that at least 2 final causal graphs are determined and the steps in the second phase are reiterated until two of the final causal graphs do not differ from one another by more than a threshold value.

[0126] If the difference between the actual and the predicted second value is larger than an error threshold for at least some of the predicted second values, the method may return to the generation of new candidate causal graphs in the plurality of causal graphs in the first phase and the calculating of the predicted second values and the comparing is repeated until the difference is smaller than an error threshold

[0127] The actual data sets used in the online phase can differ from the training data sets used in the offline phase by a topology of the cellular network with which the actual data sets is determined which may be different from the topology used in the cellular network in which the test data sets are determined. Furthermore, the number of user entities served through the cellular network or the number of services provided by the cellular network may be different in the actual and the training data sets. In addition, an environment of the cellular network in which the actual data sets are determined can be different from the environment of the cellular network in which the test data sets are determined. The environment may be different in view of the number of user entities served in the network or the number of services provided by the network.

[0128] The first and the second network related parameter can include a network configuration of the cellular network or a performance indicator for the cellular network such as a quality of experience, data throughput, latency, packet loss or round trip time.

[0129] The training data sets may be determined from exposure interfaces provided in the cellular network.

[0130] For each of the candidate causal graphs a functional relationship between each of the nodes present in the corresponding candidate causal graph can be determined. Furthermore the at least one final causal graph which is provided for further use can be provided for using the at least one final causal graph to determine at least one root cause of a problem present in the cellular network. Furthermore it is possible to use the at least one final causal graph to provide an explanation of how a problem occurring in the cellular network is solved, or it may be used for amending a topology or one of the network related parameters based on the at least one final causal graph in order to obtain a defined performance indicator for the cellular network.

[0131] The plurality of different actual data sets are used with different actual values of the first and second network related parameter.

[0132] As far as the intent management entity is concerned, the intent management entity can furthermore comprise a prediction agent configured to predict an impact of the proposed amendment to a first use network parameter on other network parameters in the cellular network.

[0133] Fig. 13 summarizes some of the steps carried out by the processing device in the above discussed generation of the final causal graph. In step S111 a plurality of candidate causal graphs are generated based on the training data in the first phase and in the second phase actual values of the first network related parameter and the second network related parameter are determined. Furthermore, in the second phase in step S112 a first actual value of the first network related parameter and a second actual value of the second network related parameter is detected. In step S113 a predicted second value is determined in the second phase of the second network related parameter for each of the candidate causal graphs based on the first actual value. Based on the detected second value and the calculated second values it is possible in step S40 to compare the predicted second values determined with each of the candidate causal graphs to the second actual value of the second network related parameter so that for each candidate causal graph it is possible to determine a difference between the actual and the predicted second value. In step S115 at least one final causal graph is determined based on the comparing and in step S116 the at least one final causal graph is provided for a further use.

[0134] Fig. 14 shows a schematic architectural view of the processing device 100 which can carry out the above discussed calculation of the candidate and final causal graphs. The device 100 comprises an interface provided for transmitting data and control messages to other entities and provided for receiving data and control messages from other entities. The device 100 comprises a processing unit 120 which is responsible for the operation of the device 100. The processing unit 120 can comprise one or more processors and can carry out instructions stored on a memory 130, wherein the memory may include a read-only memory, a random access memory, a mass storage, a hard disk or the like. The memory can furthermore include suitable program code to be executed by the processing unit 120 so as to implement the abovedescribed functionalities of the processing device 100. The processing device 100 can be implemented in a single node or may be distributed over several nodes or entities in a cloud implementation or in a virtualized environment.

[0135] The above proposes an iterative causal discovery method that can help domain experts to understand the causal relations between network KPIs by providing multiple candidate graphs with good accuracy. In this sense, the causal discovery method is robust.

[0136] The invention can utilize the combination of standard causal discovery algorithms with an improved way. The improvements are achieved by testing the algorithm over different data set and constructing a set of candidate graph instead of a single graph.

[0137] One can verify and evaluate each candidate graph by testing their cause-effect relation, prediction performance, and invariance conditions. At the end it is proposed to select a few candidate graphs that can reflect the data best. One can adaptively select and utilize the best graph among the candidate graphs to perform the intervention to achieve the target intent.

[0138] The solution is adaptive in scenarios where the causal relations can change, or a new KPI is observed in the network.

[0139] The above proposes an approach to integrate the proposed method into intent management function for enhancing the performance of intent handling processes.

[0140] Overall, this application does not attempt to find a single causal graph that reflects the true causal relations best. Instead, we provide a solution that can generate multiple graphs and give an option to the system to select one or more graph for its operations. As more data comes or new environment is experienced, the graphs are updated and eventually only a few candidate graphs are left to the system. This is more practical way since finding the best graph (ground truth graph) usually is not possible to find and also the ground truth is unknown to the network operator

[0141] One of the most promising practical use cases for this invention is in decision making in autonomous cognitive networks. With a causal graph, all causal relation between action-KPIs and KPIs-KPIs are known, this will bring important benefits as we mention below:

[0142] Enhanced Root Cause Analysis: By using a causal graph, the root cause of a networking issue can be identified in better way as we know all the causal relations. There might be many root-causes to a particular problem, and using a causal graph can help identifying the most probable causes and directing us to the most relevant correction actions. Improved Explainability: When we observe a networking issue (g., QoE degradation), we can explain why the problem arises (eg., QoE degraded because throughput decreases but latency looks good). This capability enables the capability of explainability, and allows the operator to explain why a specific action is taken but not the others (eg., allocate more bandwidth since we observe the reason is throughput degradation)

[0143] Continuous Improvement for Optimization: The proposed solution allows to perform optimum actions to obtain the desired KPI value based on the causal relations and functions, which are continuously improved and validated.

[0144] Self-adaptiveness: The solution is useful in scenarios where the system is nonstationary in terms of its causal structures. This capability helps to update the causal graph whenever actual system’s causal relation changes.

Claims

Claims1 . A method carried out by a processing device, comprising:- generating, in a first phase, a plurality of candidate causal graphs based on training data sets, each of the candidate causal graphs providing a causal relationship relating a corresponding first network related parameter of a cellular network to a second network related parameter of the cellular network,- detecting in a second phase, based on actual data sets of the cellular network, a first actual value of the first network related parameter and a second actual value of the second network related parameter,- calculating, in the second phase, a predicted second value of the second network related parameter for each of the candidate causal graphs based on the first actual value and the plurality of candidate causal graphs generated in the first phase,- comparing, in the second phase, the predicted second values determined with each of the candidate causal graphs, to the second actual value of the second network related parameter, in order to determine, for each candidate causal graph, a difference between the actual and the predicted second value,- determining, at least one final causal graph based on the comparing,- providing the at least one final causal graph for further use.

2. The method of claim 1 , wherein each of the candidate causal graphs includes nodes and edges, wherein generating the plurality of candidate causal graphs comprises generating a plurality of test causal graphs wherein it is determined for the plurality of test causal graphs, how often an edge linking 2 defined nodes together is present in the plurality of test causal graphs, and if the edge is present in the plurality of test causal graphs more than a threshold value, the corresponding edge is kept in the test causal graph to become part of one of the candidate causal graphs.

3. The method of claim 2, wherein the edges of the test causal graphs are weighted based on a method used to generate the corresponding test causal graph and if a weighted frequency of a corresponding edge is greater than the threshold value, the corresponding edge becomes part of the candidate causal graphs as directed edge.

4. The method of claim 3, wherein if the weighted frequency of the corresponding edge is smaller than the threshold value, two candidate causal graphs are generated with the corresponding edge being directed in opposite direction, with a first graph where the corresponding edge is a directed edge pointing in one of the 2 possible directions, and asecond graph where the corresponding edge is a directed edge pointing in the other of the 2 possible directions.

5. The method of any preceding claim, wherein, from the training data sets at least one resampled data set is generated having a smaller amount of data than the training data set, wherein the plurality of candidate causal graphs are generated using the resampled data set.

6. The method of any preceding claim, wherein at least 2 final causal graphs are determined, wherein the steps in the second phase are reiterated until 2 of the final causal graphs do not differ from one another by more than a threshold value.

7. The method of any preceding claim, if the difference between the actual and predicted second value is larger than an error threshold for at least some of the predicted second values, the method returns to generating new candidate causal graphs in the plurality of causal graphs in the first phase, and the calculating of the predicted second values and the comparing is repeated until the difference is smaller than the error threshold.

8. The method of any preceding claim, wherein the actual data sets differ from the training data sets by at least one of the following:- a topology of the cellular network in which the actual data sets are determined is different from a topology of the cellular network in which the test data sets are determined,- a number of user entities served through the cellular network,- a number of services provided in the cellular network,- an environment of the cellular network in which the actual data sets are determined is different from an environment of the cellular network in which the test data sets are determined.

9. The method of any preceding claim, wherein the first and the second network related parameter includes at least one of the following:- a network configuration of the cellular network,- a performance indicator for the cellular network including at least one of Quality of Experience, data throughput, latency, and packet loss.

10. The method of any preceding claim, wherein the training data sets are determined from exposure interfaces provided in the cellular network.11 . The method of any preceding claim, further determining, for each of the candidate causal graphs, a functional relationship between each of the nodes present in the corresponding candidate causal graph.

12. The method of any preceding claim, wherein providing the at least one final causal graph for further use comprises at least one of the following:- using the at least one final causal graph to determine at least one root cause of a problem present in the cellular network,- using the at least one final causal graph to provide an explanation of how a problem occurring in the cellular network is solved, ,- amending a topology or one of the network related parameters based on the at least one final causal graphs in order to obtain a defined performance indicator for the cellular network.

13. The method of any preceding claim, wherein a plurality of different actual data sets are used with different actual values of the first or second network related parameter.

14. A processing device configured to:- generating, in a first phase, a plurality of candidate causal graphs based on training data sets, each of the plurality of candidate causal graphs providing a causal relationship relating a corresponding first network related parameter of a cellular network to a second network related parameter of the cellular network,- detecting in a second phase, based on actual data sets of the cellular network, a first actual value of the first network related parameter and a second actual value of the second network related parameter,- calculating, in the second phase, a predicted second value of the second network related parameter for each of the candidate causal graphs based on the first actual value,- comparing, in the second phase, the predicted second values determined with each of the candidate causal graphs, to the second actual value of the second network related parameter, in order to determine, for each candidate causal graph, a difference between the actual and the predicted second value,- determining, at least one final causal graph based on the comparing,- providing the at least one final causal graph for further use.

15. The processing device of claim 14, wherein each of the candidate causal graphs includes nodes and edges, wherein the processing device is further configured for generating the plurality of candidate causal graphs to generate a plurality of test causal graphs wherein it is determined for the plurality of test causal graphs, how often an edge linking 2 defined nodestogether is present in the plurality of test causal graphs, and if the edge is present in the test causal graphs more than a threshold value, the corresponding edge is kept in the test causal graph to become part of one of the candidate causal graphs.

16. The processing device of claim 15, further being configured to weight the edges of the test causal graphs based on a method used to generate the corresponding test causal graph and if a weighted frequency of a corresponding edge is greater than the threshold value, the corresponding edge becomes part of the candidate causal graphs as directed edge.

17. The processing unit of claim 16, further being configured, if the weighted frequency of the corresponding edge is smaller than the threshold value, to generate two candidate causal graphs with the corresponding edge being directed in opposite direction, with a first graph where the corresponding edge is a directed edge pointing in one of the 2 possible directions, and a second graph where the corresponding edge is a directed edge pointing in the other of the 2 possible directions.

18. The processing device of any of claims 14 to 17, further being configured to generate, from the training data sets at least one resampled data set having a smaller amount of data than the training data set, and to generate the plurality of candidate causal graphs using the resampled data set.

19. The processing device of any of claims 14 to 18, further being configured to determine at least 2 final causal graphs, and to reiterate the steps in the second phase until 2 of the final causal graphs do not differ from one another by more than a threshold value.

20. The processing device of any of claims 14 to 19, further being configured, if the difference between the actual and predicted value is larger than an error threshold for at least some of the plurality predicted second values, to return to generating new candidate causal graphs in the plurality of causal graphs in the first phase, and to calculate the predicted second values, and to repeat the comparing until the difference is smaller than the error threshold.

21. The processing device of any of claims 14 to 20, wherein the actual data sets differ from the training data sets by at least one of the following:- a topology of the cellular network in which the actual data sets are determined is different from a topology of the cellular network in which the test data sets are determined,- a number of user entities served through the cellular network,- a number of services provided in the cellular network.

22. The processing device of any of claims 14 to 21 , wherein the first and the second network related parameter includes at least one of the following:- a network configuration of the cellular network,- a performance indicator for the cellular network including at least one of Quality of Experience, data throughput, latency, and packet loss.

23. The processing device of any of claims 14 to 22, further being configured to determine the training data sets are determined from exposure interfaces provided in the cellular network.

24. The processing device of any of claims 14 to 23, further being configured to determine for each of the candidate causal graphs, a functional relationship between each of the nodes present in the corresponding candidate causal graph.

25. The processing device of any of claims 14 to 24, further being configured, for providing the at least one final causal graph for further use, to carry out at least one of the following:- use the at least one final causal graph to determine at least one root cause of a problem present in the cellular network,- use the at least one final causal graph to provide an explanation of how a problem occurring in the cellular network is solved,- amend a topology or one of the network related parameters based on the at least one final causal graphs in order to obtain a defined performance indicator for the cellular network.

26. The processing device of any of claims 14 to 25, further being configured to use a plurality of different actual data sets with different actual values of the first or second network related parameter.

27. An intent management entity configured to carry out a method as mentioned in any of claims 1 to 13, wherein the intent management entity comprises- a causal graph agent configured to generate the plurality of candidate causal graphs in the first phase and the at least one final causal graph in the second phase,- a data grounding agent configured to collect the training data sets and actual data sets and configured to provide the training data sets and actual data sets to the causal graph agent,- a proposal agent configured to use the generated at least one final causal graph, to find out a root cause of a problem occurring in the cellular network, and to propose an amendment to a first used network parameter used in the cellular network.

28. The intent management entity of claim 27, further comprising a prediction agent configured to predict an impact of the proposed amendment to a first used network parameter on other network parameters in the cellular network.

29. A computer program comprising program code to be executed by at least one processing unit (120) of a processing device (100), wherein execution of the program code causes the at least one processing unit to carry out a method as mentioned in any of claims 1 to 13.

30. A carrier comprising the computer program of claim 29, wherein the carrier is one of an electronic signal, optical signal, radio signal, and computer readable storage medium.

Citation Information

Patent Citations

  • Method and system of generating causal structure

    EP4310736A1

  • Apparatus and method of data processing

    US20230281460A1

  • Root cause analysis of computerized system anomalies based on causal graphs

    US20230325269A1

Cited By

  • Formation mechanism analysis method and system for competitive behaviors of e-commerce platform

    CN121352930A

  • SAH post-delayed cerebral ischemia risk feature robust screening method based on mixed causal structure learning and related equipment

    CN122024976A