Skip to content

spykyvenator/highsv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

162 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Highsv

Is a graphical front-end for HiGHs linear model solving

Licence

highsv is licenced under the GPLV3 licence, a copy has been shipped with your distro, or you can view it here: gplv3

Project

is in early development at the moment, any help appreciated

Usage

syntax

Files should start with min or max. This is followed by the objective function's variables separated by either + or - and can end with an optional offset. Variables separation can be done with spaces, newlines, tabs and must contain either + or - so x1+x2 is the same as x1 + x2. Values should start either with a number or a . for the comma so .5 0.5 and 5 are all three correct. Variables must start with a letter and can contain letters, numbers, commas and slashes. The same variable can occur twice in the objective function or in a constraint, in that case the values are added together so 2x1 + x1 is the same as 3x1.

Separating the objective function from the constraints is st or subject to. The constraints are again variables written like in the objective function followed by a comparator (< or <= or =< or > or >= or => or = or ==) and the value compared against. Constraints are best separated by newlines but spaces or tabs will work just fine.

The constraints are optionally followed by end which marks the last line of the model. Everything after this will be ignored. End should be written at the beginning of a line, so no tabs or spaces can be in front of it.

Comments start with ! and end with newlines No multiplication mark can be used but values can be separated from the variable or written right next to it so both 1.1x1 and 1.1 x1 are correct. "min", "max", "end" and "st" or "subject to" have ignored case.

If this sounds complicated, maybe the example below can help you get started.

Example

max 0.5x1 + x2 + 1x2 + 4 ! this is a comment
st ! or "subject to"
0.5x1 < 2 ! 1/2 times x1 should be smaller than 2
x2 + x1 < 3
.123 x2 - 5 x1 <= 100
x2 >= 3
end
everything after end is ignored

Keybinds

  • CTRL + q: quit
  • CTRL + o: open file
  • CTRL + n: open new file
  • CTRL + w: close open window
  • CTRL + s: save open window
  • CTRL + r or CTRL + Return: solve open window

Installation

Windows:

Download the setup from releases You might get a pop up from windows flagging the setup as malware, select "More info" and then "Run anyway"

Linux:

Download the tar archive from releases Running the build/highsv should work (I only briefly tested this)

Build from source

You will need

all these except probably HiGHS are provided with your distro (Windows users can use MSYS2 and compile using clang64) Once these are installed simply running make should build the gtk app and copy it to ./lps

About

A graphical front-end for the HiGHs linear model solving library

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors