New
Hexaly 13.0 is out!
Check it out
x
Hexaly
×
Products
Hexaly Optimizer
Mathematical optimization solver
Hexaly Studio
No-code mathematical optimization
Hexaly Modeler
Low-code mathematical optimization
Hexaly Cloud
Mathematical optimization as a service
Resources
Benchmarks
Examples
Customers
Pricing
Try for free
Contact us
Solutions
Route Optimization
Production Scheduling & Blending
Supply Chain Network Design
Workforce Scheduling & Routing
Simulation Optimization
Professional Services
Contact us
Customers
Developers
Get started
Installation & licensing
Quick start guide
Modeling features
Technical features
Guidelines
Example tour
APIs
Hexaly Modeler Reference
Python API Reference
C++ API Reference
C# API Reference
Java API Reference
Download
Doc center
Blog
Latest articles
Philippe Laborie presents Hexaly at the Scheduling Seminar
How The Grain solves production scheduling problems in minutes with Hexaly
Meet Hexaly at 2024 INFORMS Annual Meeting
Hexaly vs Gurobi on the K-Means Clustering Problem (MSSC)
Hexaly, Gurobi, CP Optimizer on the Simple Assembly Line Balancing Problem (SALBP)
Benchmarks
Customer stories
Announcements
Tutorials
Events
All articles
Company
About
Team
Join Us
Login
Contact us
Contact us
Login
Open menu drawer
This page is for an old version of Hexaly Optimizer. We recommend that you update your version and read the documentation for the
latest stable release
.
LocalSolver
Installation & licensing
Installation on Windows
System requirements
Installation
Licensing for: Free Trial, Free Academic, Desktop or Server licenses
Licensing for: Floating or Site licenses
For the token server
For each client machine
Alternative license locations
Testing
Uninstall LocalSolver
Installation on Linux
System requirements
Installation
Licensing for: Free Trial, Free Academic, Desktop or Server licenses
Licensing for: Floating or Site licenses
For the token server
For each client machine
Alternative license locations
Testing
Uninstall LocalSolver
Installation on macOS
System requirements
Installation
Licensing for: Free Trial, Free Academic, Desktop or Server licenses
Licensing for: Floating or Site licenses
For the token server
For each client machine
Alternative license locations
Testing
Uninstall LocalSolver
Python setup (optional)
Quick start guide
What is LocalSolver ?
First Model
Solving your first model with LocalSolver modeler (LSP)
Writing the model
Launching the model
Solving your first model in Python
Writing the model
Running the Python program
Running LocalSolver without pip
Solving your first model in C++
Writing the model
Compiling and running the C++ program
Solving your first model in C#
Writing the model
Compiling and running the C# program
Solving your first model in Java
Writing the model
Compiling and running the Java program
Modeling features
Mathematical modeling features
Decision variables
Boolean decisions
Floating-point decisions
Integer decisions
Set and list decisions
Constraints
Objectives
Table of available operators and functions
Multiobjective resolution
Lexicographic order
Phases
At operator
The 1-dimensional at operator
The multi-dimensional at operator
Jagged arrays
Pitfalls
Arrays must have a uniform dimension
Indices start at zero
Array overflows
In the APIs, an operator of type
O_Array
must be created
Piecewise operator
List and set variables
Creation operator
Setting and retrieving values
Operators on lists and sets
Unary and binary operators
N-ary operators
Operators specific to lists
Modeling with lists
Modeling with sets
Lambda expressions
Ranges
Lambda functions
Applying a lambda function to a range
Special case
External functions
Principles
Example
Pitfalls
Solver status & cinematic
Thread-safety
Performance issues
Memory management
Surrogate modeling
Principles
Example
Modeling guide for routing problems
The Traveling Salesman Problem (TSP)
The Prize-Collecting Traveling Salesman Problem (PCTSP)
The Capacitated Vehicle Routing Problem (CVRP)
The Prize-Collecting Capacitated Vehicle Routing Problem (PCCVRP)
The Capacitated Vehicle Routing Problem with Time-Windows (CVRPTW)
Multiple time-windows per customer
CVRP with preassignments
The Pickup and Delivery Problem (PDVRP)
CVRPTW with minimization of waiting time
TSP with draft limits (TSPDL)
CVRPTW with a fixed pause
CVRPTW with multiple pauses in time-windows
CVRPTW with regular pauses
Time-dependent CVRPTW
Other routing problems
Technical features
Retrieving solution status and values
Status of the solution
Values of numeric variables and expressions
Values of collection variables and expressions
Setting an initial solution
Infeasibility and inconsistency
Analyzing inconsistencies
Callbacks and events
LocalSolver Cloud
Get started
Architecture and security
Advanced configuration
Proxy configuration
Guidelines
Modeling principles
Distinguish decision variables from intermediate variables
Distinguish constraints from first priority objectives
Define your objective function
Debugging a model
Introduce constraints and objectives one by one
Inject a feasible solution as initial solution
How to migrate from MIP to LSP?
Decision variables and intermediate expressions
Using non-linear operators instead of linearizations
Remove useless constraints
Example tour
Toy
Principles learned
Problem
Program
Knapsack
Principles learned
Problem
Program
Curve Fitting
Principles learned
Problem
Data
Program
Facility Location (FLP)
Principles learned
Problem
Data
Program
Smallest Circle
Principles learned
Problem
Data
Program
Branin Function
Principles learned
Problem
Program
Max Cut
Principles learned
Problem
Data
Program
Hosaki Function
Principles learned
Problem
Program
Car Sequencing
Principles learned
Problem
Data
Program
Car Sequencing Color
Principles learned
Problem
Data
Program
Social Golfer
Principles learned
Problem
Data
Program
Steel Mill Slab Design
Principles learned
Problem
Data
Program
Bin Packing (BPP)
Principles learned
Problem
Data
Program
Capacitated Facility Location (CFLP)
Principles learned
Problem
Data
Program
Optimal Bucket
Principles learned
Problem
Program
Portfolio Selection Optimization Problem
Principles learned
Problem
Data
Program
K-Means Clustering (MSSC)
Principles learned
Problem
Data
Program
Quadratic Assignment (QAP)
Principles learned
Problem
Data
Program
Assembly Line Balancing (SALBP)
Principles learned
Problem
Data
Program
Flow Shop
Principles learned
Problem
Data
Program
Job Shop (JSP)
Principles learned
Problem
Data
Program
Job Shop Scheduling Problem with Intensity
Principles learned
Problem
Data
Program
Flexible Resource Constrained Project Scheduling Problem
Principles learned
Problem
Data
Program
Flexible Job Shop (FJSP)
Principles learned
Problem
Data
Program
Flexible Job Shop Scheduling Problem with Sequence-Dependent Setup Times (FJSP-SDST)
Principles learned
Problem
Data
Program
Open Shop Scheduling Problem
Principles learned
Problem
Data
Program
Stochastic Scheduling
Principles learned
Problem
Data
Program
Resource Constrained Project Scheduling Problem (RCPSP)
Principles learned
Problem
Data
Program
Traveling Salesman (TSP)
Principles learned
Problem
Data
Program
Known optimal solutions
Capacitated Vehicle Routing (CVRP)
Principles learned
Problem
Data
Program
Vehicle Routing with Time Windows (CVRPTW)
Principles learned
Problem
Data
Program
Pickup and Delivery with Time Windows (PDPTW)
Principles learned
Problem
Data
Program
Clustered Vehicle Routing (cluVRP)
Principles learned
Problem
Data
Program
Inventory Routing (IRP)
Principles learned
Problem
Data
Program
Split Delivery Vehicle Routing (SDVRP)
Principles learned
Problem
Data
Program
Time Dependent Capacitated Vehicle Routing Problem with Time Windows (TDCVRPTW)
Principles learned
Problem
Data
Program
Capacitated Arc Routing Problem (CARP)
Principles learned
Problem
Data
Program
Location Routing Problem (LRP)
Principles learned
Problem
Data
Program
Prize-Collecting Vehicle Routing (PCVRP)
Principles learned
Problem
Data
Program
Aircraft Landing
Principles learned
Problem
Data
Program
Movie Shoot Scheduling
Principles learned
Problem
Data
Program
Revenue Management
Principles learned
Problem
Program
Pooling
Principles learned
Problem
Data
Program
LocalSolverβs Modeler (LSP)
Quick tour of LocalSolverβs modeler
Programming style
Primitives types and assignments
Maps
Conditions
Loops
Iterated assignment
Functions
Built-in variables and functions
Parameters
Programming functions
Solving your first business problem
Reading input data
Modeling the problem
Parameterizing the solver
Writing solutions
Syntax and lexical analysis
Global structure
Encoding
Comments
Identifiers
Keywords
Literals
String literals
Escape sequences
Integer literals
Floating point literals
White spaces
Values and types
Standard & common types
Nil
Booleans
Integers
Floats
Strings
Maps
LSExpressions
Functions
Modules
Other types
Variables
Global variables
Local variables
Memory management
Expressions
Arithmetic expressions
Applied on numbers (integers or floats)
Applied on strings
Applied on LSExpressions
Other cases, other types
Relational expressions
Applied on numbers (integers or floats)
Applied on strings
Applied on LSExpressions
Applied on nil
Other cases, other types
Logical expressions
Applied on booleans
Applied on LSExpressions
Other cases, other types
Range expressions
Applied on integers
Applied on LSExpressions
Other cases, other types
Conditional (ternary) expressions
First argument is boolean
First argument is an LSExpression
Other cases, other types
Indexed expressions
Applied on maps
Applied on LSExpressions
Applied on modules
Other cases, other types
Member expressions
Applied on maps
Applied on modules
Other cases, other types
Type related expressions
Typeof operator
Is operator
Operator precedence & associativity
Map declaration
Statements
Assignment statements
Simple statements
Coumpound assignment statements
Link statements
Local assignment and local statements
Iterated assignment statements
If statements
For statements
Simple for-loops
Filtered for-loops
Compact for-loops
While/do-while statements
Continue statement
Break statement
Try-catch statement
Throw statement
With statement
Constraint/minimize/maximize statements
Pragma statements
modelingset
pragma
Functions
Function definition
Return statement
Function call
Variadic function call
Function manipulations
Lambda and closures
Limitations
Command line
Main mode
Enabling the main mode
Modeling and optimization in the main mode
Passing arguments
A complete example
Standard library
Builtin functions and variables
Core functions
Mathematical operators
Global variables
Deprecated functions
LocalSolver module
Module functions
String module
Map module
I/O module
Module functions
Attributes
Types
Charset module
Complete list of supported encodings
Constants
Module functions
Random module
Module functions
Types
Date/time module
Module functions
Datetime
Timespan
Date format
JSON module
Module functions
Behavior of the parser
Behavior of the writer
CSV module
Functions
Types
Options summary
Geodata module
Module functions
Points summary
Options summary
Examples
Technical requirements
Appendix
BNF Syntax
Python API Reference
LocalSolver
LocalSolver Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSArray Class
Summary
Instance methods
Special operators and methods
LSCollection Class
Summary
Instance methods
Special operators and methods
LSEvaluationPoint Class
Summary
Instance methods
LSExpression Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSExternalArgumentValues Class
Summary
Instance methods
Special operators and methods
LSExternalContext Class
Summary
Instance methods
Instance attributes
LSInconsistency Class
Summary
Instance methods
Special operators and methods
LSInterval Class
Summary
Instance methods
Special operators and methods
LSModel Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSParam Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSPhase Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSSolution Class
Summary
Instance methods
Instance attributes
LSStatistics Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSSurrogateParameters Class
Summary
Instance methods
Instance attributes
LSVersion Class
Summary
Instance methods
Instance attributes
LSError Class
Summary
Instance attributes
Special operators and methods
LSCallbackType Enumeration
LSErrorCode Enumeration
LSObjectiveDirection Enumeration
LSOperator Enumeration
LSSolutionStatus Enumeration
LSState Enumeration
Modeler
LSPFunction Class
Summary
Instance methods
Instance attributes
Special operators and methods
LSPMap Class
Summary
Instance methods
Special operators and methods
LSPModeler Class
Summary
Instance attributes
Instance methods
LSPModule Class
Summary
Instance methods
Special operators and methods
LSPReferenceScope Class
Summary
Special methods
C++ API Reference
LocalSolver
LocalSolver Class
Summary
Functions
LSArray Class
Summary
Functions
LSCollection Class
Summary
Functions
Overloaded operators
LSEvaluationPoint Class
Summary
Functions
LSExpression Class
Summary
Functions
Overloaded operators
LSExternalArgumentValues Class
Summary
Functions
LSExternalContext Class
Summary
Functions
LSInconsistency Class
Summary
Functions
LSInterval Class
Summary
Functions
LSModel Class
Summary
Functions
LSParam Class
Summary
Functions
LSPhase Class
Summary
Functions
LSSolution Class
Summary
Functions
LSStatistics Class
Summary
Functions
LSSurrogateParameters Class
Summary
Functions
LSVersion Class
Summary
Functions
LSException Class
Summary
Functions
LSArrayExternalFunction Interface
Summary
Functions
LSCallback Interface
Summary
Functions
LSExternalFunction Interface
Summary
Functions
LSCallbackType Enumeration
LSErrorCode Enumeration
LSObjectiveDirection Enumeration
LSOperator Enumeration
LSSolutionStatus Enumeration
LSState Enumeration
Modeler
LSPFunction Class
Summary
Functions
Overloaded operators
LSPMap Class
Summary
Functions
Overloaded operators
LSPMapIterator Class
Summary
Functions
LSPModeler Class
Summary
Functions
LSPModule Class
Summary
Functions
Overloaded operators
LSPValue Class
Summary
Functions
Overloaded operators
LSPFunctor Interface
Summary
Functions
LSPType Enumeration
C# API Reference
LocalSolver
LocalSolver Class
Summary
Instance methods
LSArray Class
Summary
Instance methods
LSCollection Class
Summary
Instance methods
Overloaded operators and indexers
LSEvaluationPoint Class
Summary
Instance methods
LSException Class
Summary
Instance methods
LSExpression Class
Summary
Instance methods
Overloaded operators and indexers
LSExternalArgumentValues Class
Summary
Instance methods
LSExternalContext Class
Summary
Instance methods
LSInconsistency Class
Summary
Instance methods
LSInterval Class
Summary
Instance methods
LSModel Class
Summary
Instance methods
LSParam Class
Summary
Instance methods
LSPhase Class
Summary
Instance methods
LSSolution Class
Summary
Instance methods
LSStatistics Class
Summary
Instance methods
LSSurrogateParameters Class
Summary
Instance methods
LSVersion Class
Summary
Static methods
LSCallback Delegate
LSLambdaFunction Delegate
LSExternalFunction Delegate
LSCallbackType Enumeration
LSErrorCode Enumeration
LSObjectiveDirection Enumeration
LSOperator Enumeration
LSSolutionStatus Enumeration
LSState Enumeration
Modeler
LSPFunction Class
Summary
Instance methods
LSPMap Class
Summary
Instance methods
LSPModeler Class
Summary
Instance methods
LSPModule Class
Summary
Instance methods
LSPReferenceScope Class
Summary
Instance methods
LSPValue Class
Summary
Instance methods
LSPFunctor Delegate
LSPType Enumeration
Java API Reference
Changelog
LocalSolver 12.5
LocalSolver 12.0
New modeling operators
Interval
Start
End
Length
API Changes
Python
C++
C#
Java
LocalSolver 11.5
CSV Module
API Changes
LSP
Python
C++
C#
Java
LocalSolver 11.0
Sort operator
Black-box optimization
External functions returning multiple values
API Changes
Python
C++
C#
Java
LocalSolver 10.5
LocalSolver cloud
New modeling operators
Cover
Find
API Changes
Python
C++
C#
Java
LocalSolver 10.0
Modeler API
JSON Module
Black-box optimization
API Changes
LSP
Python
C++
C#
Java
LocalSolver 9.5
External Functions
Black-box optimization
Lambda Functions
API Changes
LSP
Python
C++
C#
Java
LocalSolver 9.0
LocalSolver 8.5
API Changes
LSP
Python
C++
C#
Java
LocalSolver 8.0
API Changes
LSP
Python
C++
C#
Java
LocalSolver 7.5
API Changes
LSP
Python
C++
C#
Java
LocalSolver 7.0
API Changes
LSP
Python
C++
C#
Java
LocalSolver 6.5
LocalSolver 6.0
API Changes
LSP
Python
C++
C#
Java
LocalSolver
Docs
»
Changelog
»
LocalSolver 12.5
LocalSolver 12.5
ΒΆ