Computing in Operations Research using Julia
arXiv:1312.1431 · doi:10.1287/ijoc.2014.0623
Abstract
The state of numerical computing is currently characterized by a divide between highly efficient yet typically cumbersome low-level languages such as C, C++, and Fortran and highly expressive yet typically slow high-level languages such as Python and MATLAB. This paper explores how Julia, a modern programming language for numerical computing which claims to bridge this divide by incorporating recent advances in language and compiler design (such as just-in-time compilation), can be used for implementing software and algorithms fundamental to the field of operations research, with a focus on mathematical optimization. In particular, we demonstrate algebraic modeling for linear and nonlinear optimization and a partial implementation of a practical simplex code. Extensive cross-language benchmarks suggest that Julia is capable of obtaining state-of-the-art performance.
Source code included in supplement
References in corpus (1)
Cited by in corpus (45)
- JuMP: A Modeling Language for Mathematical Optimization
- A Robust Approach to Chance Constrained Optimal Power Flow with Renewable Generation
- Convex Relaxations of Chance Constrained AC Optimal Power Flow
- Measuring Sample Quality with Stein's Method
- Julia: A Fresh Approach to Numerical Computing
- A Two-Step Linear Programming Model for Energy-Efficient Timetables in Metro Railway Networks
- Non-ideal Linear Operation Model for a Li-ion Battery
- Sparse Regression: Scalable algorithms and empirical performance
- Outer Approximation With Conic Certificates For Mixed-Integer Convex Problems
- Sparse Classification: a scalable discrete optimization perspective
- Linear Response Methods for Accurate Covariance Estimates from Mean Field Variational Bayes
- Extended Formulations in Mixed-integer Convex Programming
- Connectivity in Interdependent Networks
- New solution approaches for the maximum-reliability stochastic network interdiction problem
- Improved finite-size key rates for discrete-modulated continuous variable quantum key distribution under coherent attacks
- Julia Implementation of the Dynamic Distributed Dimensional Data Model
- Certifiably Optimal Sparse Inverse Covariance Estimation
- Fast and Robust Determination of Power System Emergency Control Actions
- Data Centers as Dispatchable Loads to Harness Stranded Power
- Using the Johnson-Lindenstrauss lemma in linear and integer programming
- Enhancing Distribution Resilience with Mobile Energy Storage: A Progressive Hedging Approach
- Grassland: A Rapid Algebraic Modeling System for Million-variable Optimization
- Picking Winners in Daily Fantasy Sports Using Integer Programming
- Physics-Informed Machine Learning Simulator for Wildfire Propagation
- Discrete Wasserstein Barycenters: Optimal Transport for Discrete Data
- Multistage Robust Mixed-Integer Optimization Under Endogenous Uncertainty
- NLOptControl: A modeling language for solving optimal control problems
- Data-driven Heuristics for DC optimal transmission switching problem
- Embedding Formulations and Complexity for Unions of Polyhedra
- Chance Constrained Optimal Power Flow with Curtailment and Reserves from Wind Power Plants
- DistributedFBA.jl: High-level, high-performance flux balance analysis in Julia
- The Maximum Matrix Contraction Problem
- Assortment Optimization under the Decision Forest Model
- A column-generation-based matheuristic for periodic train timetabling with integrated passenger routing
- Flexibility Management in Economic Dispatch with Dynamic Automatic Generation Control
- Compact Disjunctive Approximations to Nonconvex Quadratically Constrained Programs
- Chance-Constrained Optimization for Non-Linear Network Flow Problems
- A Unified Framework for Adjustable Robust Optimization with Endogenous Uncertainty
- Robust Inference with Variational Bayes
- Random projections for linear programming
- Branch-and-Price for a Class of Nonconvex Mixed-Integer Nonlinear Programs
- Proximal Distance Algorithms: Theory and Examples
- Random projection of Linear and Semidefinite problem with linear inequalities
- NQCDynamics.jl: A Julia Package for Nonadiabatic Quantum Classical Molecular Dynamics in the Condensed Phase
- A Julia implementation of Algorithm NCL for constrained optimization