Method and system for predicting resource load in industrial control systems

The method predicts ICS resource load using an approximation model trained on historical data, addressing inefficiencies in existing techniques by enabling accurate and cost-effective planning without full deployment.

WO2025224515A1PCT designated stage Publication Date: 2025-10-30ABB (SCHWEIZ) AG
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/IB2025/051816
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-25
Filing Date
2025-02-20
Publication Date
2025-10-30

Smart Images

  • Figure IB2025051816_30102025_PF_FP_ABST
    Figure IB2025051816_30102025_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method of predicting resource load in Industrial Control Systems (ICS). The method comprises receiving input configuration data associated with at least one of, a control system intended to be deployed or an application deployable for a component associated with the control system. Further, the method comprises predicting a resource load of the at least one of, the control system or the application. The resource load is predicted based on the input configuration data, by using an approximation model representing a predetermined functional relationship between historical input parameters comprising one or more attributes of a deployed control system and corresponding resource loads.
Need to check novelty before this filing date? Find Prior Art

Description

TITLE: METHOD AND SYSTEM FOR PREDICTING RESOURCE LOAD IN INDUSTRIAL CONTROL SYSTEMSTECHNICAL FIELD

[0001] The present disclosure generally relates to automation in an Industrial Control Systems (ICS). More particularly, the present disclosure relates to methods and systems for predicting resource load in the ICS.BACKGROUND

[0002] An Industrial Control System (ICS) is an electronic control system for automated control and operation of the industrial processes. Industrial control systems include Supervisory Control and Data Acquisition (SCADA) systems, Distributed Control Systems (DCS), Industrial Automation and Control Systems (IACS), Programmable Logic Controllers (PLCs), Programmable Automation Controllers (PACs), and the like.

[0003] Industrial control systems manage different components such as, field components / equipment, controllers, network components, graphic components, and the like. Various functions of the components such as control logic execution, historian management, alarm management, and the like, are combined into a single integrated control system. The industrial control systems monitor and control the ICS to enable industrial processes such as asset management, production management or any other processes that requires control and monitoring. Particularly, having a prior knowledge of resource loads of the ICS facilitates customers to efficiently predict expected workloads and operational costs for managing the industrial processes.

[0004] Existing techniques rely on a deployed ICS which is implemented in the ICS environment. The deployed ICS contains configuration data associated with its various components. The configuration data comprises data associated with models and control codes that are executed during runtime processes, data associated with network models in the case of network-centric controllers. Therefore, the deployed ICS is further configured based on an estimate of a maximum load that the deployed ICS is expected to handle based on the configuration data. Particularly, the maximum load is approximated based on various parameters of the ICS which are obtained from the configuration data.

[0005] A further approach followed by the existing techniques corresponds to performing the estimation based on simulation modeling using digital twins or to performing an execution of the control codes to compute a maximum (worst-case) load on the controllers of the ICS. However, the existing techniques necessitate engineering solutions to be implemented before the resource loads are estimated or predicted. Thus, this necessity the customers to have the prior knowledge of the resource loads of the ICS to efficiently predict expected workloads and operational costs for managing the various industrial processes.

[0006] The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.SUMMARY

[0007] In an embodiment, the present disclosure discloses a method of predicting resource load in Industrial Control Systems (ICS). The method comprises receiving input configuration data from one or more sources. The input configuration data is associated with at least one of, a control system intended to be deployed or an application deployable for a component associated with the control system. Further, the method comprises predicting a resource load of the at least one of, the control system or the application. The resource load is predicted based on the input configuration data, by using an approximation model represents a predetermined functional relationship between historical input parameters and corresponding resource loads. The historical input parameters comprise one or more attributes of a deployed control system.

[0008] In an embodiment, the present disclosure discloses a computing system for predicting resource load in Industrial Control Systems (ICS). The computing system comprises a processor and a memory. The processor is configured to receive input configuration data from one or more sources. The input configuration data is associated with at least one of, a control system intended to be deployed or an application deployable for a component associated with the control system. Further, the processor is configured to predict a resource load of the at least one of, the control system or the application. The resource load is predicted based on the input configuration data, by using an approximation model represents a predetermined functionalrelationship between historical input parameters and corresponding resource loads. The historical input parameters comprise one or more attributes of a deployed control system.

[0009] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

[0010] The novel features and characteristics of the disclosure are set forth in the appended claims. The disclosure itself, however, as well as a preferred mode of use, further objectives, and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying figures. One or more embodiments are now described, by way of example only, with reference to the accompanying figures wherein like reference numerals represent like elements and in which:

[0011] Fig. 1A illustrates an exemplary environment for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure;

[0012] Fig. IB illustrates an exemplary flow diagram for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure;

[0013] Fig. 2 illustrates a detailed diagram of a computing system for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure;

[0014] Fig. 3 shows an exemplary flow for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure;

[0015] Fig. 4 shows an exemplary flow chart illustrating method steps for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure; and

[0016] Fig. 5 illustrates a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.

[0017] It should be appreciated by those skilled in the art that any block diagram herein represents conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.DETAILED DESCRIPTION

[0018] In the present document, the word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment or implementation of the present subject matter described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.

[0019] While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternatives falling within the scope of the disclosure.

[0020] The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises. . . a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or apparatus.

[0021] The present disclosure provides methods and systems for predicting resource load in Industrial Control Systems (ICS) . In the present disclosure, input configuration data is received. The input configuration data is associated with a control system which is yet to be deployed or an application of the control system which is yet to be deployed. According to the present disclosure, the resource load is predicted for the control system which is intended to bedeployed and the deployable application of the control system. The resource load is predicted by using an approximation model representing a predetermined functional relationship between historical input parameters and corresponding resource loads. Therefore, according to the present disclosure, on predicting the resource load which corresponds to an overall system load, industrial processes such as asset management, production management or any other processes can be efficiently controlled and monitored. Particularly, the overall system load can be predicted in terms of various resources associated with the different components of the ICS. For example, to support asset management tools and sales teams during early decision making process, an early prediction of the overall system load may result in more accurate decisions and reduced cost of deployment. Therefore, the customers utilize load prediction information to make reasonable arrangements without implementing engineering solutions for the industrial plant for which the load was predicted.

[0022] Fig. 1 illustrates an exemplary environment 100 for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure. The exemplary environment 100 corresponds to an ICS environment and comprises a computing system 101, a control system 102, a component 102A of the control system 102, one or more sources 103, and a communication network 105. The component 102A is a part of the computing system 101. In an embodiment, the control system 102 may correspond to an entity of the ICS environment which is intended to be deployed or which is partially deployed. The control system 102 which is partially deployed may not comprise all applications which must be deployed on the control system 102. Therefore, there may be applications associated with the component 102A of the control system 102 which may not have been completely deployed. Particularly, the application deployable for the component 102A may correspond to either a completely deployable application on the control system 102 or a partially deployable application on the control system 102. In an embodiment, the control system 102 may correspond to but is not limited to, Supervisory Control and Data Acquisition (SCADA) systems, Distributed Control Systems (DCS), Industrial Automation and Control Systems (IACS), Programmable Logic Controllers (PLCs), Programmable Automation Controllers (PACs), and the like. The computing system 101 relates to an electronic control system for automated control and operation of the industrial processes. The ICS environment comprises various components such as field components / equipment, controllers, network components, graphic components, and the like. A single component 102A of the ICS is shown in Fig. 1 for illustrative purposes only, and this should not be considered as limiting. The component 102Amay include a field component, a control component or a controller, an interface element or a graphic component, a network component, and the like. The component 102 is configured to host one or more applications associated with the industrial processes.

[0023] In the present disclosure, the computing system 101 is configured to receive input configuration data from the one or more sources 103. The input configuration data is associated with at least one of, the control system 102 intended to be deployed or the application which is deployable for the component 102A. In an embodiment, the one or more sources 103 may include, but not limited to, a database comprising the input configuration data, a system belonging to one or more operators of the control system 102, and the like. The input configuration data may include, but is not limited to, constraints, preferences, requirements, conditions, and the like, associated with component specific parameters of at least one of, the control system 102 which is intended to be deployed or the deployable application associated with the components 102A. For instance, the operator may send the input configuration data which may correspond to number of Input / Output (IO) modules and number of communication modules with specific cycle times.

[0024] Below is an example of list of component specific parameters and their respective attributes which may be received as input configuration data from the one or more sources 103. A person skilled in the art will appreciate that the control data may be obtained in any form other than the above-mentioned form, and this should not be considered as limiting:1. Operator station (Human Machine Interface)2. IO Modules (Digital & Analog) with predefined number of cycle times (for example, the number of cycle times may correspond to 10 ms, 200 ms, 500 ms, and the like) a. Local IOs i. No of modules b. Remote IOs i. IO signals per module ii. No of Profibus / Modbus(serial / TCP) / FF lines & interfaces iii. No of slaves iv. Modbus scan time3. Communication modules with predefined number of cycle time (for example, the number of cycle times may correspond to 10 ms, 200 ms, 500 ms and the like)4. Function Blocks (FBs)a. Control loops b. Open loop control c. SFC d. Logic / Binary i. Logic functions ii. Switches iii. Timer FBs iv. Converter FBs v. Converter for Data type e. Analog i. Basic arithmetic ii. Trigonometry iii. Limit FBs iv. Counter FBs f. String Processing i. String input ii. String functions iii. String conversion g. User defined i. To be calculated from the basic FBs h. Communication Module FBs.

[0025] The computing system 101 is configured to analyse the received input configuration data and further provide the operator with an output in terms of the resource load of the control system 102 to be deployed or the deployable application. The computing system 101 predicts the resource load based on the received input configuration data by using an approximation model. The approximation model is trained to learn a predetermined functional relationship between historical input parameters and their corresponding resource loads. The historical input parameters comprise one or more attributes of a control system (not shown in Fig. 1) which is deployed in the ICS environment. In an embodiment, the historical input parameters are obtained based on at least one of, historical system installations, experimental analysis performed for the deployed control system and existing control system information. The existing control system information may be obtained from literatures and known sources.

[0026] The computing system 101 trains the approximation model using predefined approximation techniques. The predefined approximation techniques are machine learning techniques which includes, but are not limited to, interpolation, regression, random forest, and the like. According to the present disclosure, the computing system 101 identifies any one of the approximation techniques from the predefined approximation techniques based on characteristics of the historical input parameters. Particularly, when the historical input parameters are used for training the approximation model to learn a functional relationship by estimating values between given data points, interpolation techniques such as, spline interpolation or radial basis function interpolation are specified by the computing system 101. Further, when the historical input parameters are used for training the approximation model to learn a functional relationship between input and output variables, then regression techniques such as linear regression, polynomial regression, or support vector regression are specified by the computing system 101. Furthermore, when the historical input parameters are associated with data points of higher-dimension and which are used for training the approximation model to find and learn a functional relationship which is complex, then machine learning algorithms like neural networks, decision trees, or random forests are specified by the computing system 101. The functional relationships learnt by the approximation model are defined as predetermined functional relationships. In an embodiment, the given data points, the input and output variables may correspond to input features such as a specific number of IOs, FBs, and the output features such as their respectively obtained network load and hardware load of the deployed control system. In an embodiment, the predetermined functional relationships are indicative of impacts of functional co-dependencies, of the data points or the variables of each of the historical input parameters, on the respective resource loads. Therefore, the computing system 101 predicts the resource load based on the input configuration data by using the approximation model which is pretrained by the computing system 101. In an embodiment, the resource load predicted by the computing system 101 comprises at least one of, a controller load, a container load, and a network load, for the at least one of, the control system 102 intended to be deployed and the deployable application associated with the component 102A of the control system 102.

[0027] According to the present disclosure, the aforementioned approach may be applicable to various categories of approximation problems, including but not limiting to, scalar-valued functions, vector- valued functions, even high-dimensional functions, and the like. For the present disclosure, a multi-dimensional input feature space, with the specific number of los andFBs are considered along with at least 2-Dimensional (2D) output feature space, with hardware load and network load being determined. In an embodiment, the choice of approximation method and complexity of the approximation model may depend on available computational resources for the control system 102.

[0028] In an embodiment of the present disclosure, the computing system 101 is configured to detect an error in the predicted resource load and provide feedback to the approximation model. Therefore, the approximation model comprises an active learning component for refining and improving the approximation for performing further predictions. Thus, on providing the feedback, the approximation model is updated based on user inputs parameters.

[0029] In an embodiment of the present disclosure, on predicting the resource load, the computing system 101 may determine a threshold for resources of the control system 102 intended to be deployed or the deployable application. The resources of the control system 102 are shown in first column of Table 1 as given below. The Table 1 shows exemplary resource loads for a controller of the control system 102.Table 1: Resource Load for a Controller

