{
  "abstract": "Bilevel optimization provides a natural modeling language for hierarchical decision problems. However, applying existing numerical solvers usually requires substantial manual analysis and reformulation. In this paper, we introduce disciplined bilevel programming (DBLP), a symbolic framework that allows users to specify and solve optimistic bilevel problems in a high-level, human-readable way that is close to the mathematical formulation. For problems with a disciplined nonlinear upper problem and a convex lower problem satisfying the disciplined parameterized programming rules, DBLP automatically canonicalizes the lower problem into conic form and constructs an equivalent single-level reformulation using the conic Karush-Kuhn-Tucker conditions. We relax the resulting complementarity constraint and use a gap continuation procedure to approximately solve a sequence of smooth nonlinear problems. We implement DBLP in the open-source Python package BLVPY, an extension of CVXPY for bilevel programming. We demonstrate the modeling and solution capabilities of BLVPY on a range of bilevel optimization problems from several application domains. The proposed framework and implementation allow users to specify and solve bilevel optimization problems within a few lines of code, without prior expertise in bilevel modeling and numerical optimization.",
  "abstract_shown": true,
  "affiliations": [],
  "article_type": null,
  "arxiv": "2609.00644",
  "author_total": 2,
  "authors": [
    {
      "name": "Hao Zhu"
    },
    {
      "name": "Joschka Boedecker"
    }
  ],
  "bibtex": "https://research.draconitic.com/paper/349dpjp0t21v1.bib",
  "cited_by": 0,
  "doi": "10.48550/arxiv.2609.00644",
  "fulltext_url": null,
  "id": "349dpjp0t21v1",
  "issns": [],
  "landing_url": "https://arxiv.org/abs/2609.00644",
  "language": null,
  "licence": "CC-BY-4.0",
  "licence_label": "CC BY 4.0",
  "licence_source": "article",
  "licence_url": "http://creativecommons.org/licenses/by/4.0/",
  "metadata_licence": "CC0-1.0",
  "native_subjects": [
    [
      "arxiv",
      "cs.CE"
    ],
    [
      "arxiv",
      "cs.LG"
    ],
    [
      "arxiv",
      "cs.MS"
    ],
    [
      "arxiv",
      "math.OC"
    ],
    [
      "openalex",
      "2612|Advanced Optimization Algorithms Research"
    ]
  ],
  "openalex": "W7206183648",
  "pdf_url": "https://arxiv.org/pdf/2609.00644",
  "pmcid": null,
  "pmid": null,
  "published": "2026-10-01",
  "publisher": null,
  "ris": "https://research.draconitic.com/paper/349dpjp0t21v1.ris",
  "sources": [
    {
      "first_seen": "2026-10-30T12:26:07Z",
      "native_id": "2609.00644",
      "source": "arxiv",
      "url": "https://arxiv.org/abs/2609.00644"
    }
  ],
  "subjects": [
    {
      "field": "mathematics",
      "origin": "arxiv:math.OC",
      "subfield": "optimisation-control"
    }
  ],
  "title": "Disciplined Bilevel Programming",
  "title_text": "Disciplined Bilevel Programming",
  "type": "preprint",
  "updated_at": "2026-10-30T12:26:07Z",
  "url": "https://research.draconitic.com/paper/349dpjp0t21v1",
  "venue": "arXiv",
  "versions": []
}