Инфоурок Информатика Другие методич. материалыЛабораторная работа в Exсel. "Графы"

Лабораторная работа в Exсel. "Графы"

Скачать материал

ЛАБОРАТОРНАЯ РАБОТА
 «Нахождение  максимального потока на сети с помощью алгоритма Форда-Фалкерсона в электронных таблицах
Excel»

Построить максимальный поток от истока I к стоку S в сети, заданной графом (см. рис.1):


Рис.1

В скобках заданы пропускные способности ребер в направлении от меньшего номера вершины к большему и в обратном направлении.

Решение задачи:

Согласно алгоритму Форда-Фалкерсона:

1.      Строим произвольный начальный поток на сети.

2.      Находим подмножество А вершин, достижимых из истока I по ненасыщенным ребрам.

3.      Если S не принадлежит A, то построенный поток максимальный и задача решена. Если S принадлежит A, то переходим к пункту 4.

4.      Выделяем путь из I к S, состоящий из ненасыщенных ребер, и увеличиваем поток xij по каждому ребру этого пути на величину, равную min по всем ребрам (i,j) выделенного пути. После построения нового потока возвращаемся к пункту 2 алгоритма.

Реализация в Excel

В качестве начального потока выбираем, например, поток, проходящий по ребрам 1-3-5-6. Максимальная величина потока, который можно пропустить по этим ребрам, равна 2.

На чистом рабочем листе заполняем форму решения задачи. В ячейки B3:G8 заносим данные о пропускных способностях ребер сети.

Ниже строим матрицу  начального потока на сети.

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

Для заполнения  нижней части матрицы воспользуемся функцией ТРАНСП(массив).

Рис.2

Эта функция возвращает вертикальный диапазон ячеек в виде горизонтального и наоборот. Функция ТРАНСП должна быть введена как формула массива в интервал, который имеет столько же строк и столбцов, сколько столбцов и строк имеет аргумент массив.

Для заполнения столбца В13:В17 установите курсор в ячейку В13, введите формулу  = - ТРАНСП(C12:G12) и нажмите клавишу <ENTER> (знак <–> перед формулой вводится для того, чтобы матрица получилась антисимметричной).  В ячейке появится знак ошибки. Затем нужно выделить диапазон В13:В17, нажать клавишу <F2>, а затем клавиши <CTRL+SHIFT+ENTER>. В результате будет сформирован первый столбец матрицы потока. Остальные столбцы под нижней диагональю заполняются аналогично.

Ниже матрицы потока строим матрицу ненасыщенности ребер.

Для этого в ячейку В21 вводим формулу:

=B3:G8-B12:G17

После чего выделяем диапазон В21: G26, нажимаем клавишу <F2>, а затем клавиши <CTRL+SHIFT+ENTER>.

В результате третья матрица заполняется значениями, равными «недогрузке» ребер.

Находим ненасыщенные пути. Для этого в матрице ненасыщенности выбираем ненулевые элементы:

1|| 2, 3, 4

2|| 3, 4, 5

3|| -

4|| 5, 6

 

Таким образом, можно выбрать путь 1-2-4-6 с максимально возможным  объемом дополнительного груза, равным 4.

 

Рис.3

Для удобства можно выписать процедуру поиска ненасыщенного пути справа от матрицы ненасыщенности ребер:

 

Рис. 4

Выделяя потоки по выбранным ребрам каким-либо цветом, легко найти их минимум (см. рис.4). Строим справа матрицу дополнительного потока по аналогии с матрицей начального потока.

Ниже строим матрицу нового потока №1 путем суммирования матриц начального и дополнительного потока (не забываем, что формулы вводятся как формулы массива). Снова находим матрицу ненасыщенных ребер для потока №1.

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

Задание для самостоятельной работы

 

Учащиеся выбирают номер варианта согласно списку.

Сеть содержит 10 вершин (рис. 5). Пропускные способности дуг заданы таблицей. Найти максимальный поток между вершинами 1 и 10 (номера вариантов указаны в верхнем левом углу таблицы).

Рис. 5

 

 

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Лабораторная работа в Exсel. "Графы""

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Корреспондент

Получите профессию

Менеджер по туризму

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

Реализация в Excel

В качестве начального потока выбираем, например, поток, проходящий по ребрам 1-3-5-6. Максимальная величина потока, который можно пропустить по этим ребрам, равна 2.

На чистом рабочем листе заполняем форму решения задачи. В ячейки B3:G8 заносим данные о пропускных способностях ребер сети.

Ниже строим матрицу  начального потока на сети.

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

Для заполнения  нижней части матрицы воспользуемся функцией ТРАНСП(массив).


 

Эта функция возвращает вертикальный диапазон ячеек в виде горизонтального и наоборот. Функция ТРАНСП должна быть введена как формула массива в интервал, который имеет столько же строк и столбцов, сколько столбцов и строк имеет аргумент массив.

Для заполнения столбца В13:В17 установите курсор в ячейку В13, введите формулу  = - ТРАНСП(C12:G12) и нажмите клавишу <ENTER> (знак <–> перед формулой вводится для того, чтобы матрица получилась антисимметричной).  В ячейке появится знак ошибки. Затем нужно выделить диапазон В13:В17, нажать клавишу , а затем клавиши . В результате будет сформирован первый столбец матрицы потока. Остальные столбцы под нижней диагональю заполняются аналогично.

Ниже матрицы потока строим матрицу ненасыщенности ребер.

Для этого в ячейку В21 вводим формулу:

=B3:G8-B12:G17

После чего выделяем диапазон В21: G26, нажимаем клавишу , а затем клавиши .

В результате третья матрица заполняется значениями, равными «недогрузке» ребер.

Находим ненасыщенные пути. Для этого в матрице ненасыщенности выбираем ненулевые элементы:

1|| 2, 3, 4

2|| 3, 4, 5

3|| -

4|| 5, 6

 

Таким образом, можно выбрать путь 1-2-4-6 с максимально возможным  объемом дополнительного груза, равным 4.

 


 

Для удобства можно выписать процедуру поиска ненасыщенного пути справа от матрицы ненасыщенности ребер:

 

 

 

Выделяя потоки по выбранным ребрам каким-либо цветом, легко найти их минимум . Строим справа матрицу дополнительного потока по аналогии с матрицей начального потока.

Ниже строим матрицу нового потока №1 путем суммирования матриц начального и дополнительного потока (не забываем, что формулы вводятся как формулы массива). Снова находим матрицу ненасыщенных ребер для потока №1.

 

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

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 123 материала в базе

Скачать материал

Другие материалы

Мультимедийный урок с применением ЭОР по теме "Относительные, абсолютные и смешанные ссылки в электронных таблицах"
  • Учебник: «Информатика (изд. "БИНОМ. Лаборатория знаний")», Угринович Н.Д.
  • Тема: 4.2. Электронные таблицы
  • 23.06.2015
  • 993
  • 3
«Информатика (изд.

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 23.06.2015 5069
    • DOCX 929.5 кбайт
    • 55 скачиваний
    • Рейтинг: 5 из 5
    • Оцените материал:
  • Настоящий материал опубликован пользователем Орехов Павел Игоревич. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Орехов Павел Игоревич
    Орехов Павел Игоревич
    • На сайте: 8 лет и 10 месяцев
    • Подписчики: 1
    • Всего просмотров: 15887
    • Всего материалов: 8

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Экскурсовод

Экскурсовод (гид)

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в образовательной организации

Учитель математики и информатики

500/1000 ч.

от 8900 руб. от 4150 руб.
Подать заявку О курсе
  • Сейчас обучается 685 человек из 79 регионов
  • Этот курс уже прошли 1 809 человек

Курс повышения квалификации

Особенности подготовки к сдаче ЕГЭ по информатике и ИКТ в условиях реализации ФГОС СОО

36 ч. — 180 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 107 человек из 42 регионов
  • Этот курс уже прошли 579 человек

Курс повышения квалификации

Методы и инструменты современного моделирования

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 37 человек из 19 регионов
  • Этот курс уже прошли 69 человек

Мини-курс

Подростковые проблемы: индивидуальный подход

3 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 365 человек из 71 региона
  • Этот курс уже прошли 286 человек

Мини-курс

Искусственный интеллект: тексты и креативы

7 ч.

1180 руб. 590 руб.
Подать заявку О курсе
  • Сейчас обучается 240 человек из 62 регионов
  • Этот курс уже прошли 29 человек

Мини-курс

Современные направления в архитектуре

6 ч.

780 руб. 390 руб.
Подать заявку О курсе