[0030] Further, Tables 2a and 2b shows exemplary resource loads predicted for applications associated with the components 102A of the control system 102. Ther component 102A corresponds to a container of the control system 102. Particularly, the resource load for the container is predicted by considering a basic container load along with load due to subscription.Table 2a shows exemplary data for basic container load and Table 2b shows exemplary data for load due to subscription.Table 2a: Basic Container LoadTable 2b: Load due to Subscription

[0031] The computing system 101 may be a computing device such as, a laptop computer, a desktop computer, a Personal Computer (PC), a notebook, a smartphone, a tablet, e-book readers, a server, a network server, a cloud-based server, router, and the like. In one implementation, the computing system 101 may be a part of the ICS. In another implementation, the computing system 101 may be implemented in an edge computing platform. In yet another implementation, the computing system 101 may be implemented in a cloud computing platform. In an embodiment, a single computing system 101 may be used to predict the resource load in the ICS. In another embodiment, different computing systems may be used to predict the resource load in the ICS.

[0032] Fig. IB illustrates an exemplary flow diagram for predicting resource load in Industrial Control Systems (ICS). As seen from the figure, historical input parameters are considered as training dataset for training an approximation model. The historical input parameters are obtained based on at least one of, historical system installations, experimental analysis performed for a deployed control system, existing control system information, and the like. The training dataset also includes new control application configuration information. However, prior to including the new control application configuration information in the training dataset, it is ensured that it is not already existing in the training dataset. Therefore, once an acknowledgement for training dataset threshold is received from an operator the training dataset is considered as a final training dataset which is fed to a Machine Learning pipeline. Asseen from the Fig. IB, the training dataset is fed into the ML pipeline which uses the training dataset to generate the approximation model. As further seen, a threshold is triggered for the ML pipeline when the number of records which are to be included as the training dataset reach a predefined threshold value. Thereafter, the approximation model is generated. A person skilled in the art will appreciate that the approximation model may be any ML model as shown in the Fig. IB.

[0033] As further seen, the ML model (approximation model) is used for predicting resource load. The resource load is predicted in terms of controller load, container load and network load. For example, the resource load may be predicted for an operator station or an engineering station. As shown in the Fig. IB, along with input parameters, the operators may also input their requirements, constraints, conditions such basic resource utilization of the containers, maximum resource limit configurations, basic operator station components, and the like. Therefore, the resource load is accordingly predicted considering all the input parameters by using the ML model. Thereafter, the predicted resource load information is considered for efficiently managing the deployment of the control system 102 or the control application. For example, as seen from the Fig. IB, number of nodes required for configuration are estimated, deployment configurations are generated and new rules for monitoring and tracking resource utilization are generated.

[0034] Fig. 2 illustrates a detailed diagram of the computing system 101 for predicting resource load in Industrial Control System (ICS), in accordance with some embodiments of the present disclosure. The computing system 101 comprises an Input / Output (I / O) interface 107, a memory 109, and a processor 111. In some embodiments, the memory 109 may be communicatively coupled to the processor 111. The memory 109 stores instructions executable by the processor 111. The processor 111 may comprise at least one data processor for executing program components for executing user or system-generated requests. The memory 109 stores instructions, executable by the processor 111, which, on execution, may cause the processor 111 to predict a resource load in an ICS.

[0035] In an embodiment, the memory 109 may include one or more modules 202 and data 200. The one or more modules 202 may be configured to perform the steps of the present disclosure using the data 200, to predict resource load in the ICS. In an embodiment, each of the one or more modules 202 may be a hardware unit which may be outside the memory 109and coupled with the computing system 101. As used herein, the term modules 202 refers to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a Field-Programmable Gate Arrays (FPGA), Programmable System-on-Chip (PSoC), a combinational logic circuit, and / or other suitable components that provide described functionality. The one or more modules 210 when configured with the described functionality defined in the present disclosure will result in a novel hardware. Further, the I / O interface 107 is coupled with the processor 111 through which an input signal or / and an output signal is communicated. For example, the computing system 101 may communicate the predicted resource load to the operator via the I / O interface 107.

[0036] In one implementation, the modules 202 may include, for example, a receiving module 212, a load prediction module 214, and other modules 216. It will be appreciated that such aforementioned modules 202 may be represented as a single module or a combination of different modules. In one implementation, the data 200 may include, for example, input data 204, approximation model data 206, predicted load data 208, and other data 210.

[0037] In an embodiment, the receiving module 212 may be configured to receive input data 204 which comprises input configuration data. The input configuration data is associated with at least one of, a control system 102 which is intended to be deployed or an application which is deployable for a component 102A associated with the control system 102. In an embodiment, the application deployable for the component 102A may correspond to either a completely deployable application on the control system 102 or a partially deployable application on the control system 102. For example, the completely deployable application may correspond to an application which is yet to be deployed for the component 102A. Further, the partially deployable application may correspond to an application associated with one or more tasks from a plurality of tasks. In an embodiment, applications which are associated with tasks which are yet to be deployed are termed as deployable applications. In an embodiment, the input configuration data may include, but is not limited to, constraints, requirements, conditions, and the like, associated with the component specific parameters of the control system 102. The receiving module 212 receives the input data 204 from one or more sources 103. For instance, consider a customer wishes to predict a load for a control system 102 which is yet to be deployed in the ICS environment. Then, the customer may input the configuration data which is relevant to the control system 102 intended to be deployed. In such case, the configuration data may include specific constraints associated with Input / Output (10s) and FBs of the control system102. As shown in Fig. 3 which shows an exemplary flow for predicting the resource load in the ICS, the load prediction logic receives the input data 204 which comprises a specific number of IOs, FBs and other sizing parameters. Referring back to Fig. 2, the input configuration data may be stored as the input data 204 in the memory 109.

[0038] In an embodiment, the load prediction module 214 may be configured to receive the input data204 from the receiving module 212. Further, the load prediction module 214 is further configured to predict resource load of at least one of, the control system 102 or the application associated with the component 102A of the control system 102. The load prediction module 214 predicts the resource load using an approximation model 206. Herein, the approximation model 206 is pre-trained with historical input parameters associated with the deployed control system. The historical input parameters comprise of one or more attributes associated with the deployed control system. The historical input parameters may be obtained from a database associated with the ICS environment and based on at least one of, historical system installations, experimental analysis performed for the deployed control system and existing control system information. The existing control system information may be obtained from literature and known sources. The historical data may comprise stored data associated with past / historical configurations of components of the ICS.

[0039] In an embodiment, the approximation model 206 may be pre-trained by using predefined approximation techniques. The predefined approximation techniques are machine learning techniques which includes, but are not limited to, interpolation, regression, random forest, and the like. According to the present disclosure, a training module may identifies any one of the approximation techniques from the predefined approximation techniques based on characteristics of the historical input parameters. The approximation model 206 is trained for learning functional relationship between historical input parameters and their corresponding resource loads. Particularly, the approximation model is trained by learning impacts of functional co-dependencies of the one or more attributes of each of the historical input parameters on the respective resource loads. In an embodiment, the historical input parameters are split into training data and testing data for evaluating performance of the approximation model 206. For example, as seen from Fig. 3, the training data and the testing data are provided to the approximation model 206. In an embodiment, if the performance of the approximation model 206 is not satisfactory, then hyperparameters of the approximation model 206 may be adjusted, and more training data and testing data may be added. In an embodiment, the othermodules 216 such as the training module may be configured to train the approximation model 206.

[0040] Returning to Fig. 2, the approximation model 206 is pre-trained to learn the functional relationship between the historical input parameters and the corresponding resource loads. For example, the approximation model 206 learns that when number of IOs on input side is two times then load for hardware is three times, and load on network is four times. In another example, the approximation model 206 learns how a change in the historical input parameters or a change in the one or more attributes of the historical input parameters affect the hardware load or the network load on the ICS. Thus, as described in the examples, the approximation model 206 learns the functional relationship between each of the one or more parameters of the control system and their corresponding resource loads. Accordingly, the load prediction module 214 predicts the resource load of the control system 102 or the application associated with the component 102A using the pre-trained approximation model 206. Table 1 and Tables 2a-2b above show examples of the resource load predicted for a controller and a container. In an embodiment, the load predictions module 214 predicts the resource load for the control system 102 or the component 102A of the control system 102 in terms of a controller load, a container load and a network load. Accordingly, the customers utilize the predicted resource load information to make reasonable arrangements without implementing engineering solutions for the industrial plant. As seen from Fig. 3, the control system 102 or the deployable application may be deployed in the ICS environment, upon making the reasonable arrangements.

