Modeling framework for Water Demand: Difference between revisions

From Open World
No edit summary
No edit summary
Line 1: Line 1:
<slide title="Model Connections">
[[File:Allmods.png|center]]
</slide>


<slide title="Aggregate System Models">
* Population: population, land use
* Resources: water flows, infrastructure
* Sentiments: Pro-market vs. pro-environment, inequality, conflict
* Diet Model: livestock, wild-caught, nourishment, prices
</slide>
<slide title="Aggregate Model: Population and Resources">
[[File:Agg1.png|center]]
</slide>
<slide title="Aggregate Model: Sentiments">
[[File:Politics.png|center]]
</slide>
<slide title="Politics: Dynamic Optimization">
Used for making discrete decisions, in politicized context.
[[File:Dynamicopt.png|center]]
</slide>
<slide title="Spatial Optimization">
Used for building infrastructure, and making spatial decisions.
* Hydropower dams, given population centers, slopes, streamflow
* Other power plants, given population centers and streamflow
* Agriculture, given soil and water availability
* Urban sprawl, given land values and existing urban centers
* Well digging, given agriculture potential, groundwater resources
</slide>
<slide title="Network Model">
* Spatial water flow
* Spatial population movement
</slide>
<slide title="Demand Model">
Company maximizing profit given local conditions,
requires labor, capital, and water.
* Cobb-Douglas production: <math>Y = A L^\beta K^\alpha M^\gamma</math>
</slide>
<slide title="Aggregate System 1 Calibration" hide="true">
* 12.7-37 kg ha-1 per mm = 25: French, R. J., & Schultz, J. E. (1984). Water use efficiency of  wheat in a Mediterranean-type environment. I. The relation between  yield, water use and climate.
Crop and Pasture Science, 35(6), 743-764.
* 1961: 49% agriculture, 1.66% urban = 2.6% urban in 2002 * 183.7e6 pop / 287.6e6 pop (Major Uses of Land in the United States, 2002)
</slide>
<slide title="Core Elements">
* Amalgamated Modeling
* Multiple Network Maps
* Networked System Dynamics
* Computational Tools
* Open Interface
* Smart Variables
[[File:Elements.png|center]]
</slide>
<slide title="District Population Shifts">
[[File:Districtnetwork2.png|center]]
</slide>
<slide title="Smart Variables: Dimensions">
*  <math>3</math> vs. <math>3</math> [tonnes] vs.  <math>1350487537</math> [seconds since Jan. 1, 1970]
* Dimensional analysis at the heart of science
* Automatic model checking, unit conversion
</slide>
<slide title="Smart Variables: Maps" fs="1.5em">
"Maps" are dimension-aware functions in space-time, often tied to data streams (e.g., IRI tsvs, geotiffs).
Maps of different resolutions can be manipulated transparently.  Example:
<syntaxhighlight lang="cpp">
  GeographicMap<double>& degreeDayMelt =
      (degreeDayFactor + degreeDaySlope * elevation)
      * (snowCover / 100) * (surfaceTemp - ZERO_CELSIUS)
      * (surfaceTemp >= ZERO_CELSIUS);
</syntaxhighlight>
* elevation is a static map at <math>1 km</math> resolution
* surfaceTemp is a daily varying map at <math>.25^\circ</math> resolution, read from the file 1 day at a time
* snowCover is a weekly varying map at <math>.33^\circ</math> resolution, reconstructed for past years
</slide>
<slide title="Case Study: Hydrological Modeling">
{img src="/images/9/91/Flowcauses.png" width="500" height="333" /}
</slide>
<slide title="Case Study: Hydrological Modeling">
[[File:Bhakramap.png]]
</slide>
<slide title="Case Study: Hydrological Modeling">
[[File:Netmap_ext.png]]
</slide>
<slide title="Smart Variables: Relations">
Variables can represent relationships or differential equations between other variables.
Example (the heat equations):
<syntaxhighlight lang="cpp">
q = -k * Grad(u);
Diff(u) = (-1 / c_p * rho) * Div(q);
</syntaxhighlight>
The  equations themselves are saved within <code>q</code> and  <code>Diff(u)</code>, so the model can be run.
</slide>
<slide title="Case Study: Networked Economics">
Step 1: Reconstruct Solow Growth (with some random shocks):
* <math>\frac{d L}{d t} = \lambda L(t)</math>
* <math>Y(t) = K(t)^\alpha L(t)^{1-\alpha} \epsilon(t)</math>
* <math>\frac{d K}{d t} = s Y(t) - \delta K(t)</math>
{img src="/images/d/db/Solow.png" width="300" height="160" /}
</slide>
<slide title="Case Study: Networked Economics">
Step 2: Make a "distributed" analog to Solow growth:
* Multiple firms, with individual capital stocks
* Separate growth and decay: <math>g[t] = s Y[t]</math>, <math>d[t] = \delta K[t]</math>
* If <math>g[t] \ge d[t]</math>, growth: <math>K[t+1] = K[t] + g[t]</math>
* If <math>g[t] < d[t]</math>, stagnation: <math>K[t+1] = K[t]</math>
** And probability of collapse, so expected value follows Solow
** <math>K[t+1] = K[t] + g[t] - d[t] = (1 - P(c)) K[t] \implies P(c) = (d[t] - g[t]) / K[t]</math>
* Firms can make connections to each other, which increase "technology" (specialization) factor
[[File:Smallworld.png]]
* But when collapse, connections severed, capital goes to 0
</slide>
<slide title="Case Study: Networked Economics">
[[File:Distrib.png]]
[[File:Economies.png]]
</slide>
<slide title="Amalgamated Modeling" fs="1.6em">
Amalgamated modeling allows models to interact, specialize, and "overlap".
Every model is incomplete; applies to a constrained context.
:'''Let's embrace partial models!'''
Want a "plugin architecture", where models can easily be allowed to interact
Coupling causes feedback, and models are defined at different scales.
:'''Need a new way to couple models!'''
Allow overlapping-- models inform different variables, at different scales.
</slide>
<slide title="Amalgamated Modeling">
[[File:Blobs.png]]
</slide>
<slide title="Bayesian Coupling">
[[File:Amalgelt.png]]
</slide>
<slide title="Bayesian Coupling">
For a variable <math>\theta</math> described by multiple models, each
model provides both a PDF across values at a given time <math>t</math>
when run in isolation, <math>p(\theta, \bar{S}^i)</math>, and a
distribution that includes feedback effects, <math>p(\theta, \tilde{S}^i)</math>.  The final distribution is
<math>
        p(\theta | \cdot) \propto p(\theta) \prod_i p(\theta |
          \bar{S}^i)^\lambda p(\theta, \tilde{S}^i)^{1-\lambda}
