carbon-data-specification / Power-Systems-Data

This repository is dedicated to the Power Systems Data Working Group
Other
10 stars 7 forks source link

How to specify zones / geographic granularity #4

Closed m-mirz closed 1 year ago

m-mirz commented 2 years ago
grgmiller commented 2 years ago

There are multiple levels of geographic granularity that could be considered:

  1. Interconnection - a group of balancing regions that are physically interconnected and can exchange electricity with each other
  2. Balancing authority (in US) / country (in Europe) - generally defined by a region for which there is a single operator that is responsible for balancing supply and demand
  3. Transmission congested zones within each BA
  4. Transmission-level nodes (generally corresponding to LMP nodes in a wholesale market)
  5. Distribution-level nodes (generally corresponding to distribution-level substation/feeder)

One question is how this data should be made available. Several options:

  1. Mapping table that identifies the relationship between each of the 5 levels of geographies identified above. Ideally, if you start with the most granular (5) and work your way up to 1 (interconnect), each of the more granular geographies should map to a single larger geography.
  2. GIS files (e.g. shapefiles). One challenge of GIS data is that some of these regions overlap with each other, so sometimes it is not possible to map each generator to a specific region based on its location alone

Part of how this data is provided might depend on what type of emissions/generation data we are starting with. If we're starting with emissions data that is provided already aggregated at a regional level, or whether we are starting with data for individual generators or demand nodes.

grgmiller commented 2 years ago

Each level of geographic granularity that we include might also depend on whether or not we can also find data that identifies the edges/connections between each level. For example, at the balancing authority level, we would need to be able to identify all of the BA-to-BA interties between each region, whereas for distribution-level nodes, we might need to have a map of the distribution network itself. (If you think about this problem in terms of a network graph, each region would be a "node" but we would also need data about each "edge").

The type of information that we might want about each edge is not only whether they exist, but things like the volume of interchange / line ratings, etc. This discussion might be better suited for an issue about interchange / consumption-based emissions data.

Not sure if this is related to #14 ?

gwpicard commented 2 years ago

Some good points!

Our model should allow for the abstraction of all common elements to every level of spatial granularity. We ideally should not add any new "properties" when increasing spatial granularity (or vice-versa).

Perhaps, the best abstraction for all levels could just some kind of network graph where node = spatial level of granularity, and edge = connection between spatial levels. Then we work within this constraint to allow for the description of data regardless of the level.

Does that make sense?

I see #14 as specifying the "edge" parts of the graph in the data model.


I'm also wondering about how we distinguish between consuming nodes and producing nodes?

The substation / feeder level would typically be for step-down to end users, correct? How would we fit going from individual power unit --> aggregated production?

grgmiller commented 2 years ago

Notes/thoughts from conversation on this topic at 4/28/2022

Ideally, we would be getting data at the unit level, which could be then agggregated up to whichever level we need. For each unit, we would want a static table that maps each unit to each level of geographic granularity (node, zone, BA, interconnect, etc).

However, the raw data might not always be available at the unit level, but we still would want to be able to map the data up and down the different levels of geographic granularity. For example, say an ISO is only able to provide the data at the zone level (e..g. "MISO South"). We would still want them to provide a static mapping table that identifies all of the nodes that are located in that region, and then all of the units that are located at each node.

I think having consistent mapping of where all the units are located (within the power network topology, rather than just their lat/long or location within geopolitical boundaries) will be the most helpful.

grgmiller commented 2 years ago

Other questions from the call:

grgmiller commented 2 years ago

We might be able to utilize existing specifications from IEC 61970 Common Information Model (https://www.epri.com/research/products/000000003002021840)

Related to #24

Without having seen CIM before, I was envisioning that for each of the five spatial granularity levels introduced above, each level would contain "nodes" and edges that describe the connection between each node at that level, and there would also be edges that describe the relationship to nodes at the spatial granularity level above and below.

There are multiple levels of geographic granularity that could be considered:

1. Interconnection - a group of balancing regions that are physically interconnected and can exchange electricity with each other

2. Balancing authority (in US) / country (in Europe) - generally defined by a region for which there is a single operator that is responsible for balancing supply and demand

3. Transmission congested zones within each BA

4. Transmission-level nodes (generally corresponding to LMP nodes in a wholesale market)

5. Distribution-level nodes (generally corresponding to distribution-level substation/feeder)

For example, if we were looking at level 2 (balancing authority), the nodes would be things like CAISO, BPAT, AZPS, and edges that describe how each of these nodes are interconnected to each other at the same level. Each of these BA nodes would also be connected to a node at the level above (interconnection), and the level below (transmission congested zone). Generally, as you move up the spatial granularity mapping (from most granular to least granular), there should be a m:1 relationship (many distribution nodes would map to a single transmission node, many transmission nodes would map to a single subregion, many subregions would map to a single balancing area, etc..).

Then when we have unit-level data, each of these units would have a static attribute that assigns it to a specific node at a specific level of geographic granularity.

grgmiller commented 2 years ago

Related to #3 maybe the lat/long or local timezone database name is a static attribute of the node, so that any end data can be converted from UTC to local time through how it is mapped to the node.

grgmiller commented 2 years ago

Another question is whether or not we want to represent the generation topology below the nodal level. For example, a specific power plant would be mapped to a single distribution or transmission node, But if we are getting source data for individual boilers, units, or generators at a power plant, we would also want a topological mapping of how all boilers, generators, and units are associated with each other at a single power plant. These relationships can be simple (1:1) or complex (m:m).

gwpicard commented 2 years ago

@grgmiller That's exactly what I was thinking as well — specifying topologies for each level and how the levels map onto each other. Some thoughts below:

Shared (and non-shared) attributes across levels Like you said, we should also define the shared node attributes across levels i.e. whether you are at the BA level or plant-level, each will have a shared timestamp dynamic property. However, timezone is more complicated at the BA where they can span multiple timestamps. It would be nice here to figure out what attributes are and aren't shared across levels

Topological mapping schematic It would also be good to agree on the levels of spatial — would you be able to illustrate using some along the lines of below (simplified quick sketch)?:

Screenshot 2022-05-12 at 18 48 14

This is oversimplified and doesn't include any consuming nodes or transmission, but it would be nice to see a simplified version of your thoughts schematically using something along the lines of the above diagram.

Sub-unit-level properties In terms of the properties below the nodal level, I'm not sure if it's overkill at the moment. Getting unit-level production would already be amazing. I hope that our model is flexible enough to append later down the line.

grgmiller commented 2 years ago

Here's what I was thinking. Boxes represent nodes, lines represent edges. Solid lines represent physical connections (eg transmission line) which would each have their own static and dynamic attributes (e.g. line capacity, interchange over line in each timestamp), while dashed lines represent relational edges that only describe how one level maps to another. The round circle represents a dynamic endpoint that would be assigned a single node in the topology - thus, you could aggregate the endpoint to any level above because you know the mapping. This is just a rough sketch of the idea.

Again related to #24 - not sure how we would actually store this network graph and distinguish between the different types of edges.

image

gwpicard commented 2 years ago

@grgmiller I like this model. I think what would be useful is to map properties to each node in each level. And we can discuss what we like/don't like about and challenge it.

As for how to store it, I think there are things we can get inspiration from. I think the best thing is to have separate modules for nodes and edges. The node module includes an ID + properties. The edge module would contain two node IDs that represent an edge. You could then reconstruct the entire network graph + levels with something like that.

gwpicard commented 2 years ago

One way we could build on this specification would be:

Screenshot 2022-05-24 at 11 08 22

Each node has a mix of static/dynamic data, and in essence becomes directed graph. Each specification would represent the system state at any point in time.

grgmiller commented 2 years ago

Notes from CDSC PSWG meeting 5/26:

m-mirz commented 2 years ago

The nodes and edges could be mapped to CIM TopologicalNodes and ACLineSegments

I think it could be very valuable to reuse the name and mRID defined for these components. You find these attributes if you unfold the "Public Attributes inherited from ... IdentifiedObject" section. Sharing the same unique ID with CIM will make the mapping much easier.

This is one example. I am going to work on a more comprehensive list.

@grgmiller do we also want to keep track of grid reconfigurations by adding switches and breakers?

grgmiller commented 2 years ago

Notes from 7/7 meeting:

grgmiller commented 2 years ago

Thanks for sharing the CIMS specification @m-mirz . I think one important question that we need to answer about this is what level of specificity we need to define, based on how specifically we want our data to inform models. There are four general types of grid models (copper plate, transshipment, DC power flow, AC power flow; see this for some definitions).

It sounds like we are interested in at least specifying data that could inform a DC power flow model which considers Kirchoffs laws and factors like resistance and max line capacity. However, not sure if we are trying to get to the level of specificity of an AC power flow model that takes into account active and reactive power.

You mentioned switches and breakers - is that too specific, or do we want to just represent the system as nodes and edges? My understanding that representation of switches/breakers would perhaps be useful for reliability/network modeling, but not necessarily DC power flow modeling.

grgmiller commented 2 years ago

Notes from conversation with grid operators 8/23: