Automated network reduction based on machine learning
Patent Information
- Application Number
- PCT/US2026/020747
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-25
- Filing Date
- 2026-03-25
- Publication Date
- 2026-10-01
Smart Images

Figure US2026020747_01102026_PF_FP_ABST
Abstract
Description
Attorney Docket No. 43374-0872W01AUTOMATED NETWORK REDUCTION BASED ON MACHINE LEARNINGCROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of priority to U.S. Application No. 63 / 777,526, filed on March 25, 2025, the contents of which are hereby incorporated by reference.TECHNICAL FIELD
[0001] This specification relates to electrical power grids, and specifically network reductions in power grid models using machine learning.BACKGROUND
[0002] Electrical power grids transmit electrical power to loads such as residential and commercial buildings. The electrical power grids comprise a variety of electrical components, including power sources, loads, transmission lines, distribution stations, and the like. Typically, there are many hundreds or even thousands of electrical components in any particular grid model.
[0003] A common technique prior to analyzing a pow er grid is to perform a netw ork reduction on a power grid model of the power grid. The network reduction replaces a complex grid model with a smaller, simpler model that is dynamically equivalent to, or a close approximation of, the original model. The reduction is used to increase the calculation speed and reduce computer resources needed when analyzing a power grid. Depending on the application category for the analysis, different types of network reductions are determined. For example, for a thermal analysis, a first type of netw ork reduction may be made; for a transient analysis, a second type of network reduction may be made; and for a visualization analysis, a third type of network reduction may be made, where each of the network reductions is different from the others.
[0004] Determining a netw ork reduction, however, is in itself a complex and timeconsuming task. Moreover, the complexity and time required to determine certain network reductions increase non-linearly as the size of the network increases.Attorney Docket No. 43374-0872W01SUMMARY
[0005] This specification describes technologies that relate to network reduction in power grid models using machine learning.
[0006] In general, innovative aspects of the subject matter described in this specification can be embodied in methods that include the actions of accessing data describing an electric grid model of electrical grid entities of an electrical grid; accessing training data comprising a plurality of reduced network models, each reduced network model specifying a network reduction of the grid model, wherein: each reduced network model specifies network reductions of the grid model, where each network reduction comprises a first set of electrical grid entities that are an approximation of second set of electrical grid entities in the grid model, and the cardinality of the first set of electrical grid entities is less than the cardinality of the second set of electrical grid entities, and each network reduction is based on one or more network reduction decisions in response to one or more network reduction rules; and training, based on the training data, a network reduction machine learning model to generate, in response to grid model as input, a reduced network model of the grid model, the training based on the grid model and the reduced network models. Other aspects include systems and software operable to perform such operations.
[0007] In an aspect, each of the plurality of reduced network models is specific to an application category, wherein each reduced network model for a specific application category is different from each other reduced network model for other application categories.
[0008] In an aspect, training the network reduction machine learning model comprises training a plurality of network reduction machine learning models, wherein each network reduction machine learning model is specific to one of the application categories.
[0009] In an aspect, training the plurality of network reduction machine learning models comprises training, for each application category', a network reduction machine learning model for the application category on the grid model and reduced network models specific to the application category.
[0010] In an aspect, the method includes encoding the network reduction decisions of each reduced network model, including for each reduction decision, encoding the reduction decision into a feature vector; accessing training data for the grid model, the training data including a plurality of reduction decisions made on the grid model; andAttorney Docket No. 43374-0872W01training the network reduction learning model comprises training the network reduction learning model on the grid model, the reduced network models, and the encoded reduction decisions.
[0011] In an aspect, two or more of the reduction decisions are of a different type from each other, and encoding the plurality of reduction decisions includes encoding each reduction decision into a feature vector specific to the type of reduction decision.
[0012] In an aspect, the network reduction learning model includes a plurality of classifiers, each of a different type, and each classifier is trained for a reduction decision of a particular type that is different from each other ty pe for which each other classifier is trained.
[0013] Particular embodiments of the subject matter described in this specification can be implemented so as to realize one or more of the following advantages. In systems in which reduction decisions are made by manually programmed rules, several shortcomings are present - the rules consider only a few, specified factors; extending rules to incorporate additional factors is difficult due to the complexity of possible interactions among factors; and choosing threshold values that are applicable to the entire network is difficult. The machine learned system of the present specification does not suffer these shortcomings. Instead, the systems and methods disclosed herein can more easily incorporate multiple factors describing the context of each decision, are more amenable to ongoing improvements in the grid network, and can more easily be customized to the needs of individual applications and users. The use of feature vectors during training can reduce training time, as the decisions, when encoded in the feature vectors and paired with the reduced network model to which they correspond, facilitate the learning of the decisions.
[0014] The details of one or more embodiments of the subject matter described in this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the invention will become apparent from the description, the drawings, and the claims.BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Fig. 1 is a diagram of an example system for electrical power grid modeling.
[0016] Fig. 2 is a diagram an environment for simulating electrical grid transmission and distribution.Attorney Docket No. 43374-0872W01
[0017] Fig. 3A is a graphical depiction of a reduced network model generated from a grid model.
[0018] Fig. 3B are illustrations of example network reduction decisions.
[0019] Fig. 4 is a system block diagram of a network reduction subsystem.
[0020] Fig. 5 is a flow diagram of a process of training a network reduction machine learning model.
[0021] Fig. 6 is a flow diagram of a process of training the network reduction machine learning model using feature vectors that encode network reduction decisions of training data.
[0022] Like reference numbers and designations in the various drawings indicate like elements.DETAILED DESCRIPTION
[0023] This specification describes technologies that relate to network reduction in power grid models using machine learning and technologies for training a machine learning model for generating such network reductions. In general, existing reduction techniques implement a series of decisions, e.g., bus merges (branch prune) decisions, simplification decisions, omission decisions. These decisions are based on programmed logic and thresholds, and for specific application categories to which the reduced network model corresponds. The shortcomings of this approach are many. For example, refining and extending the decision logic will make the overall logic more brittle and difficult to maintain, and such refinement is time consuming.
[0024] By w ay of a non-limiting example, in a grid model, a bus / branch model is an abstract representation of an electric power network in terms of buses and branches. Buses represent points of interconnection. Branches represent transmission lines, pairs of transformer windings, and other power flow elements. For application purposes such as simulation and visualization, it is useful to reduce a bus / branch model to a simpler form having fewer buses and branches. This is referred to as a network reduction, and in the context of a full netw ork model, the network reduction produces a reduced network model.
[0025] The reduced netw ork model can be an approximation of the full netw ork model. The approximation can be an exact approximation or an inexact approximation. An inexact approximation, as used herein, means the reduced network model may not have an exact correspondence to the full network model in terms of certainAttorney Docket No. 43374-0872W01characteristics, such as impedance, transient response, etc. Conversely, an exact approximation, as used herein, means the reduced network model has an exact correspondence to the full network model in terms of certain characteristics, such as impedance as seen from a certain point, a transient response, etc.
[0026] To generate a reduced network model from a full network model, certain subsets of connected buses are merged, replacing each subset with a single bus. For example, a pair of buses may be replaced by a single bus if there is a branch connecting them that has negligible impedance, or if a connecting branch incurs negligible power loss under some assumed power flow conditions. Additionally, an entire subnetwork may be replaced by a single bus if the subnetwork has no other connections to the rest of the network (i. e.. it is a peripheral subnetwork), and it is below a certain size (measured, for example, by the number of buses it contains).
[0027] The replacements, which are individual reduction decisions, collectively result in the reduced network model. In general, these reduction decisions may consider a variety of factors, such as the physical proximity of the buses, the amount of load or generation capacity attached to buses, the nominal voltages of buses and branches, the maximum capacity of branches, and the ownership of assets constituting buses and branches.
[0028] To overcome the disadvantages described above using a rule-based system, the system and methods describe below use a network reduction machine learning model. In some implementations, a training system encodes each decision point as a feature vector (voltages, local topology, branch length, impedance, capacity', N-l capacity, etc.). To train the network reduction machine learning model, training examples are collected by instrumenting existing network reduction algorithms, and examples are labeled by comparing manual and automated reductions. The network reduction machine learning model is then trained accordingly.
[0029] These features and additional features are described in more detail below.
[0030] Fig. 1 is a diagram of an example system 100 for electrical power grid modeling. The system 100 includes a grid model server system 102. The server system 102 may be hosted within a data center 104, which can be a distributed computing system having many (e.g., tens, hundreds, or thousands) of computers in one or more locations.
[0031] The server system 102 includes a modelling system 150. The modelling system 150 may implement a number of modelling functions as subsystems. In thisAttorney Docket No. 43374-0872W01example implementation, the modelling system 150 includes a model converter subsystem 152. a unified modelling subsystem 154, agrid planning subsystem 156, and network reduction subsystem 158.
[0032] The system 150, and each subsystem 152, 154, 156 and 158, can be provided as one or more computer executable software modules or hardware modules. That is, some or all of the functions of system and subsystems can be provided as a block of computer code, which upon execution by a processor, causes the processor to perform functions described below. Some or all of the functions can be implemented in electronic circuitry, e.g., by individual computer systems (e.g., servers), processors, microcontrollers, a field programmable gate array (FPGA), or an application specific integrated circuit (ASIC).
[0033] The server system 102 also includes electric grid models 190. The electric grid models 190 can include virtual representations of components of an electric grid located within a geographic region. The geographic region can include, for example, an area of hundreds of square meters, several square kilometers, hundreds of square kilometers, or thousands of square kilometers. The geographic region can correspond to a location of an electrical distribution feeder or multiple feeders. In some cases, the geographic region can correspond to a location of a bulk power system within and throughout, e.g., a state, county, province, or country.
[0034] The grid models 190 include elements that represent the components of an electrical grid and interconnections among the elements. The components can include inverters, relays, PPCs, Energy Management Systems, RASs, Automatic Generator Controls, alarm systems and so on. In addition, components can include other elements relevant to the transmission and distribution of power, such as transmission towers and utility poles. Elements in the grid model can include references to descriptive information about the components that can include various metadata, such as a unique element identifier for an element, information about the component represented by the element such as make, model, deployment date, damage reports, photographs, service history, role of the element and so on. A role can include whether the element is used for transmission or distribution, or both. The descriptive information can further include information about the environment at or around components, such as temperature and humidity measured at various times. The grid models 190 can further include descriptions of components that connect components, such as power lines. For such connection components, the grid model can include a description of the componentsAttorney Docket No. 43374-0872W01connected by the connection component, and a description of the connection component that connects.
[0035] Elements of a grid model 190 can have associated operating conditions that specify constraints on operation of the component. For example, an operating condition can indicate that the temperature at the component cannot exceed a maximum value or that the voltage at a component must remain within a given range. Operating conditions can be expressed as Boolean expressions and can be associated with an element representing a component.
[0036] The individual models within the electric grid models 190 may be of different formats, and may be used to model different aspects of the electric grid. Each model is a particular virtual representation of the physical grid, based on the electrical components present, how they are connected in a topology, their configurations, parameters and characteristics. The models may be of different types, and may be proprietary or based on open standards. Example proprietary models include PSLF (Positive Sequence Load Flow) and PSS / E (Power System Simulator for Engineering) models. Example open standard models include CIM (Common Interchange Format), IEEE CDF (Common Data Format).
[0037] Electric grid models are also specific to applications, e.g., PSCAD / EMTDC (Power System Computer Aided Design / ElectroMagnetic Transients including DC) formats are used for Electromagnetic Transients (EMT) studies. At other times, the details of the electric grid are represented using textual and graphical representations, e.g., Single Line Diagrams. All of these formats represent the same physical grid in different ways, and in varying degrees of temporal and spatial resolution.
[0038] In some implementations, the electric grid models 190 may be received from third parties, represented by the grid models 112 provided to the modelling system 150. In other implementations, the electric grid model 190 includes models derived from the grid models 112 and / or from other data, as will be described below.
[0039] Grid wire paths 114 may be provided as data representing of paths of electric grid wires over a geographic region. The paths of the electric grid wires can be, for example, grid wire paths that are visible in overhead images of the geographic region. In some examples, the wire paths 114 can be provided by vector data. The vector data can be generated through image processing techniques including segmentation processes that are used to identify locations and paths of grid wires, or provided by third parties. The vector data can define characteristics of the grid wire paths (e.g., position, length,Attorney Docket No. 43374-0872W01direction) by a list or set of vectors. The vector data can include, for example, coordinate positions corresponding to endpoints of vectors. In some examples, the coordinate positions of vector endpoints can each be defined by a geographic latitude and longitude.
[0040] The data provided to the modelling system 150 can also include planning data 116. Planning data 116 may be provided by third parties, e.g., utilities or power producers, or may be provided by the administrators of the modelling system 150. The planning data 116 may specify build outs, forecast future utility demand, and otherwise define demands and changes to the underlying grid that requires modelling and simulation.
[0041] The modeling system 150 can also receive auxiliary data 170 that can be used in modelling the grid, but which is not itself actual electrical grid data. This can include aerial imagery 172, property boundaries 174, and transportation routes 176 and topological features 178. The auxiliary data 170 can be used to determine modelling and planning constraints for the electrical grid that may not be specified in existing grid models 112 or other grid-specific data.
[0042] The aerial imagery 172 can include imagery collected from overhead sensors. Overhead sensors can include, for example, aerial and satellite sensors. Overhead sensors can include visible light cameras, infrared sensors, RADAR sensors, and LIDAR sensors. The aerial imagery 172 can include visible light data, e.g., red-green-blue (RGB) data, collected by the overhead sensors. The aerial imagery 172 can also include hyperspectral data, multispectral data, infrared data, RADAR data, and LIDAR data collected by the overhead sensors. The aerial imagery 172 can include two-dimensional (2D) data, 2.5D data, or 3D data. The aerial imagery 172 can include multiple channels or layers of imagery’ data. For example, the aerial imagery 172 can include an RGB layer, a height model layer, a digital surface model layer, and a vegetation index layer. The data 172 can also include geolocation data specifying locations of features depicted in the images. Property’ boundaries 174 can include image data indicating demarcations between properties, communities, municipalities, towns, counties, etc., within the geographic region. Transportation routes 176 can include image data indicating paths of roads, railroads, sidewalks, waterways, etc. Topological features 178 can include image data indicating elevations, land forms, etc.
[0043] In some examples, auxiliary' data 170 can include non-image features. Nonimage features can include an identification of the geographic region. The identification of the geographic region can include, for example an identification of a state, province.Attorney Docket No. 43374-0872W01county, or city. In some examples, the geographic region can include an identification of geographic boundaries of the geographic region, e.g., longitudinal and latitudinal boundaries. In some examples, the auxiliary data 170 can include property boundaries and transportation routes in vector format. In some examples, the auxiliary training data 170 can be represented as continuous valued features, embedded features, or categorical features.
[0044] The model converter subsystem 152 can be used to convert from a first model type to a second model type. The unified modelling subsystem 154 can be used to generate and maintain a unified grid model from the grid models 112 and other data. The grid planning subsystem 156 can be used for planning grid expansions and evaluating impacts of changes to the grid and demand changes. The network subsystem 158 can be used train a network reduction machine learning model that generates reduced network models. Example operations of the network reduction subsystem 158 are described with reference to Figs. 3A - 6 below.
[0045] Interdependencies among components can be included in a unified grid model (or "grid model,” for brevity), which is a model that spans the totality of components from generators to end loads (e.g., households). A unified model can be a software representation of power system components and electrical networks that can include mathematical representations of the components used for simulation and analysis.Physical components of the electrical grid can be represented by elements of the grid model.
[0046] One of the models 190 can be a unified grid model. A unified grid model can be built using various data sources including topological data, geographical data, and characteristics of individual grid assets. Such data can be obtained from various data sources such as imagery and LIDAR measurements of actual grid components, sensor data (e.g., measurements obtained from actual grid operations), and utility data. Utility data can include information relating to various aspects of the electrical grid, including conductor types, poles and attachments, phase connections, among many other examples.
[0047] Electrical power grids include a broad range of interconnected components that can be organized into two broad categories: transmission components that deliver power from power generation along high voltage wires across long distances to substations, and distribution components that distribute power from substations to endpoints such as homes and businesses. Some elements, such as substations, participate in both transmission and distribution. The components can be of various types such asAttorney Docket No. 43374-0872W01inverters (Solar, Wind, HVDC, etc.), relays, Power Plant Controllers (PPCs), Energy Management Systems, Remedial Action Systems (RAS), Automatic Generator Controls, alarm systems and so on.
[0048] The operation of one component often influences the operation of other components. For example, a PPC regulates and controls networked inverters within a power plant. In addition, various components can operate differently under different load conditions. Further, the output of one component can influence the load of other components. Understanding how the totality of components in the grid operate can aid in proper grid operation.
[0049] Fig. 2 is a diagram an environment 200 for simulating electrical grid transmission and distribution. Simulations can be used to determine how various components will operate under such varying load conditions. The model used for simulation can be called an electrical grid simulation model (or "simulation model," for brevity), which can operate on a unified grid model or on a subset of a unified grid model.
[0050] The environment can include a simulation system 201, one or more electrical grid simulation models 257 based on the electric grid models 190. The grid simulation models 257 are stored in a simulation repository 255. Some of these grid simulation models can be the reduced network models generated by the network reduction subsystem 158.
[0051] The grid models 190 can include references to one or more simulation models 257 that apply to the grid models 190. In some implementations, each element of a simulation model 257 includes a reference to a simulation model 257 for that element. In some implementations, a simulation model 257 can apply to a subset, or “region,” of the grid model 190.
[0052] The simulation models 257 can include a description of how elements in a grid region (which can be an entire grid or a subset of a grid) are predicted to behave under various electrical conditions, where an electrical condition can include various loads and other conditions (e g., weather conditions). In some implementations, simulation models 157 can include one or more functions that can accept as input loads and conditions and can produce predicted loads at the elements within and at the boundaries of the portion of the grid being simulated. In some implementations, simulation models 257 can be machine learning models, such as neural networks, configured to accept as input loads and conditions and to produce as output predicted load within and at the boundaries of the portion of the grid being simulated. Other forms of grid models, including deterministicAttorney Docket No. 43374-0872W01models, can be used, and various forms of computer simulations (functions, neural networks, computer code, etc.) can be used in combination.
[0053] Such simulation models 257 can accept as input simulated loads at the boundary of the grid region, and can produce predictions that can include (i) predicted loads at one or more of the components within the grid region, (ii) predicted loads at the boundary of the region, or (iii) both predicted loads at the components within the grid region and predicted loads at the boundary of the region.
[0054] The simulation models 257 can apply to an entire grid region, or to a portion of a grid region. In implementations in which a simulation model 257 applies to an entire grid region, the simulation model 257 can accept as inputs and produce outputs for the entire grid region. In some implementations, multiple simulation models 257 apply to the elements in a grid region. For example, each element within a grid region can have an associated simulation model 257, and the simulation can be performed by simulating each element with the grid region. In another example, multiple sub-region within a grid region can have associated simulation models 257, and the simulation can be performed by simulating each sub-region with the grid region.
[0055] In this example implementation, the simulation system 201 includes a simulation model obtaining engine 210, a user interaction engine 217, a boundary condition determination engine 220 and a grid simulation engine 225. The user interaction engine 217 that provides user interface presentation data to computing devices 205 such as personal computer, laptops, smart phones and tablet computer. When rendered by the computing device 205, the user interface presentation data can enable a user to provide information to the user interaction engine 217 that can be used by the simulation system 201. For example, the user interaction engine 217 can provide descriptions of grid model subsets 253 to the grid model engine 215.
[0056] In some implementations, the grid model engine 215 can obtain a grid model 190 and provide grid model subsets 253 to the boundary’ condition determination engine 220 and to the grid simulation engine 225. A grid model subset 253 can be a proper subset of a grid model 190, and can include elements and connections among the elements. A grid model subset 253 can represent a functional subset of a grid model. For example, one grid model subset 253 can include transmission elements and a second grid model subset 253 can include distribution elements. In another example, one grid model subset 253 can include elements operated by one entity (e g., a power company), and aAttorney Docket No. 43374-0872W01second grid model subset 253 can include elements operated by a different entity. The grid model subsets 253 are derived from the extant unified grid model 190.
[0057] The grid model engine 215 can obtain a grid model 190 or grid model subsets 253 using techniques suitable for the data repository, such as structured query language (SQL) operations to retrieve data from a relational database or file system operations provided by an operating system to retrieve models from a file system.
[0058] The boundary condition determination engine 220 can accept grid model subsets 253 and determine boundary conditions 222 between the grid model subsets 253. Boundary' conditions 222 can represent intersections between elements of one grid model subset 253 and a second grid model subset 253. Boundary conditions can include both overlapping elements (e.g., the same elements that are in each grid model, or elements that are directly coupled to each other in the grid models, such as conductors on either side of a transformer) and conditions that must exist at the elements (e.g., same voltage, same current, or same power).
[0059] A condition can be specified as a Boolean expression that must evaluate to TRUE. For example, a boundary condition can specify that for an element common to two grid model subsets, both grid model subsets the voltage must be the same. In another example, a boundary' condition can specify that a property' (e.g., a voltage) must be within a specified range for each element subject to the boundary condition. A boundary' condition can be an operating condition, as described above.
[0060] The simulation model obtaining engine 210 can obtain simulation models 257 from a simulation model repository 245. The simulation model obtaining engine 210 can obtain simulation models 257 using techniques suitable for the data repository', such as structured query language (SQL) operations to retrieve data from a relational database or file system operations provided by an operating system to retrieve models from a file system. The simulation model obtaining engine 210 can provide simulation models 257 to the grid simulation engine 225.
[0061] The grid simulation engine 225 can accept simulation models 257, grid model subsets 253 and boundary conditions 222 and provide predicted operational values such as voltage and current. The grid simulation engine 225 can execute simulation models 257 on the grid model subsets 253 and using the boundary' conditions 222 as constraints.
[0062] The simulations may vary', based on objectives. For example, one grid model simulation may be for transition analysis, while another may be for steady state analysis,Attorney Docket No. 43374-0872W01yet another may be for thermal analysis, and still yet another may be for a visualization analysis. The different simulation types may be referred to as application categories.
[0063] The network reduction subsystem 158 includes a network reduction machine learning model that processes a grid model 190 to generate a reduced network model. The subsystem 158 uses a machine learning (ML) model to decide when to replace subnetworks with network equivalents. In some implementations, the subsystem 158 utilizes a method of making reduction decisions using a trained classifier.
[0064] An example of a network reduction of a grid model to a reduced network model is illustrated in Fig. 3A, which is a graphical depiction of a reduced network model 302 generated from a grid model 300. In particular, and as described in H. Oh, "Aggregation of Buses for a Network Reduction," in IEEE Transactions on Power Systems, vol. 27, no. 2, pp. 705-712, May 2012, the reduced network model 302 is a reduced bus system model of the full network model 300. Such a reduced network model 302 can be useful for visualization and certain types of performance analysis.
[0065] Fig. 3B are illustrations of example network reduction decisions 400. For each decision 400 there is shown a first set of full grid model elements 402 that are reduced to a second set of grid elements 404. The latter grid elements are reduced network model of the grid model 402. As can be appreciated, the cardinality' of the set of electrical grid entities in the reduced network model 404 is less than the cardinality' of the set of electrical grid entities in the full grid model 402. For example, for the group parallel branches decision, four network elements are reduced to three; for the prune radial branches operation, thirteen network elements are reduced to nine; and so on.
[0066] Each decision 400 may be defined by appropriate rule conditions, or rules. For example, grouping parallel branches may require that each bus have a same voltage; collapsing low-loss branches may require that the branch have a loss less than a loss threshold, etc.
[0067] The decisions of Fig. 3B are not exhaustive, and in practice there are additional decisions and corresponding conditions for generating reduced network models. Moreover, decisions that are used to generate a reduced network model may depend on the application category’. For example, for a visualization application category, physical distances between buses may be a condition for combining the buses, while in a transient analysis application category', the physical distances between the buses may not be a condition to combine the buses.Attorney Docket No. 43374-0872W01
[0068] As can be appreciated, with myriad decisions and application categories, the generation of reduced network models is time consuming and prone to error. Moreover, such deterministic processes tend to be brittle when changes are implemented.
[0069] To address these and other problems described above, the network reduction subsystem 158 of Fig. 4 is used. The network reduction machine learning model training system 420 is used to train a network reduction machine learning model 410, and, once the model 410 is trained, the model 510 is then used to generate reduced network models 192.
[0070] In some implementations, an initial set of training examples (i.e., labeled instances) are collected by instrumenting an automated network reduction algorithm that makes reduction decisions using manually implemented rules. There is a set of training examples for each type of reduction decision. These are collected as curated training examples 430.
[0071] In some implementations, the training examples may be checked manually to produce the curated sets of training examples 430. This process may be based on comparing an automatically reduced network to a reduced network that has been generated manually by power system engineers, for example.
[0072] As shown in Fig. 4, the curated training examples 430 may include one or more electric grid models 190 and reduced network models 192. Each reduced network model 192 specifies a first set of electrical grid entities that are an approximation of second set of electrical grid entities in the grid model. Because the cardinality of the set of electrical grid entities in the reduced network model 192 is less than the cardinality the set of electrical grid entities in the full grid model 190, the reduced network model has fewer entities to process during a simulation, visualization, or other computer process that is carried out using the reduced network model. Each network reduction to produce a reduced network model is based on one or more network reduction decisions in response to one or more network reduction rules, as described above.
[0073] In some implementations, the network reduction machine learning model 410 may include multiple classifiers, with one classifier for each type of reduction decision. The curated training examples 430 are used to train a classifier for each type of reduction decision. The classifiers may use any suitable machine learning technique (e.g., neural networks or random forests). Of course, other types of machine learning models can also be used.Attorney Docket No. 43374-0872W01
[0074] In some implementations, training examples are partitioned by application categories 194. The network reduction machine learning model 410 may thus include multiple classifiers, each for a specific application category 194, and each is trained and applied separately for each application category so that network reductions are performed appropriately for each application category'.
[0075] Once trained, the network reduction machine learning model 410 can be used to perform network reductions. For example, as shown in Fig. 4, an application category AC and a grid model 190 are provided as input to the network reduction machine learning model 410. In response, the network reduction machine learning model 410 generates a reduced network model 192. The reductions applied to generate the reduced network model 192 will depend on the specified application category.
[0076] In some implementations, the network reduction machine learning model 410 uses classification scores to prioritize reductions, and the model iteratively performs network reductions. At each iteration of the network reduction, all candidate reductions are considered (or all cases of a particular reduction type), and the highest scoring candidate is reduced. This is repeated until no candidate’s score exceeds some threshold.
[0077] In some implementations, the model 410 is trained so each ty pe of reduction is considered in order of some sequence (e.g., first closely connected bus pairs, then peripheral subnetworks, etc.). For each type of reduction, each possible case of that reduction is considered. A decision is made about that case and. accordingly, the reduction is performed or not. The decision may be based on a scoring threshold. This continues until no further cases are found.
[0078] In some implementations, user overrides are used to improve the classifiers. Classifiers are trained (or fine-tuned, depending on the classifier technique) on training sets that are augmented by examples generated from the user overrides. The additional examples may be upweighted or replicated so that they influence network reduction results more strongly.
[0079] Operation of the network reduction subsystem 158 is described in more detail with reference to Figs. 5 and 6. Fig. 5 is a flow diagram of a process 500 of training a network reduction machine learning model, and Fig. 6 is a flow diagram of a process 600 of training the network reduction machine learning model using feature vectors that encode network reduction decisions of training data. Each of these processes may be implemented on a computer system programmed to perform the operations described below.Attorney Docket No. 43374-0872W01
[0080] The process 500 accesses data describing an electric grid model of electrical grid entities of an electrical grid (502). For example, the subsystem 158 may access a grid model from the grid models 190.
[0081] The process 500 accesses training data comprising a plurality of reduced network models (504). For example, the reduced network models 192 of Fig. 4 may be accessed. In some implementations, machine learning models specific to respective application categories 194 are trained, and the reduced network models 192 that are accessed will be specific to the application category for which the machine learning model is being trained.
[0082] The process 500 then trains, based on the training data, the network reduction machine learning model to generate, in response to a grid model as input, a reduced network model of the grid model (506). For example, the subsystem 158 trains the model 410 based on the grid model 190 and the reduced network models 194.
[0083] Optionally, the training can also depend on the application category for which model 410 is being trained. In particular, each of the reduced network models 192 is specific to an application category 194, and each reduced network model 192 for a specific application category 194 is different from each other reduced network model for other application categories.
[0084] In some implementations, a single machine learning model may be trained for all application categories. In other implementations, training the network reduction machine learning model 410 includes training multiple network reduction machine learning models, where each network reduction machine learning model is specific to one of the application categories.
[0085] In some implementations, the training data can be further curated to facilitate training by generating feature vectors characterizing a local context of reductions. The local context is a context for each reduction and may include, for example, the nominal voltages of buses; the physical length, impedance and capacity of a branch; the power flow and power loss on a branch; measures of local topology; the physical distances between substations containing buses; and whether the buses belong to the same or separate organizations; and a decision outcome (e.g., whether to merge two buses, or whether to prune a peripheral subnetwork). The feature vectors are generated, for example, by instrumenting a deterministic processes that generates reduced network models.Attorney Docket No. 43374-0872W01
[0086] For different types of reduction decisions, there are different types of feature vectors. For example, one type of reduction decision is whether to merge two buses, and another is whether to prune a peripheral subnetwork. The feature vector for each type of reduction decision is designed to capture all information relevant to that decision.
[0087] Training using feature vectors is described with reference to Fig. 6. In operation, the process 600 encodes, for each reduction decision, the reduction decision into a feature vector (602). These encodings are stored as part of the training data 430. with the reduced network models 192 to which they correspond.
[0088] The process 600 accesses training data that includes the reduced network models (604). For example, the reduced network models 192, which include the feature vectors of the decisions for each reduced network model, may be accessed. Again, in particular implementation, models specific to respective application categories 194 are trained, and the reduced network models 192 that are accessed will be specific to the application category7for which the model is being trained. The process 600 trains the network reduction learning model on the grid model, the reduced network models, and the encoded reduction decisions (606).
[0089] Implementations of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry7, in tangibly-implemented computer software or firmware, in computer hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Implementations of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible non-transitory program carrier for execution by, or to control the operation of, data processing apparatus. The computer storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.
[0090] The term "data processing apparatus’" refers to data processing hardware and encompasses all kinds of apparatus, devices, and machines for processing data, including, by way of example, a programmable processor, a computer, or multiple processors or computers. The apparatus can also be or further include special purpose logic circuitry, e.g., a central processing unit (CPU), a FPGA (field programmable gate array), or an ASIC (application-specific integrated circuit). In some implementations, the data processing apparatus and / or special purpose logic circuitry may be hardware-based and / orAttorney Docket No. 43374-0872W01software-based. The apparatus can optionally include code that creates an execution environment for computer programs, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them. The present disclosure contemplates the use of data processing apparatuses with or without conventional operating systems, for example Linux, UNIX, Windows, Mac OS, Android, iOS or any other suitable conventional operating system.
[0091] A computer program, which may also be referred to or described as a program, software, a software application, a module, a software module, a script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data, e.g., one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files, e.g., files that store one or more modules, sub-programs, or portions of code. A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication netw ork. While portions of the programs illustrated in the various figures are shown as individual modules that implement the various features and functionality through various objects, methods, or other processes, the programs may instead include a number of sub-modules, third party services, components, libraries, and such, as appropriate. Conversely, the features and functionality7of various components can be combined into single components as appropriate.
[0092] The processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., a central processing unit (CPU), a FPGA (field programmable gate array), or an ASIC (application-specific integrated circuit).
[0093] Computers suitable for the execution of a computer program include, by way of example, can be based on general or special purpose microprocessors or both, or any other kind of central processing unit. Generally, a central processing unit will receive instructions and data from a read-only memory or a random access memory7or both. TheAttorney Docket No. 43374-0872W01essential elements of a computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. However, a computer need not have such devices. Moreover, a computer can be embedded in another device, e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) receiver, or a portable storage device, e g., a universal serial bus (USB) flash drive, to name just a few.
[0094] Computer-readable media (transitory or non-transitory, as appropriate) suitable for storing computer program instructions and data include all forms of nonvolatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The memory may store various objects or data, including caches, classes, frameworks, applications, backup data, jobs, web pages, web page templates, database tables, repositories storing business and / or dynamic information, and any other appropriate information including any parameters, variables, algorithms, instructions, rules, constraints, or references thereto. Additionally, the memory may include any other appropriate data, such as logs, policies, security or access data, reporting files, as well as others. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
[0095] To provide for interaction with a user, implementations of the subject matter described in this specification can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube), LCD (liquid crystal display), or plasma monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user; for example, by sending web pages to a web browser on a user’s client device in response to requests received from the web browser.Attorney Docket No. 43374-0872W01
[0096] The term “graphical user interface,” or GUI, may be used in the singular or the plural to describe one or more graphical user interfaces and each of the displays of a particular graphical user interface. Therefore, a GUI may represent any graphical user interface, including but not limited to, a web browser, a touch screen, or a command line interface (CLI) that processes information and efficiently presents the information results to the user. In general, a GUI may include a plurality of user interface (UI) elements, some or all associated with a web browser, such as interactive fields, pull-down lists, and buttons operable by the business suite user. These and other UI elements may be related to or represent the functions of the web browser.
[0097] Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e g., a communication network. Examples of communication networks include a local area network (LAN), a wide area network (WAN), e.g., the Internet, and a wireless local area network (WLAN).
[0098] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
[0099] While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or on the scope of what may be claimed, but rather as descriptions of features that may be specific to particular implementations of particular inventions. Certain features that are described in this specification in the context of separate implementations can also be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases beAttorney Docket No. 43374-0872W01excised from the combination, and the claimed combination may be directed to a subcombination or variation of sub-combinations.
[0100] Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be helpful. Moreover, the separation of various system modules and components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
[0101] Particular implementations of the subject matter have been described. Other implementations, alterations, and permutations of the described implementations are within the scope of the following claims as w ill be apparent to those skilled in the art. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results.
[0102] Accordingly, the above description of example implementations does not define or constrain this disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of this disclosure.
[0103] What is claimed is:
Claims
Attorney Docket No. 43374-0872W01CLAIMS1. A computer-implemented method comprising:accessing data describing an electric grid model of electrical grid entities of an electrical grid;accessing training data comprising a plurality of reduced network models, each reduced network model specifying a network reduction of the grid model, wherein:each reduced network model specifies network reductions of the grid model, where each reduced network model comprises a first set of electrical grid entities that are an approximation of second set of electrical grid entities in the grid model, and the cardinality' of the first set of electrical grid entities is less than the cardinality of the second set of electrical grid entities; andeach network reduction is based on one or more network reduction decisions in response to one or more netw ork reduction rules; andtraining, based on the training data, a network reduction machine learning model to generate, in response to grid model as input, a reduced network model of the grid model, the training based on the grid model and the reduced network models.
2. The computer-implemented method of claim 1, wherein:each of the plurality of reduced netw ork models is specific to an application category, wherein each reduced network model for a specific application category is different from each other reduced network model for other application categories.
3. The computer-implemented method of claim 2, wherein training the network reduction machine learning model comprises training a plurality of network reduction machine learning models, wherein each network reduction machine learning model is specific to one of the application categories.
4. The computer-implemented method of claim 3, wherein training the plurality of network reduction machine learning models comprises training, for each application category, a network reduction machine learning model for the application category on the grid model and reduced network models specific to the application category.
5. The computer-implemented method of claim 1, further comprising:Attorney Docket No. 43374-0872W01encoding the network reduction decisions of each reduced network model, including for each reduction decision, encoding the reduction decision into a feature vector;accessing training data for the grid model, the training data including a plurality of reduction decisions made on the grid model; andtraining the network reduction learning model comprises training the netw ork reduction learning model on the grid model, the reduced network models, and the encoded reduction decisions.
6. The computer-implemented method of claim 2, wherein two or more of the reduction decisions are of a different type from each other, and encoding the plurality of reduction decisions includes encoding each reduction decision into a feature vector specific to the type of reduction decision.
7. The computer-implemented method of claim 1, wherein the network reduction learning model includes a plurality of classifiers, each of a different type, and each classifier is trained for a reduction decision of a particular type that is different from each other type for which each other classifier is trained.
8. A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations of claims 1 - 7.
9. One or more non-transitory computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations of claims 1 - 7.