</math>
[[File:Amalgcombo.png|center]]
</slide>
<slide title="Amalgamation Challenges">
* How do I test it?
* Efficient probability function calculations
* Smooth or spectrally-informed transitions?
* What does downsampling contribute?
* How to ensure that different scales add up?
* How do we understand a multi-scale model?
[[File:Trialestimate.png|left]]
</slide>
<slide title="A New System Dynamics">
Coupling natural and human systems makes things complex:
: feedback, non-linearity, resilience, and spacial heterogeneity
Combine the temporal sophistication of system dynamics,
: with spatial heterogeneity
[[File:ssdarch-mod.png]]
(Ahmad et al 2004; flood management, water resources modeling, invasive species spread)
</slide>
<slide title="Multiple Networks">
Models use multiple networks simultaneously
* Different paths on which stocks flow
* Disaggregations into structured classes
* Capturing network properties
</slide>
<slide title="Multiple Networks in Ohio">
[[File:Ohionet.png]]
</slide>
<slide title="Disaggregating System Models">
[[File:Popmod-vensim.png|center]]
[[File:Popmod.png|center]]
</slide>
<slide title="Networked System Dynamics">
[[File:Netstocks.png]]
</slide>
<slide title="Networked System Dynamics">
[[File:Ohiomod.png]]
</slide>
<slide title="Self-Similar Networks">
[[File:Selfsimodel.jpeg|center]]
</slide>
<slide title="Networking Challenges">
* Ensure that the separate blocks match the aggregate
* What is a full language of networked system dynamics?
* Can a model only apply to part of a network?
* How to ensure that missing models "fail gracefully"?
</slide>
<slide title="Computational Tools">
* Evaluate model performance (Barlas 1996)
* Identify driving feedback loops
* Identify tipping and leverage points
* Construct simplified models for communication
* System Regression: construct models from data
</slide>
<slide title="Integrating Data" fs="2em">
* Calibration
* Validation
* Filling in missing models
:'''We need a smart (context-aware and incomplete-welcoming) data library!'''
</slide>
<slide title="Networked Equations Language">
Custom '''Modeling Language''' combines a units-aware equation-like syntax with networks and GIS.
<syntaxhighlight lang="cpp">
  capacity = 1e10 [tons];
  rate = 0.0077 [tons/year];
  biomass = Stock(1e7 [tons]);
  catches = TimeSeries("catches.tsv", [tons/year]);
  biomass += rate * biomass *
    (1 - biomass / capacity) - catches;
  print(biomass[0:100], "\t");
</syntaxhighlight>
</slide>
<slide title="Extensions">
* Memetic propagation of models
* Integration with climate models
* Importing Vensim models
</slide>
<slide title="Model for Climate Behaviors">
Overdetermined status-quo:
* Politicians won't make unpopular changes
* Businesses won't take action alone
* Consumers have great difficulty without support
* Carbon leakage
* Rebound effects
</slide>
<slide title="Model for Climate Behaviors">
* Climate behaviors as aggregate activity
* Looking for leverage points
* Not trying to predict future states
</slide>
<slide title="Model for Climate Behaviors">
[[File:Architecture.png]]
(Self-similar Meadows 2004 regionally, Forrester 1971 for urban)
</slide>
<slide title="How Many Variables?">
* World3/2000: 283
* System Dynamics National Model: 2000+
* Encyclopedia of World Problems and Human Potential: 56,135
** environmental feedback loops: 2,675
</slide>
<slide title="Multimanaged Fisheries Project">
* Collapsing fisheries, despite new management
* Perverse economic incentives
* Multiple scales of uncertainty
* Unintended policy consequences
</slide>
<slide title="Multimanaged Fisheries Project">
[[File:Food_web_600.jpg]]
</slide>
<slide title="Multimanaged Fisheries Project">
* <math>g_t^i = r^i s_t^i \left(1 - \frac{s_t^i}{K_t^i}\right)</math>
* <math>K_t^i = \sum_{j \in q(i)} w^{ij} s_t^j</math>
* Nature: ecosystem and regional models
* Social: Fishing community, policy-makers, NGOs
* Plug-in different "fish" and "policy" modules
* Working with stakeholders
</slide>

Revision as of 18:11, 24 August 2013