[0041] In an embodiment, the other modules 216 may be further configured to receive the predicted resource load. Thereafter, the other modules 216 may be configured to detect an error in the predicted resource load and provide feedback to the approximation model 206. The other modules 216 are therefore responsible for refining and improving the approximation for performing further predictions. Accordingly, the other modules 216 may update the approximation model 206 based on user input parameters which are received from domain expert operators.

[0042] Returning to Fig. 2, the other modules 216 may be further configured to determine a threshold for resources of the control system 102 intended to be deployed or the deployable application. Particularly, on predicting the resource loads, the other modules 216 may set resource limits, minimum and maximum limits to the resources for efficiently utilizing the resources.

[0043] Therefore, the predicted resource load facilitates the operator to allocate the container with a CPU-intensive job to a node having best CPU and further allocate the container with a memory-intensive job to best nodes of a Random Access Memory (RAM). Hence, the present disclosure allows the operator to compute a maximum number of IOs or FBs that can be used while considering constraints associated with the control system 102 or the component 102A. For example, this may be applicable when a customer wishes to extend a plant and would wish to understand how much more los or FBs they can manage with their existing resources.

[0044] The other data 210 may store data, including temporary data and temporary fdes, generated by the one or more modules 202 for performing the various functions of the computing system 101. The one or more modules 202 may perform various miscellaneous functionalities of the computing system 101. The other data 210 may be stored in the memory 109. It will be appreciated that the one or more modules 202 may be represented as a single module or a combination of different modules.

[0045] Fig. 4 shows an exemplary flow chart illustrating method steps for predicting resource load in Industrial Control Systems (ICS), in accordance with some embodiments of the present disclosure. As illustrated in Fig. 4, the method 400 may comprise one or more steps. The method 400 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, and functions, which perform particular functions or implement particular abstract data types.

[0046] The order in which the method 400 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. Additionally, individual blocks may be deleted from the methods without departing from the scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.

[0047] At step 401, a processor 111 of a computing system 101 receives input configuration data associated with at least one of, a control system 102 intended to be deployed or an application deployable for a component 102A associated with the control system 102. The input configuration data is received from one or more sources 103.

[0048] At step 403, the processor 111 predicts a resource load of the at least one of, the control system 102 or the application. The prediction is performed based on the input configuration data and by using an approximation model representing a predetermined functional relationship between historical input parameters comprising one or more attributes of a deployed control system and corresponding resource loads. The predetermined functional relationship is indicative of impacts of functional co-dependencies of the one or more attributes of each of the historical input parameters on the respective resource loads. The historical input parameters are obtained based on at least one of, historical system installations, experimental analysis performed for the deployed control system and existing control system information.COMPUTER SYSTEM

[0049] Fig. 5 illustrates a block diagram of an exemplary computer system 500 for implementing embodiments consistent with the present disclosure. In an embodiment, the computer system 500 may be used to implement the computing system 101. Thus, the computer system 500 may be used for predicting resource load in Industrial Control Systems (ICS). The computer system 500 may comprise a Central Processing Unit 804 (also referred as “CPU” or “processor”). The processor 502 may comprise at least one data processor. The processor 502 may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, etc.

[0050] The processor 502 may be disposed in communication with one or more input / output (I / O) devices (not shown) via I / O interface 506. The I / O interface 506 may employ communication protocols / methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE (Institute of Electrical and Electronics Engineers) -1394, serial bus, universal serial bus (USB), infrared, PS / 2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, VGA, IEEE 816.n / b / g / n / x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMax, or the like), etc.

[0051] Using the I / O interface 506, the computer system 500 may communicate with one or more I / O devices. For example, the input device 510 may be an antenna, keyboard, mouse,joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, stylus, scanner, storage device, transceiver, video device / source, etc. The output device 511 may be a printer, fax machine, video display (e.g., cathode ray tube (CRT), liquid crystal display (LCD), light-emitting diode (LED), plasma, Plasma display panel (PDP), Organic light-emitting diode display (OLED) or the like), audio speaker, etc.

[0052] The processor 502 may be disposed in communication with the communication network 509 via a network interface 503. The network interface 503 may communicate with the communication network 509. The network interface 503 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), transmission control protocol / intemet protocol (TCP / IP), token ring, IEEE 816.11a / b / g / n / x, etc. The communication network 509 may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, etc. The network interface 503 may employ connection protocols include, but not limited to, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), transmission control protocol / intemet protocol (TCP / IP), token ring, IEEE 816.11 a / b / g / n / x, etc .

