Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовые по ОАУ / Первая частная задача синтеза оптимальной структуры .doc
Скачиваний:
69
Добавлен:
15.06.2014
Размер:
965.63 Кб
Скачать

1.4 Используемые программные средства

Данная программа не требует большого объема памяти для своего выполнения. Программа написана как Windows-приложениес не очень сложным дружественным интерфейсом. Кроме того, программа решает только одну задачу – задачу распределения задач между узлами в соответствии с выбранным критерием и ограничением.

Основной текст программы представлен в виде файла Unit1.pasи запускается вызовом файлаProject1.ехе.Исполняемый файл программы занимает около 450килобайт основной памяти. Основная программа вызывает в процессе своей работы один единственный модульUnit2.pas, который управляет дополнительным окном, необходимым для работы Project1.ехе.Сама программа написана в виде совокупности процедур и функций.

Для запуска программы необходимы следующие технические и операционные средства:

  • ПЭВМ, стандартной конфигурации, оснащенная манипулятором "мышь";

  • Оперативная память не менее 16Мб и свободного места на жестком диске не менее 500Кб,

  • Операционная система Windows 95и выше.

1.5 Вызов программы

1.5.1 Способы вызова программы

Для вызова программы можно воспользоваться одним из двух способов:

  1. Для запуска из среды Delphi 6.0. необходимо в начале загрузить проект (Project1.dpr), а затем выбрать команду Run из основного меню программного продуктаDelphiили нажать Ctrl+F9;

  2. Для запуска из системной оболочки Windowsнеобходимо выбрать файл Project1.ехе и нажать кнопкуEnterлибо два раза щелкнуть на выбранном файле левой кнопкой мыши.

1.5.2 Входные точки в программе

Для проведения вычислений необходимо ввести свои исходные данные. В данной программе существуют четыре точки ввода:

-количество задач;

-количество узлов;

-матрица времени;

-матрица затрат;

1.5.3 Сведения о методе

Для решения данного класса задач могут применяться следующие методы.

1) Методы линейного программирования (например, симплекс-метод). Использование этих методов может оказаться сложным из-за большого количества переменных (их количество равно I*J). Например, при распределении десяти задач между пятью элементами АС потребовалось бы 50 переменных.

2) Специализированные методы, разработанные специально для данных задач и обеспечивающие поиск точного оптимального решения. Недостатком этих методов является их низкая универсальность: незначительное изменение постановки задачи может

потребовать разработки полностью нового метода. Кроме того, эти методы требуют разработки достаточно сложных алгоритмов и программ.

3) Приближенные методы, позволяющие найти хорошее (но не всегда оптимальное) решение. При решении практических задач, имеющих большую размерность, применение этих методов может оказаться единственно возможным. Недостаток этих методов - отсутствие гарантии определения оптимального решения (т.е. наилучшего из всех возможных).

Наиболее удобным для решения данного класса задач является метод "ветвей и границ". Применительно к данной задаче он заключается в направленном движении по вершинам дерева, полученного путем фиксирования части переменных Xij(Xij= 0 или 1). Вершины первого уровня получают, поочередно закрепляя первую задачу за первым узлом, вторым и т.д., т.е. фиксируяX`ij= 1, дляj= 1, 2, 3,... приi= 1.

Вершины второго уровня получают, фиксируя X``ij= 1 дляj= 1, 2, 3,... приi= 2 и т.д.

Ветвление осуществляется с учётом ограничения:

Для каждой вершины находят оценку:

где i* - число рассмотренных уровней ветвления

Данный метод реализован в программе для поиска оптимального решения. (Delphi6)

Вторым методом, применяемым для решения задач данного класса, является метод Монте-Карло. Однако данный метод определяет решение близкое к оптимальному решению. Потому в данной программе не реализуется данный метод.