Реализовано 3 метода:
Симплекс – метод представляет собой итерационный процесс, который начиная с некоторой угловой точки области допустимых решений, осуществляет переход к следующей угловой точки, смежной с предыдущей в направлении возрастания или убывания функции f(x). Переход осуществляется за счет обмена между базисной и свободной переменной. Ту свободную переменную, которая будет включаться в базис, назовем включаемой переменной, а ту базисную переменную, которая будет исключаться из базиса, назовем исключаемой переменной.
Для нахождения исходного опорного и в последствие оптимального данной задачи используется двухэтапный метод. Процесс нахождения оптимального решения разбивается на 2 этапа. Первый этап – нахождение исходного опорного решения. Вводятся искусственные переменные, записывается новая целевая функция, равная сумме искусственных переменных. Если в оптимальном решении вспомогательной задачи все искусственные переменные вышли из базиса, то найдено исходное опорное решение для исходной задачи. Если хотя бы одна искусственная переменная осталась в базисе, то допустимых решений исходная задача не имеет. Если вспомогательная задача неразрешима, то неразрешима и исходная задача. Второй этап – нахождение оптимального решения. Используя исходное опорное решение, найденное на первом этапе, с помощью симплекс-метода находим оптимальное решение исходной задачи.
Так как исходная задача является полностью целочисленной рассмотрим метод Гомори для полностью целочисленной задачи. Исходя из этого условия необходимо потребовать, чтобы коэффициенты всех ограничений в исходной задаче были целыми числами. В основе метода Гомори лежит решение ослабленной задачи, то есть без учёта целочисленности переменных. Причём ослабленная задача решается симплекс-методом.
Оно работает! :)