Limits of Mathematical Programming for Systems Analysis


Lecture 22

November 20, 2024

Review and Questions

Mathematical Programming

  • Write decision problem in closed-form:
    • Objectives, constraints as explicit functions of decision variables.
  • Linear Programming:
    • Linearity
    • Certainty
    • Divisibility

Relaxing LP Assumptions

  • Relaxing Divisibility: Mixed Integer Linear Programming
  • Relaxing Certainty: Two-Stage Linear Programs
  • Relaxing Linearity: not going there

Treatment of Uncertainty in LPs

  • Two-Stage Problems (Initial Decision -> Recourse)
  • Scenarios

Thinking More About Mathematical Programming

Pros and Cons of Mathematical Programming

Pros:

  • Can guarantee analytic solutions (or close)
  • Often computationally scalable (especially for LPs)
  • Transparent

Cons:

  • Often quite stylized
  • Limited ability to treat uncertainty

Challenge 1: Writing Down A Mathematical Program

Systems models often have:

  1. Hard to write objectives and constraints in closed form;
  2. Nonlinear dynamics with “unpleasant” geometry.

Recall: Bifurcations

Bifurcations are when the qualitative behavior of a system changes across a parameter boundary.

Bifurcations Diagram

Recall: Feedback Loops

Feedback loops can be reinforcing or dampening.

Dampening feedback loops are associated with stable equilibria, while reinforcing feedback loops are associated with instability.

Reinforcing Feedback Example

What Are The Implications of These Dynamics?

  • May violate strong geometric constraints from mathematical programming.
  • Neglecting can lead to overconfidence about outcomes.

Emergence

  • Simple “micro”-scale rules can yield more complex and unexpected “macro”-scale outcomes
  • Can complicate writing down system dynamics and constraints in MP form.

Schelling Model Animation

Source: Blaqdolphin - Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=91228415

Challenge 2: Multiple Objectives

We often have multiple objectives that we want to analyze.

  • Costs
  • Environmental impacts
  • Reliability

Mathematical Programming and Multiple Objectives

We could formulate constraints based on a priori assessments of acceptability:

  • Budget constraints;
  • Reliability constraints

Combining Multiple Objectives Together

Another common approach is to combine multiple objectives \(Z_i\) together into a weighted sum:

\[\sum_i w_i Z_i,\]

where \(\sum_i w_i = 1\).

This requires normalizing the \(Z_i\).

Limits of These Approaches

Can you think of problems or limits with these approaches to handling multiple objectives?

  • Require a priori assessments of acceptable limits and/or weights.
  • Limits ability to understand “macro”-scale tradeoffs (beyond shadow prices).

Example: Shallow Lake Problem

Shallow Lake Problem

Recall the shallow lake problem from earlier in the semester.

Shallow Lake Problem Diagram

Lake Model

\[\begin{align*} X_{t+1} &= X_t + a_t + y_t \\ &\quad + \frac{X_t^q}{1 + X_t^q} - bX_t,\\[0.5em] y_t &\sim \text{LogNormal}(\mu, \sigma^2) \end{align*}\]

Parameter Definition
\(X_t\) P concentration in lake
\(a_t\) point source P input
\(y_t\) non-point source P input
\(q\) P recycling rate
\(b\) rate at which P is lost

Lake Model Dynamics

No Exogenous P Inputs
Exogenous P Inputs: 0.10/time

The Lake Problem As a Mathematical Program?

What complicates formulating a mathematical program for the lake problem?

The Lake Problem As a Mathematical Program?

Our objective might be to maximize \(\sum_{t=1}^T a_t\) (as a proxy for economic activity), while keeping a low probability of eutrophication.

Uncertain Inputs and MP

How can we represent uncertainty in inputs \(y_t\) in an MP?

  • Very challenging to formulate scenarios;
  • Non-trivial (if possible) to write expected value in analytic form;
  • But Monte Carlo simulation is straightforward…

Multiple Objectives and the Lake Problem

