atlas

Research map / Optimization / Optimizers

GLinSAT: The General Linear Satisfiability Neural Network Layer By Accelerated Gradient Descent

NeurIPS 2024 · Optimization › Optimizers · approach: Differentiating through embedded optimization · 0 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Proposes GLinSAT, a GPU-friendly, matrix-factorization-free neural network layer that enforces general bounded linear constraints by solving an entropy-regularized LP via its unconstrained dual with accelerated gradient descent.

Problem

Making batches of neural network outputs satisfy bounded general linear (including equality and negative-coefficient) constraints in a differentiable and GPU-efficient way.

Approach

Reformulate the output projection as an entropy-regularized LP whose Lagrange dual is an unconstrained convex problem with Lipschitz gradient, solved by adaptive primal-dual accelerated gradient descent using only matrix-vector products; backward pass via implicit differentiation with conjugate gradient.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
Use GLinSAT-Dense-Implicit instead of LinSAT-Sparse-500TSP-StartEnd with beam search · TSP-StartEnd, beam search (1/θ = 10⁻¹)mean tour length: 3.818 -> 3.811Helped
Use GLinSAT-Dense-Implicit instead of LinSAT-Dense-500TSP-Priority with beam search · TSP-Priority, beam search (1/θ = 10⁻¹)mean tour length: 3.947 -> 3.927Helped
Use GLinSAT-Dense-Implicit instead of LinSAT-Dense-100TSP-StartEnd training batch · TSP-StartEnd training batchprojection time: 0.278 -> 0.306Hurt
Use implicit rather than explicit backpropagation (ablation)GLinSAT dense on TSP-StartEnd · TSP-StartEnd training batchbackpropagation time: 0.240 -> 0.143Helped
Use implicit rather than explicit backpropagation (ablation)GLinSAT dense on TSP-StartEnd · TSP-StartEnd training batchbackpropagation GPU memory: 4.868 -> 53.23Hurt
Use GLinSAT-Dense-Explicit instead of LinSAT-Sparse-100partial graph matching · Pascal VOC Keypoint, unfiltered, 1/θ = 10⁻²mean F1: 0.618 -> 0.620Helped
Use GLinSAT-Dense-Explicit instead of OptNetpredictive portfolio allocation · Portfolio allocation, 1/θ = 10⁻¹mean Sharpe ratio: 2.553 -> 2.535Hurt
Use GLinSAT-Dense-Explicit instead of CvxpyLayerspredictive portfolio allocation · Portfolio allocation, 1/θ = 10⁻²mean Sharpe ratio: 2.600 -> 2.608Helped
Decrease 1/θ from 0.01 to 0.0005 (ablation)GLinSAT-Sparse-Implicit · Power system unit commitment validationfeasibility ratio: 86.23% -> 100%Helped
Replace the satisfiability layer with sigmoid (ablation)unit commitment training and validation · Power system unit commitment validationfeasibility ratio: 100% -> 0%Hurt

Surprising findings

Limitations

Experimental setup

Datasets: TSP dataset Pascal VOC Keypoint with Berkeley annotations predictive portfolio allocation dataset one-year provincial power system load data

Benchmarks: constrained TSP (TSP-StartEnd, TSP-Priority) partial graph matching with outliers (Pascal VOC) predictive portfolio allocation power system unit commitment

Metrics: GPU memory solution time mean tour length feasibility ratio F1 score Sharpe ratio average gap

Baselines: CvxpyLayers OptNet LinSAT Sigmoid Gurobi-LP

Builds on: LinSAT Sinkhorn algorithm OptNet CvxpyLayers adaptive primal-dual accelerated gradient descent

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy