Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TA_last_u3.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
2.69 Mб
Скачать
  1. Варіанти виконання Алгоритм виконання курсової роботи:

  1. Постановка задачі.

  2. Побудова моделі.

  3. Розроблення алгоритму.

  4. Доведення правильності алгоритму.

  5. Реалізація алгоритму.

  6. Аналіз алгоритму і його складності.

  7. Перевірка програми.

  8. Документування програми.

Приклад1.

Наведено приклад реалізації алгоритму на прикладі класичної задачі комівояжера.

  1. Постановка задачі.

Петро Коміренко — комівояжер; на його території 20 міст. Компа­нія по­вер­тає йому тільки 50% вартості ділових поїздок автомобілем. Петру відома вартість переїзду на авто між кожною парою міст на його території (тобто маємо матрицю вартостей розміром 20 рядків на 20 стовпчиків, елемент i,j якої становить вартість переїзду із міста i в місто j). Йому, звичайно, хотілось би зменшити свої дорожні витрати.

Щоб допомогти Петрові, не беручи до уваги характеристики окремих міст та їх по­ку­п­ців, потрібно знайти маршрут, що почи­нається і закінчується в його базовому місті та про­ходить по одному разу через усі інші міста на його території. Маршрут можна зобразити спи­с­ком, в якому кожне місто зустрінеться лише один раз, базове місто буде в списку пер­шим і останнім. Сума вартостей переїзду між кожними двома послідовними містами списку - це загальна вартість маршруту, зображеного списком. Маршрутів і відповід­но списків може бу­ти багато, а тому потрібно відібрати серед них список, що маєнайменшу загальну вартість.

  1. Побудова моделі.

Формулювання математичної моделі суттєво впливає на інші етапи. На сьогодні вибір моделі є швидше мистецтвом, ніж наукою, визначається досвідом. Існує низка корисних рекомендацій, яких варто притримуватись в процесі моделювання.

Спочатку, потрібно вибрати адекватну матема­тичну структуру, виходячи із її зручності і простоти для зображень і обчислень, корисності операцій, визначених на струк­турі, в плані розв’язання проблеми. Очевидно, для ефективного виконання цього етапу пот­ріб­ні знання стосовно можливо більшого набору структур.

Вибравши структуру, проблему треба переформулювати в термінах властивих струк­турі математичних об’єктів. Про вдалий вибір моделі свідчать: зручне зображення усієї важливої для проблеми інформації математичними об’єктами; існує матема­ти­чний об’єкт, що асоціюється з потрібним результатом; виявлені корисні відношення між об’єк­тами моделі; з моделлю зручно працювати тощо.

Для нашого прикладу видається зручним використовувати зважені графи. Для випадку п’яти міст матриця вартостей і зважений граф наведені відповідно на рис. 1, а і б.

Місто

1

2

3

4

5

1

-

1

2

7

5

2

1

-

4

4

3

3

2

4

-

1

2

4

7

4

1

-

3

5

5

3

2

3

-

Рис. 1. Проблема комівояжера з п’ятьма містами.

В термінах теорії графів мова йде про пошук циклу, до якого кожна вершина графу входить один і тільки один раз (назвемо такий цикл туром). Вартість туру визначається як сума ваг всіх його ребер. Наприклад, рис. 1, б вартість туру 1—5—3—4—2—1 становить 5+2+1+4+1=13. Потрібно знайти тур з найменшою вартістю.

На цьому етапі важливо також визначити аналогічні проблеми, що були розв’язані раніше. Часто проблеми, що розв’язуються, є модифікаціями раніше розв’язаних. Наша про­б­лема відома в літературі як класична задача комі­вояжера і є прикладом таких проблем, які дуже легко поставити й промоделювати, але дуже важко розв’язати.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]