Module: LpSolver

Defined in:
lib/lpsolver.rb,
lib/lpsolver/model.rb,
lib/lpsolver/version.rb,
lib/lpsolver/solution.rb,
lib/lpsolver/variable.rb,
lib/lpsolver/exception.rb,
lib/lpsolver/constraint_spec.rb,
lib/lpsolver/linear_expression.rb,
lib/lpsolver/quadratic_expression.rb

Overview

LpSolver - A Ruby gem for solving Linear Programming (LP), Quadratic Programming (QP), and Mixed Integer Programming (MIP) problems.

This gem provides a Ruby DSL for building optimization models and interfaces with the HiGHS solver via its command-line interface.

Quick Start

require 'lpsolver'

model = LpSolver::Model.new
x = model.add_variable(:x, lb: 0)
y = model.add_variable(:y, lb: 0)

model.add_constraint(:budget, (x * 2 + y) <= 100)
model.minimize
model.set_objective(x * 3 + y * 5)

solution = model.solve
puts solution.objective_value  # => 12.0

See Also:

Defined Under Namespace

Classes: ConstraintSpec, Error, LinearExpression, Model, NotFoundError, QuadraticExpression, Solution, SolverError, Variable

Constant Summary collapse

VERSION =

The current version of the LpSolver gem.

Returns:

  • (String)

    The version string (e.g., “0.1.0”).

'0.1.0'