What are some relevant objectives for the lake problem?

  • Maximize phosphorous output (proxy for economic output)
  • Maximize probability of avoiding eutrophification
  • Can add other objectives breaking out lake response (stability, worst case P concentration, etc.)

Upshot Of These Challenges

Many systems problems with

  • complex, non-linear dynamics;
  • continuous uncertainties;
  • multiple objectives.

don’t lend themselves well to mathematical programming.

So how can we make decisions?

Multiple Objectives

Multiple Objectives and Environmental Systems

Often have multiple objectives at play when designing or managing environmental systems:

Some examples:

  • Cost
  • Environmental quality
  • Reliability/Variability

Example: Power Systems

  • Total generation cost (including reserves);
  • CO2 emissions;
  • Resource adequacy (do we have enough resources available);
  • Reliability;
  • Other environmental impacts

Example: Reservoir Operations

  • Municipal demand;
  • Irrigation;
  • Recreation;
  • Hydropower potential;
  • Flood management;
  • Streamflow (ecosystem management)

How Can We Incorporate Multiple Objectives Into Models?

Approaches are method specific!

Key Question: what does it mean to “optimize” multiple objectives?

How Can We Incorporate Multiple Objectives Into Models?

Linear Programming:

  1. Identify thresholds and establish constraints for non-objective “objectives”;
  2. Weight objectives based on preferences, e.g. \[\min_\mathbf{x} Z(\mathbf{x}) = \sum_i w_i \hat{Z_i}(\mathbf{x}), \qquad \sum_i w_i =1\]

How Can We Incorporate Multiple Objectives Into Models?

Simulation-Optimization:

  • Could use the LP approaches
  • Can also have the simulation model (or wrapper) return multiple metrics

Back To The Key Question…

What does it mean to “optimize” multiple objectives?

Straightforward with weighting, requires but a priori elicitation of weights.

What about if we leave the objectives unaggregated?

Example: Lake Problem

Simulated 100 random decisions with two objectives:

  • Maximize mean P releases
  • Minimize probability of exceeding critical P concentration

Tradeoffs

There is a tradeoff between these two objectives:

Greater releases typically means lower reliability.

What does it mean to find an “optimum” across these two objectives?

Non-Dominated Decisions

We say that a decision \(\mathbf{x}\) is dominated if there exists another solution \(\mathbf{y}\) such that for every objective metric \(Z_i(\cdot)\), \[Z_i(\mathbf{x}) > Z_i(\mathbf{y}).\]

Non-Dominated Decisions

\(\mathbf{x}\) is non-dominated if it is not dominated by any \(\mathbf{y} \neq \mathbf{x}\).

Pareto Fronts

The set of non-dominated solutions is called the Pareto front (solutions are Pareto-optimal).

Every member of a Pareto front represents a different tradeoff between objectives.

A Priori vs A Posteriori Decision-Making

This gives us two frameworks for evaluating tradeoffs:

  1. A Priori: Establish weights ahead of time and combine objectives;
  2. A Posteriori: Identify Pareto-optimal solutions and then discuss what tradeoffs are tolerable.

Identifying Pareto Fronts

In higher dimensions, manually screening of a Pareto front is difficult.

Can use multi-objective optimization with (certain) evolutionary algorithms.

Key Takeaways

Takeaways

  • General challenges to mathematical programming for general systems analysis.
  • These challenges include:
    • Complex and non-linear systems dynamics;
    • Uncertainties;
    • Multiple objectives.

Multiple Objectives

  • Management of environmental systems often involves multiple objectives.
  • Multiple objectives often have tradeoffs.
  • Can combine multiple objectives with weights (a priori decision-making) or identifying non-dominated solutions (a posteriori decision-making)
  • Set of non-dominated solutions (Pareto front) represent different choices about tradeoffs.

Upcoming Schedule

Next Classes

Wednesday: Limits of Mathematical Programming

Monday: Prelim 2 Review, Wrap-Up

No Class after Thanksgiving!

  • Work on project!
  • Will have open office hours for project check-ins (remotely on 12/4)

Assessments

HW5: Will be due last week of class (12/5).