Linear Programing is used to extract the minimum or maximum of linear equations. The cool part about linear programing is that it can handle constraints over the input arguments.
An extension of LP. In these problems, at least one variable takes a discrete integer value rather than continuous.
The number of items like vehicles in an optimization problem can be represented with Mixed-integer LP.
- Almost all the LP libraries are written in C, Fortran, or C++ because it's computationally intensive.
- maximize:
z = 3x + 2y
- subject to:
2x + 2y < 10
x > 0
- Mixed-Integer: by imposing the idea that x should be discrete or integer, the LP becomes Mixed-Integer LP.
- independent variables or decision variables: x, y
- objective function, the cost function, or just the goal: z
- inequality constraints: 1, 2
- Infeasible Linear Programming problem: if no solution satisfies all the constraints.
- Unbounded LP problem: If the number of solutions is not finite.
- scipy
- PuLP
https://realpython.com/linear-programming-python/#installing-scipy-and-pulp
pip install -r requirements.txt
or
python -m pip install -U git+https://github.com/coin-or/pulp