Abstract: Edge computing is growing massively, and major day to day activity that will be performed on these devices are application deployments and patch upgrades. Frequency of these activities are high compared to traditional servers due to the nature of workloads such as machine learning models and heterogeneity in edge devices. Conventionally, the server activities are managed through remote agents with centralized management software. The present disclosure provides an onboard edge intelligent framework which aims to compute optimal activity scheduling parameters dynamically that helps in simplifying edge activity management and reduce operation cost by increasing the activity success rate. The onboard edge intelligent framework of the present disclosure is built based on graph analytics which computes the plurality of optimal activity scheduling. Finally, the present disclosure generates a list of upgradable edge devices for patch deployment or software upgradation based on the plurality of optimal activity scheduling parameters.
Description:FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
METHOD AND SYSTEM FOR DYNAMICALLY COMPUTING OPTIMAL ACTIVITY SCHEDULING PARAMETERS IN EDGE COMPUTING ENVIRONMENT
Applicant:
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th Floor,
Nariman Point, Mumbai 400021,
Maharashtra, India
The following specification particularly describes the invention and the manner in which it is to be performed.
TECHNICAL FIELD
The disclosure herein generally relates to the field of edge computing and, more particularly, to a method and system for dynamically computing optimal activity scheduling parameters in edge computing environment.
BACKGROUND
Edge computing has emerged as a new computing paradigm that allows computation and storage resources nearer to the data source in a distributed manner. Edge environments are dynamic and have massive amounts of distributed devices of heterogeneous hardware, runtime environments, operating system, applications, network, downstream components. However, application deployment and security patch upgrade activities on edge devices are considered as highly critical and complex for all edge environments. Lack of intelligence and high frequency of these activities are resulting in business loss and high day to day operations cost.
Conventionally, server activities in edge computing environments are managed through remote agents with centralized management software. These agents and software are mostly rule based with Artificial Intelligence (AI) capability limited to centralized management tasks of activity sequencing and failure prediction based on historical logs. These solutions on edge computing environments become complex, error prone and costly, as they do not take account of edge topology, its real time structural parameters and device characteristics. Hence there is a challenge in developing a dynamic framework to solve the above challenges.
SUMMARY
Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for dynamically computing optimal activity scheduling parameters in edge computing environment is provided. The method includes receiving, by one or more hardware processors, to obtain a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique. Furthermore, the method includes computing, by the one or more hardware processors, a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information. Furthermore, the method includes generating, by the one or more hardware processors, a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using a Graph Convolution Network (GCN) and a Gated Recurrent Network (GRN). Furthermore, the method includes predicting, by the one or more hardware processors, a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models, wherein the plurality of activity metrics associated with each of the plurality of edge devices comprises an activity duration, an activity success rate, and an activity compliance, wherein the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph using a Relational Graph convolutional network (R-GCN), wherein the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model and wherein the activity compliance associated with each of the plurality of edge devices is predicted based on the plurality of temporal performance features using a Graph Neural Network (GNN). Furthermore, the method includes generating, by the one or more hardware processors, a plurality of optimal activity scheduling parameters for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics, wherein the plurality of optimal activity scheduling parameters comprises the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate. Finally, the method includes simultaneously identifying, by the one or more hardware processors, a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters.
In another aspect, a system for dynamically computing optimal activity scheduling parameters in edge computing environment are provided. The system includes at least one memory storing programmed instructions, one or more Input /Output (I/O) interfaces, and one or more hardware processors operatively coupled to the at least one memory, wherein the one or more hardware processors are configured by the programmed instructions to obtain a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique. Furthermore the one or more hardware processors are configured by the programmed instructions to compute a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information. Furthermore, the one or more hardware processors are configured by the programmed instructions to generate a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using a Graph Convolution Network (GCN) and a Gated Recurrent Network (GRN). Furthermore, the one or more hardware processors are configured by the programmed instructions to predict a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models, wherein the plurality of activity metrics associated with each of the plurality of edge devices comprises an activity duration, an activity success rate, and an activity compliance, wherein the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph using a Relational Graph convolutional network (R-GCN), wherein the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model and wherein the activity compliance associated with each of the plurality of edge devices is predicted based on the plurality of temporal performance features using a Graph Neural Network (GNN). Furthermore, the one or more hardware processors are configured by the programmed instructions to generate a plurality of optimal activity scheduling parameters for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics, wherein the plurality of optimal activity scheduling parameters comprises the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate. Finally, the one or more hardware processors are configured by the programmed instructions to simultaneously identify a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters.
In yet another aspect, a computer program product including a non-transitory computer-readable medium having embodied therein a computer program for dynamically computing optimal activity scheduling parameters in edge computing environment is provided. The computer readable program, when executed on a computing device, causes the computing device to receive to obtain a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique. Furthermore, the computer readable program when executed on a computing device, causes the computing device to receive to compute a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to receive to generate a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using a Graph Convolution Network (GCN) and a Gated Recurrent Network (GRN). Furthermore, the computer readable program, when executed on a computing device, causes the computing device to receive to predict a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models, wherein the plurality of activity metrics associated with each of the plurality of edge devices comprises an activity duration, an activity success rate, and an activity compliance, wherein the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph using a Relational Graph convolutional network (R-GCN), wherein the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model and wherein the activity compliance associated with each of the plurality of edge devices is predicted based on the plurality of temporal performance features using a Graph Neural Network (GNN). Furthermore, the method includes generating, by the one or more hardware processors, a plurality of optimal activity scheduling parameters for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics, wherein the plurality of optimal activity scheduling parameters comprises the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate. Finally, the method includes simultaneously identifying, by the one or more hardware processors, a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
FIG. 1 is a functional block diagram of a system for dynamically computing optimal activity scheduling parameters in edge computing environment, in accordance with some embodiments of the present disclosure.
FIG. 2 illustrates a functional architecture of the system of FIG. 1, for dynamically computing optimal activity scheduling parameters in edge computing environment, in accordance with some embodiments of the present disclosure.
FIG. 3 is an exemplary flow diagram illustrating a processor implemented method for dynamically computing optimal activity scheduling parameters in edge computing environment implemented by the system of FIG. 1 according to some embodiments of the present disclosure.
FIG. 4 is an example graph network illustrating an edge computing environment implemented by the system of FIG. 1 according to some embodiments of the present disclosure.
FIG. 5 is an example temporal graph for dynamically computing temporal parameters in edge computing environment implemented by the system of FIG. 1 according to some embodiments of the present disclosure.
FIG. 6 is an example bi-partite graph for dynamically predicting activity duration in edge computing environment implemented by the system of FIG. 1 according to some embodiments of the present disclosure.
DETAILED DESCRIPTION OF EMBODIMENTS
Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the spirit and scope of the disclosed embodiments.
Edge computing is expected to grow massively, and it is expected that edge devices will be deployed massively in remote site such as retail shops, factory floors, utility centers, autonomous cars, clinics etc. to cater low latency and real time processing applications. Hypothetically, a global enterprise having 3000 remote sites will have to manage 500,000 edge devices daily on an average. For an edge computing service provider, it will be in millions. Major day to day activity to be performed on these devices are application deployments and patch upgrades. Frequency of these activities are high compared to traditional servers due to the nature of workloads such as machine learning models and heterogeneity in edge devices.
Conventionally, the server activities (patch/application deployment/upgradation) are managed through remote agents with centralized management software. These agents and software are mostly rule based with Artificial Intelligence (AI) capability limited to centralized management tasks of activity sequencing and failure prediction based on historical logs. These solutions on edge computing environments become complex, error prone and costly, as they do not take account of edge topology, its real time structural parameters and device characteristics.
To overcome the challenges of the conventional approaches, embodiments herein provide an onboard edge intelligent framework which aims to compute optimal activity scheduling parameters dynamically that helps in simplifying edge activity management and reduce operation cost by increasing the activity success rate. The onboard edge intelligent framework of the present disclosure is built based on graph analytics. For example, the edge computing environment is represented as a graph comprising a plurality of edge devices represented as nodes and a plurality of connections among the plurality of edge devices represented as edges, wherein each edge device is associated with a weight. The onboard edge intelligent framework of the present disclosure computes the plurality of optimal activity scheduling parameters like device importance score node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate using a plurality of graph based neural network models. Finally, the present disclosure generates a list of edge devices for patch deployment or software upgradation based on the plurality of optimal activity scheduling parameters.
Referring now to the drawings, and more particularly to FIGS. 1 through 6, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
FIG. 1 is a functional block diagram of a system 100 for dynamically computing optimal activity scheduling parameters in edge computing environment, in accordance with some embodiments of the present disclosure. The system 100 includes or is otherwise in communication with hardware processors 102, at least one memory such as a memory 104, an I/O interface 112. The hardware processors 102, memory 104, and the Input /Output (I/O) interface 112 may be coupled by a system bus such as a system bus 108 or a similar mechanism. In an embodiment, the hardware processors 102 can be one or more hardware processors.
The I/O interface 112 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface 112 may include a variety of software and hardware interfaces, for example, interfaces for peripheral device(s), such as a keyboard, a mouse, an external memory, a printer and the like. Further, the I/O interface 112 may enable the system 100 to communicate with other devices, such as web servers, and external databases.
The I/O interface 112 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, local area network (LAN), cable, etc., and wireless networks, such as Wireless LAN (WLAN), cellular, or satellite. For the purpose, the I/O interface 112 may include one or more ports for connecting several computing systems with one another or to another server computer. The I/O interface 112 may include one or more ports for connecting several devices to one another or to another server.
The one or more hardware processors 102 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, node machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the one or more hardware processors 102 is configured to fetch and execute computer-readable instructions stored in the memory 104.
The memory 104 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an embodiment, the memory 104 includes a plurality of modules 106. The memory 104 also includes a data repository (or repository) 110 for storing data processed, received, and generated by the plurality of modules 106.
The plurality of modules 106 include programs or coded instructions that supplement applications or functions performed by the system 100 for dynamically computing optimal activity scheduling parameters in edge computing environment. The plurality of modules 106, amongst other things, can include routines, programs, objects, components, and data structures, which performs particular tasks or implement particular abstract data types. The plurality of modules 106 may also be used as, signal processor(s), node machine(s), logic circuitries, and/or any other device or component that manipulates signals based on operational instructions. Further, the plurality of modules 106 can be used by hardware, by computer-readable instructions executed by the one or more hardware processors 102, or by a combination thereof. The plurality of modules 106 can include various sub-modules (not shown). The plurality of modules 106 may include computer-readable instructions that supplement applications or functions performed by the system 100 for dynamically computing optimal activity scheduling parameters in edge computing environment. In an embodiment, the modules 106 include a topology information computation module 202 (shown in FIG. 2), a temporal graph generation module 204 (shown in FIG. 2), an activity metrics prediction module 206 (shown in FIG. 2), an optimal activity scheduling parameters generation module 208 (shown in FIG. 2), and a list of upgradable edge devices identification module 210 (shown in FIG. 2). In an embodiment, FIG. 2 illustrates a functional architecture of the system of FIG. 1, for dynamically computing optimal activity scheduling parameters in edge computing environment, in accordance with some embodiments of the present disclosure.
The data repository (or repository) 110 may include a plurality of abstracted piece of code for refinement and data that is processed, received, or generated as a result of the execution of the plurality of modules in the module(s) 106.
Although the data repository 110 is shown internal to the system 100, it will be noted that, in alternate embodiments, the data repository 110 can also be implemented external to the system 100, where the data repository 110 may be stored within a database (repository 110) communicatively coupled to the system 100. The data contained within such an external database may be periodically updated. For example, new data may be added into the database (not shown in FIG. 1) and/or existing data may be modified and/or non-useful data may be deleted from the database. In one example, the data may be stored in an external system, such as a Lightweight Directory Access Protocol (LDAP) directory and a Relational Database Management System (RDBMS). The working of the components of the system 100 are explained with reference to the method steps depicted in FIG. 3.
FIG. 3 is an exemplary flow diagram illustrating a method 300 for dynamically computing optimal activity scheduling parameters in edge computing environment implemented by the system of FIG. 1 according to some embodiments of the present disclosure. In an embodiment, the system 100 includes one or more data storage devices or the memory 104 operatively coupled to the one or more hardware processor(s) 102 and is configured to store instructions for execution of steps of the method 300 by the one or more hardware processors 102. The steps of the method 300 of the present disclosure will now be explained with reference to the components or blocks of the system 100 as depicted in FIG. 1 and the steps of flow diagram as depicted in FIG. 3. The method 300 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 300 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communication network. The order in which the method 300 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300, or an alternative method. Furthermore, the method 300 can be implemented in any suitable hardware, software, firmware, or combination thereof.
At step 302 of the method 300, the one or more hardware processors 102 are configured by the programmed instructions to obtain a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique. For example, the edge computing environment is represented as a graph as shown in FIG. 4 which includes a plurality of edge devices represented as nodes and a plurality of connections among the plurality of edge devices represented as edges, wherein each edge device is associated with a weight and a plurality node properties (device characteristics like hardware type, Operating System (OS), runtime environment, number of services and application). The edge weight indicates number of transactions associated with each of the plurality of edge devices.
At step 304 of the method 300, the topology information computation module 202 executed by one or more hardware processors 102 is configured by the programmed instructions to compute a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information.
For example, the device importance score corresponding to each of the plurality of edge devices is computed based on the plurality of real time parameters corresponding to each of the plurality of edge devices. The steps for computing the device importance score is explained as follows. Initially, a betweenness centrality score associated with each of the plurality of edge devices is computed based on shortest paths associated with the edge computing environment using a betweenness closeness algorithm, wherein betweenness is a measure of centrality in a graph based on shortest paths. Further, a page rank score associated with each of the plurality of edge devices is computed simultaneously based on a relationship between peer edge devices of the edge computing network using a weighted Personalized Page Rank (PPR) graph algorithm. Finally, the device importance score corresponding to each of the plurality of edge devices is computed by performing rank aggregation of the associated betweenness centrality score and the associated page rank score.
For example, the node clustering data corresponding to each of the plurality of edge devices is computed based on a corresponding node embedding using Node2Vec and K-means clustering technique. The node clustering data includes a node ID and a group ID. For example, the node embedding associated with each of the plurality of edge devices includes a node source ID (edge device ID), a node target ID (a downstream or upstream device ID), a node value (number of applications) and a node weight (number of transactions).
At step 306 of the method 300, the temporal graph generation module module 204 executed by the one or more hardware processors 102 is configured by the programmed instructions to generate a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using Graph Convolution Network (GCN) and Gated Recurrent Network (GRN). The plurality of temporal performance features includes a CPU performance, a Memory usage and a Disk usage.
An example temporal graph is illustrated in FIG. 5. Now referring to FIG. 5, the whole data set is sorted date-time wise. In an embodiment, for each bucket of 4 hours two snapshots were created. Current 4hour snapshot covers the edge node features and the subsequent 4hr snapshot captures the labels for the current snapshot. Labels of subsequent snapshot are added as the feature in the next time window as shown in FIG. 5. For example, SKLearn libraries (MinMax scheduler, Dummier, Onehot encoding) are used for node feature conversion and normalization in current snapshot Graph G =(V,E,W), where V and W are the edge nodes with E as links connecting two edge devices. The CPU, Memory and Disk usage for the next 4 hours are predicted while scheduling the activity.
For example, the node features for current and labels for subsequent snapshot are created. This creates a sliding window for the time series graph database. For example, temporal node features = (Total no of nodes, Features of each node, Timestamp) = (18,48,4) implies 18 nodes with each having feature of dimension 7 of 4 time stamp in current snapshot. Temporal labels = (Total no of nodes, subsequent snapshot label for next 4 hours) = (18,4) which implies 18 nodes each having 4 timestamp labs of subsequent snapshot.
At step 308 of the method 300, the activity metrics prediction module 206 executed by the one or more hardware processors 102 is configured by the programmed instructions to predict (308), a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models. The plurality of activity metrics associated with each of the plurality of edge devices includes an activity duration, an activity success rate and an activity compliance. For example, Pytorch Geometric A3TGCN model is used for prediction. This model uses a Graph Convolutional Neural Network (GCNN) and a Gated recurrent unit. The dataset loaders created in previous steps are sent as input to these models.
The plurality of neural network models are trained with hyper parameter tuning on optimizers like Adam, activation function like Rectified Linear Unit (ReLU) and hyperparameters. The validation of the model is done based on the train test split. Root Mean Square Error (RMSE) metric is used to measure the model performance. RMSE is calculated based on the validation set with predicted and true labels. Lower the RMSE better the performance. Once the model is trained, an example 4 hour snapshot of device performance metrics with node features of edge devices on which the activities are planned are input to the model to get the next four hour performance predictions. In another embodiments, the snapshot of device performance metrics can be calculated in 6 hours,12 hours and the like.
In an embodiment, below code depicts sample A3TGCN neural structure.
TemporalGNN (
(tgnn): A3TGCN2(
(_base_tgcn): TGCN2(
(conv_z): GCNConv(7, 32)
(linear_z): Linear(in_features=64, out_features=64, bias=True)
(conv_r): GCNConv(7, 32)
(linear_r): Linear(in_features=64, out_features=64, bias=True)
(conv_h): GCNConv(7, 32)
(linear_h): Linear(in_features=512, out_features=64, bias=True)
)
)
(linear): Linear(in_features=32, out_features=5, bias=True)
)
For example, the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph as shown in FIG. 6 using a Relational Graph convolutional network (R-GCN). To create bi-partite graph Edge nodes are divided into two sections, 1) Edge devices 2) Activity.
Edge node properties, activity node properties and link weights are extracted from the graph database and stored in a data frame using Python script. The edge node properties include a Node ID, Device Type, Operating System, Upload speed, Download Speed, Connection status, Memory Usage, Number of applications. The activity node properties include an activity ID, activity type, activity OS, product, task details, severity (high/medium/low), activity duration (in minutes) and node ID. In python script Graph data structures representing the edge computing environment are extracted from the graph database into pandas data frame format (format used by Graph libraries to run analytical algorithms). Device node and activity node embeddings are generated based on the extracted properties. SKLearn libraries Dummies for numerical, Onehot encoding for categorical, pre-trained Word2Vec are used for node and activity node property encodings. Embeddings are generated in 8 dimensions by concatenating the column vectors. After embedding creation, Edge indexes are prepared in Coordinate format (source node index, target node indexes) from the above data frame. The First list contains the index of the source nodes, while the index of target nodes is specified in the second list. The source node embedding includes a node ID and a node embedding of 16 dimensions. The activity embedding includes an activity ID and an activity embedding of 16 dimensions. The edge link table includes a node source ID, node target ID, Edge weight.
The Relational Graph convolutional network (R-GCN) model is used to predict the activity duration due to different edge (link) types. R-GCN is built with 3 message passing and nonlinearity between the layers. Edge node embedding = sum (Activity node and Edge node vectors) of subgraph created after 3-hop message passing in R-GCN. After edge node embedding extraction, a multi-layer perceptron is used for predicting the edge weights (Duration). The present disclosure utilizes an Adam optimizer for model optimization and a mean square loss metric for the model validation. Removed edges are used for model validation. During training some of the existing links are removed and the same is used to validate the model by predicting it with the trained model.
In an embodiment, when existing application or patch activity needs to be done on any existing edge devices the 3-hop subgraph is extracted from the existing bi-partite graph and uses the trained model to predict the duration. When a new application or patch activity needs to be deployed or any old activity to be performed on a new device then a two-step process is followed. First is to extract the embedding of the new activity or new device based on the activity or device properties extracted from the graph database. The cosine similarity scores between the trained graph nodes and new node or activity embeddings is calculated. The similar nodes or activity in the trained graph are chosen and the duration is predicted as above.
For example, the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model.
For example, activity success rate is learned from historical information of similar activity performed on the same or similar edge environment. The GraphSage neural network model is considered for predicting the activity success rate. GraphSage algorithm is inductive as it learns a function to generate embeddings based on the neighbor’s information. The task is binary class node label supervised learning classification. A binary ‘0’ represents failure and a binary ‘1’ represents success.
GraphSage is an inductive deep learning method which generalizes for unseen edge nodes. Two important layers in graph neural networks are message passing and aggregation layer. Graph sage uses neighbor sampling method for message passing. The sampler randomly selects a predefined number of neighbors and creates a subgraph for each node in the edge environment. This subgraph contains the target and 2 hop sampled nodes. Second layer is an aggregation layer. GraphSage algorithm learns the weight matrix individually at each search depth during training. The target node embedding is created with the information sampled from neighbors at each layer up to 2 hops as required. The embeddings are used for supervised node classification tasks of success or failure. Model is trained for 256 dimensional vector node embeddings with hyper parameter tuning on optimizers like Adam, activation function like ReLU and hyperparameters. Binary cross entropy is the loss function used for model performance. An example GraphSage structure is given below.
SAGE(
(convs): ModuleList(
(0): SAGEConv(8, 256, aggr=mean)
(1): SAGEConv(256, 256, aggr=mean)
(2): SAGEConv(256, 1, aggr=mean)
)
)
At step 310 of the method 300, the optimal activity scheduling parameters generation module 208 executed by the one or more hardware processors 102 is configured by the programmed instructions to generate a plurality of optimal activity scheduling parameters (as shown in Table 1) for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics. The plurality of optimal activity scheduling parameters includes the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate.
Table 1
S.No. Output Format Value range Parameter usage in scheduling
1 Importance score Int 0 to 1 Used to decide on schedule window
2 Group ID Int 0 to max of nodes Used to decide on activity grouping
3 Predicted device performance Percentage 0 to 100 Used to filter devices ID based on performance
4 Predicted Activity Duration Time 0 to 60 Plan down time
5 Predicted Success rate Boolean 0 or 1 Filter only successful device ID
At step 312 of the method 300, the list of upgradable edge devices identification module 208 executed by the one or more hardware processors 102 is configured by the programmed instructions to simultaneously identify a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters. The upgradable edge devices include a plurality of newly added devices, a plurality device which patch/application upgradation.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
The embodiments of present disclosure herein address the unresolved problem of dynamically computing activity scheduling parameters in edge computing environment. The present disclosure aims to reduce the error rate of edge application deployment or patch upgrade failures with the help of an onboard edge intelligent framework. Onboard edge intelligent framework is built based on graph analytics which computes topology information and predicts activity metrics for generating optimal activity scheduling parameters.
It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein such computer-readable storage means contain program-code means for implementation of one or more steps of the method when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means can include both hardware means, and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g., using a plurality of CPUs, GPUs and edge computing devices.
The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various modules described herein may be implemented in other modules or combinations of other modules. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise. Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e. non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.
, Claims:
1. A processor implemented method (300), comprising:
obtaining (302), via an input/output interface, a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique;
computing (304), by one or more hardware processors, a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information;
generating (306), by the by one or more hardware processors, a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using a Graph Convolution Network (GCN) and a Gated Recurrent Network (GRN);
predicting (308), by the one or more hardware processors, a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models, wherein the plurality of activity metrics associated with each of the plurality of edge devices comprises an activity duration, an activity success rate, and an activity compliance,
wherein the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph using a Relational Graph convolutional network (R-GCN),
wherein the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model; and
wherein the activity compliance associated with each of the plurality of edge devices is predicted based on the plurality of temporal performance features using a Graph Neural Network (GNN);
generating (310), by the one or more hardware processors, a plurality of optimal activity scheduling parameters for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics, wherein the plurality of optimal activity scheduling parameters comprises the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate; and
simultaneously identifying (312), by the one or more hardware processors, a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters.
2. The processor-implemented method as claimed in claim 1, wherein the edge computing environment is represented as a graph comprising a plurality of edge devices represented as nodes and a plurality of connections among the plurality of edge devices represented as edges, wherein each edge device is associated with a weight.
3. The processor implemented method as claimed in claim 1, wherein the plurality of temporal performance features comprises a CPU performance, a memory usage and a disk usage and, wherein the plurality of spatial performance features comprises a model edge index, a node feature and edge weights.
4. The processor implemented method as claimed in claim 1, wherein the device importance score corresponding to each of the plurality of edge devices is computed based on the plurality of real time parameters corresponding to each of the plurality of edge devices by:
computing a betweenness centrality score associated with each of the plurality of edge devices based on shortest paths associated with the edge computing environment using a betweenness closeness algorithm, wherein betweenness is a measure of centrality in a graph based on shortest paths;
simultaneously computing a page rank score associated with each of the plurality of edge devices based on a relationship between peer edge devices of the edge computing network using a weighted Personalized Page Rank (PPR) graph algorithm; and
computing the device importance score corresponding to each of the plurality of edge devices by performing rank aggregation of associated betweenness centrality score and the associated page rank score.
5. The processor implemented method as claimed in claim 1, the node clustering data corresponding to each of the plurality of edge devices is computed based on a corresponding node embedding using K-means clustering technique, wherein the node clustering data comprises a node ID and a group ID.
6. The processor implemented method as claimed in claim 1, wherein the activity compliance is predicted based on the plurality of temporal performance features.
7. A system (100) comprising:
at least one memory (104) storing programmed instructions; one or more Input /Output (I/O) interfaces (112); and one or more hardware processors (102) operatively coupled to the at least one memory (104), wherein the one or more hardware processors (102) are configured by the programmed instructions to:
obtain a plurality of real time parameters corresponding to each of a plurality of edge devices associated with an edge computing environment using a real time data acquisition technique;
compute a plurality of topology information corresponding to each of the plurality of edge devices based on a corresponding plurality of real time parameters, wherein the plurality of topology information comprises a device importance score and, a node clustering information;
generate a temporal graph by predicting a plurality of temporal performance features associated with each of the plurality of edge devices based on near real time device statistics using a Graph Convolution Network (GCN) and a Gated Recurrent Network (GRN);
predict a plurality of activity metrics associated with the edge computing environment based on the plurality of real time parameters and a historical data using a plurality of neural network models, wherein the plurality of activity metrics associated with each of the plurality of edge devices comprises an activity duration, an activity success rate, and an activity compliance,
wherein the activity duration associated with each of the plurality of edge devices is predicted based on an edge device-activity bi-partite graph using a Relational Graph convolutional network (R-GCN),
wherein the activity success rate associated with each of the plurality of edge devices is predicted based on the historical data using a Graph Sage Neural Network (GSNN) model; and
wherein the activity compliance associated with each of the plurality of edge devices is predicted based on the plurality of temporal performance features using a Graph Neural Network (GNN);
generate a plurality of optimal activity scheduling parameters for an edge computing environment by combining the plurality of topology information and a predicted plurality of activity metrics, wherein the plurality of optimal activity scheduling parameters comprises the device the importance score, the node clustering information, a predicted activity compliance, the predicted activity duration, and the predicted activity success rate; and
simultaneously identify a list of upgradable edge devices for activity scheduling from among the plurality of edge devices based on the plurality of dynamic deployment scheduling parameters.
8. The system of claim 7, wherein the edge computing environment is represented as a graph comprising a plurality of edge devices represented as nodes and a plurality of connections among the plurality of edge devices represented as edges, wherein each edge device is associated with a weight.
9. The system of claim 7, wherein the plurality of temporal performance features comprises a CPU performance, a memory usage and a disk usage and, wherein the plurality of spatial performance features comprises a model edge index, a node feature and edge weights.
10. The system of claim 7, wherein the device importance score corresponding to each of the plurality of edge devices is computed based on the plurality of real time parameters corresponding to each of the plurality of edge devices by:
computing a betweenness centrality score associated with each of the plurality of edge devices based on shortest paths associated with the edge computing environment using a betweenness closeness algorithm, wherein betweenness is a measure of centrality in a graph based on shortest paths;
simultaneously computing a page rank score associated with each of the plurality of edge devices based on a relationship between peer edge devices of the edge computing network using a weighted Personalized Page Rank (PPR) graph algorithm; and
computing the device importance score corresponding to each of the plurality of edge devices by performing rank aggregation of associated betweenness centrality score and the associated page rank score.
11. The system of claim 7, the node clustering data corresponding to each of the plurality of edge devices is computed based on a corresponding node embedding using K-means clustering technique, wherein the node clustering data comprises a node ID and a group ID.
12. The system of claim 7, wherein the activity compliance is predicted based on the plurality of temporal performance features.
| # | Name | Date |
|---|---|---|
| 1 | 202321053002-STATEMENT OF UNDERTAKING (FORM 3) [07-08-2023(online)].pdf | 2023-08-07 |
| 2 | 202321053002-REQUEST FOR EXAMINATION (FORM-18) [07-08-2023(online)].pdf | 2023-08-07 |
| 3 | 202321053002-FORM 18 [07-08-2023(online)].pdf | 2023-08-07 |
| 4 | 202321053002-FORM 1 [07-08-2023(online)].pdf | 2023-08-07 |
| 5 | 202321053002-FIGURE OF ABSTRACT [07-08-2023(online)].pdf | 2023-08-07 |
| 6 | 202321053002-DRAWINGS [07-08-2023(online)].pdf | 2023-08-07 |
| 7 | 202321053002-DECLARATION OF INVENTORSHIP (FORM 5) [07-08-2023(online)].pdf | 2023-08-07 |
| 8 | 202321053002-COMPLETE SPECIFICATION [07-08-2023(online)].pdf | 2023-08-07 |
| 9 | 202321053002-FORM-26 [17-10-2023(online)].pdf | 2023-10-17 |
| 10 | Abstract.1.jpg | 2024-01-09 |
| 11 | 202321053002-Proof of Right [17-01-2024(online)].pdf | 2024-01-17 |