QuantEcon / QuantEcon/lecture-python.myst

[opt_transport] shuffle example output no longer matches description

Open
#945 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

medium-priority new-lecture
Dominant language
TeX
Stars
123
Forks
57
Avg merge
3d 10h
Merged PRs (30d)
11

Description

In opt_transport.md, the constraint-shuffling example currently gives only one distinct transportation plan, but the text says it “uncovers two optimal transportation plans.”

Image

The LP does have multiple optimal solutions. However, with the current SciPy/HiGHS solver, shuffling the order of the equality constraints does not appear to return a different optimal plan.

I think we should replace or remove the shuffle example.

One possible replacement is to solve the LP, record the optimal value, add the equality constraint C_vec @ x == optimal_value, and then solve secondary LPs over the optimal face to exhibit other optimal plans with the same objective value.

I think it would be very useful for the lecture to show a deterministic way to find multiple optimal plans, rather than relying on random shuffling or solver tie-breaking!

CC @mmcky and @Chihiro2000GitHub and referencing #892.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in opt_transport.md by reading and running the constraint-shuffling example with the current SciPy/HiGHS solver. Replace or remove the shuffle-based demonstration, using the proposed optimal-face approach if appropriate, and ensure the lecture deterministically shows multiple optimal transportation plans with the same objective value.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.