[0053] The communication network 509 includes, but is not limited to, a direct interconnection, an e-commerce network, a peer to peer (P2P) network, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, WiFi, and such. The first network and the second network may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol / intemet Protocol (TCP / IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the first network and the second network may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc.

[0054] In some embodiments, the processor 502 may be disposed in communication with a memory 505 (e.g., RAM, ROM, etc. not shown in Fig. 5) via a storage interface 504. The storage interface 504 may connect to memory 505 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as serial advanced technology attachment (SATA), Integrated Drive Electronics (IDE), IEEE- 1394, UniversalSerial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.

[0055] The memory 505 may store a collection of program or database components, including, without limitation, user interface 506, an operating system 507, web browser 508 etc. In some embodiments, computer system 500 may store user / application data, such as, the data, variables, records, etc., as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle ® or Sybase®.

[0056] The operating system 507 may facilitate resource management and operation of the computer system 500. Examples of operating systems include, without limitation, APPLE MACINTOSHROS X, UNIXR, UNIX-like system distributions (E G., BERKELEY SOFTWARE DISTRIBUTION™ (BSD), FREEBSD™, NETBSD™, OPENBSD™, etc ), LINUX DISTRIBUTIONS™ (E G., RED HAT™, UBUNTU™, KUBUNTU™, etc ), IBM™ OS / 2, MICROSOFT™ WINDOWS™ (XP™, VISTA™ / 7 / 8, 10 etc ), APPLERIOS™, GOOGLERANDROID™, BLACKBERRYROS, or the like.

[0057] In some embodiments, the computer system 500 may implement the web browser 508 stored program component. The web browser 508 may be a hypertext viewing application, for example MICROSOFT1* INTERNET EXPLORER™, GOOGLERCHROME™0, MOZILLARFIREFOX™, APPLERSAFARI™, etc. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc. Web browsers 508 may utilize facilities such as AJAX™, DHTML™, ADOBERFLASH™, JAVASCRIPT™, JAVA™, Application Programming Interfaces (APIs), etc. In some embodiments, the computer system 500 may implement a mail server (not shown in Figure) stored program component. The mail server may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASP™, ACTIVEX™, ANSI™ C++ / C#, MICROSOFT1*. NET™, CGI SCRIPTS™, JAVA™, JAVASCRIPT™, PERL™, PHP™, PYTHON™, WEBOBJECTS™, etc. The mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT1* exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computersystem 500 may implement a mail client stored program component. The mail client (not shown in Figure) may be a mail viewing application, such as APPLERMAIL™, MICROSOFT1* ENTOURAGE™, MICROSOFT1* OUTLOOK™, MOZILLARTHUNDERBIRD™, etc.

[0058] 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., be non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc Read-Only Memory (CD ROMs), Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.

[0059] Embodiments of the present disclosure provides methods and systems for predicting resource load in Industrial Control Systems (ICS). In the present disclosure, input configuration data is received. The input configuration data is associated with a control system which is yet to be deployed or an application of the control system which is yet to be deployed. According to the present disclosure, the resource load is predicted for the control system which is intended to be deployed and the deployable application of the control system. The resource load is predicted by using an approximation model represents a predetermined functional relationship between historical input parameters and corresponding resource loads. Therefore, according to the present disclosure, on predicting the resource load which corresponds to an overall system load, industrial processes such as asset management, production management or any other processes can be efficiently controlled and monitored. Particularly, the overall system load can be predicted in terms of various resources associated with the different components of the ICS. For example, to support asset management tools and sales teams during early decision making process, an early prediction of the overall system load may result in more accurate decisions and reduced cost of deployment. Therefore, the customers utilize load prediction information to make reasonable arrangements without implementing engineering solutions for the industrial plant for which the load was predicted.

[0060] The terms "an embodiment", "embodiment", "embodiments", "the embodiment", "the embodiments", "one or more embodiments", "some embodiments", and "one embodiment" mean "one or more (but not all) embodiments of the invention(s)" unless expressly specified otherwise.

[0061] The terms "including", "comprising", “having” and variations thereof mean "including but not limited to", unless expressly specified otherwise.

[0062] The enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise. The terms "a", "an" and "the" mean "one or more", unless expressly specified otherwise.

[0063] A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.

[0064] When a single device or article is described herein, it will be readily apparent that more than one device / article (whether or not they cooperate) may be used in place of a single device / article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be readily apparent that a single device / article may be used in place of the more than one device or article, or a different number of devices / articles may be used instead of the shown number of devices or programs. The functionality and / or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality / features. Thus, other embodiments of the invention need not include the device itself.

[0065] The illustrated operations of Fig. 4 show certain events occurring in a certain order. In alternative embodiments, certain operations may be performed in a different order, modified, or removed. Moreover, steps may be added to the above-described logic and still conform to the described embodiments. Further, operations described herein may occur sequentially or certain operations may be processed in parallel. Yet further, operations may be performed by a single processing unit or by distributed processing units.

[0066] Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate orcircumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

[0067] While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope being indicated by the following claims.Referral Numerals:

Claims

CLAIMS:

1. A method of predicting resource load in Industrial Control Systems (ICS), the method comprising: receiving, by a processor, input configuration data associated with at least one of, a control system intended to be deployed or an application deployable for a component associated with the control system, from one or more sources; and predicting, by the processor, a resource load of the at least one of, the control system or the application, wherein the resource load is predicted based on the input configuration data, by using an approximation model representing a predetermined functional relationship between historical input parameters comprising one or more attributes of a deployed control system and corresponding resource loads.

2. The method as claimed in claim 1, wherein the historical input parameters are obtained based on at least one of, historical system installations, experimental analysis performed for the deployed control system and existing control system information.

3. The method as claimed in claim 1, wherein the approximation model is trained using predefined approximation techniques.

4. The method as claimed in claim 3, wherein training the approximation model comprises identifying an approximation technique from the predefined approximation techniques based on characteristics of historical input parameters.

5. The method as claimed in claim 1, wherein the predetermined functional relationship is indicative of impacts of functional co-dependencies of the one or more attributes of each of the historical input parameters on the respective resource loads.

6. The method as claimed in claim 1, wherein the resource load comprises at least one of, a controller load, a container load, and a network load.

7. The method as claimed in claim 1, wherein the application deployable for the component associated with the control system corresponds to one of, a completely deployable application on the control system and a partially deployable application on the control system.

8. The method as claimed in claim 1 further comprising determining a threshold for resources of the at least one of, the control system to be deployed and the application deployable for the component associated with the control system, based on the respective resource load.

9. The method as claimed in claim 1 further comprising updating the approximation model by providing feedback based on user inputs, on detecting an error in the predicted resource load.

10. A computing system for predicting resource load in Industrial Control Systems (ICS), the computing system comprises: a processor; and a memory, wherein the memory stores processor-executable instructions, which, on execution, causes the processor to: receive input configuration data associated with at least one of, a control system intended to be deployed or an application deployable for a component associated with the control system, from one or more sources; and predict a resource load of the at least one of, the control system or the application, wherein the resource load is predicted based on the input configuration data, by using an approximation model representing a predetermined functional relationship between historical input parameters comprising one or more attributes of a deployed control system and corresponding resource loads.

11. The computing system as claimed in claim 10, wherein the processor obtains the historical input parameters based on at least one of, historical system installations, experimental analysis performed for the deployed control system and existing control system information.

12. The computing system as claimed in claim 10, wherein the processor trains the approximation model by using predefined approximation techniques.

13. The computing system as claimed in claim 12, wherein the processor further identifies an approximation technique from the predefined approximation techniques based on characteristics of historical input parameters.

14. The computing system as claimed in claim 10, wherein the predetermined functional relationship is indicative of impacts of functional co-dependencies of the one or more attributes of each of the historical input parameters on the respective resource loads.

15. The computing system as claimed in claim 10, wherein the resource load comprises at least one of, a controller load, a container load, and a network load.

16. The computing system as claimed in claim 10, wherein the application deployable for the component associated with the control system corresponds to one of, a completely deployable application on the control system and a partially deployable application on the control system.

17. The computing system as claimed in claim 10, wherein the processor further determines a threshold for resources of the at least one of, the control system to be deployed and the application deployable for the component associated with the control system, based on the respective resource load.

18. The computing system as claimed in claim 10, wherein the processor further updates the approximation model by providing feedback based on user inputs, on detecting an error in the predicted resource load.

Citation Information

Patent Citations

  • Industrial automation asset and control project analysis

    EP3965034A1