Курсовая работа: Системы принятия решений

Число

Число

Число

Базисная переменная m

Число

Число

Число

Число

Число

Число

Об оптимальности решения судят по значению коэффициентов в уравнении целевой функции. Решение оптимально только когда все значению коэффициентов в уравнении целевой функции не положительные.

Чтобы найти оптимальное решение необходимо переходить к новому базису так, чтобы коэффициентов в уравнении целевой функции стали отрицательными или нулевыми.

Переход к новому базису осуществляют по правилу прямоугольника по средствам разрешающего столбца и разрешающей строки. Разрешающий столбец берут тот, в котором коэффициентов в уравнении целевой функции больше нуля. Разрешающею строкой берут ту, в которой отношение свободного члена к числу в соответствующей строке и разрешающем столбце минимально и не отрицательно.

В итоге после нескольких переходов к новому базису мы приходим к оптимальному решению: все свободные переменные равны нулю, все базисные переменные и целевая функция равны свободным членам.

2.4 Описание программы

2.4.1 Абстрактный класс симплекс таблицы

Программа имеет на главной форме таблицу. Она предназначена только для ввода начальных условий задачи, а все вычисления проводятся в специальном созданном классе TSimplex, который интегрирует в себе как данные о состоянии таблицы, так и методы для обработки этих данных. Таким образом, все вычисления выполняются в пределах данного класса и чтобы описать принцип и алгоритм работы программы надо описать этот класс.

2.4.2 Свойства класс TSimplex

Класс TSimplex имеет следующие свойства:

– n, m: integer – соответственно число свободных и число базисных переменных;

– w, b:array of extended – массивы, содержащие соответственно свободные члены и коэффициенты целевой функции;

– wb: extended – свободный член целевой функции;

– FTit, BTit: array of string – соответственно названия свободных и базисных переменых;

– a: array of array of extended – матрица коэффициентов линейных функций базисных переменых;

– result: TNextResult – результат последней операции;

– ir, jr: integer – соответственно разрешающая строка и разрешающий столбец;

– history: TStack – история о предыдущих операциях, позволяет вернуться назад.

Для полной ячности надо описять тип TNextResult и класс TStack.

Тип TNextResult описывает результат последней операции.

К-во Просмотров: 429
Бесплатно скачать Курсовая работа: Системы принятия решений