Подскажите пожалуйста как реализовать данную задачу в excel!
Используя симплекс-метод ( поиск решения и т.д )
Требуется спроектировать сеть, которая должна обслуживать семь пунктов. Расстояния между пунктами приведены в таблице.
рис. 2.24
Вот решение на бумаге:
Из элементов матрицы выбираем минимальный - (D,С) = 4. Обводим выбранный элемент кружком.
рис. 2.25
Из оставшихся элементов выбираем минимальный - (D,E) = 8. Элемент обводим кружком. Чтобы выполнялось условие 2 пункты С и D не должны соединяться, поэтому элемент (Е,С) зачёркивается.
рис. 2.26
Из невыделенных и незачеркнутых элементов минимальным является (D,B). Этот элемент обводится кружком. Элементы (С,В) и (Е,В) зачёркиваются.
рис. 2.27
Минимальным элементом является (С,А) = 13. Элементы (В,А), (D,А) и (Е,А) зачеркиваются.
рис. 2.28
Из невыделенных и незачеркнутых элементов минимальным является (F,E) = 15. Элементы (F,A), (F,B), (F,C) и (F,D) зачёркиваются.
рис. 2.29
В последней строке минимальным элементом является (G,E) = 18. Обводим этот элемент, и получаем остов, связывающий все семь пунктов. Все остальные элементы вычеркиваются.
рис. 2.30
Длина минимального остова равна (С,А)+(D,B)+(D,С)+(Е,D)+(F,E)+(G,E) = 13+10+4+8+15+18 = 68.
themafia98 написал: Никак не могу найти информацию
Какую? Об алгоритмах построения? Так в инете об этом информации полно, например. Не очень верится, что это можно сделать поиском решения, но на VBA, только разобрать и реализовать алгоритм.
Андрей VG,я то понимаю как данную задачу решить , я ее решил на листочке , но по заданию в универе мне нужно реализовать ее в excel и те методы решения которые я пробовал не совпали с моим ответом =68.
Коллега, замкнутой линии быть не должно. Это задача следующего плана. Дан полносвязный неориентированный граф. Нужно построить остовное дерево, так чтобы сумма весов используемых рёбер была минимальна. Как пример точки а, в, с - это города, вес ребра - расстояние между парой городов. Нужно построить между городами дороги так, чтобы из любого города можно было попасть в любой город, но сумма длин дорог была бы минимальной. Вот, честно говоря, не вижу пути решения формулами или поиском решения этой задачи. Суть в чём, да можно выписать пары точек и вес ребра между ними. Отсортировать по возрастанию. И последовательно от минимума идти к максимуму. Но на каждой итерации нужно проверять, что на очередной добавленной по ребру вершине графа мы имеем возможность попасть из всех заданных вершин в первую добавленную таким способом вершину (принимаем первую вершину за корневую). Макросом по существующим алгоритмам это делается, но ТС - студент, решивший, что программирование ему не нужно.
Цитата
themafia98 написал: те методы решения которые я пробовал не совпали с моим ответом
А продемонстрировать и описать эти методы решения? Вдруг кто найдёт ошибку в рассуждениях и подскажет правильный путь?
UpdatedПо подначке Владимира (sokol92)), подниму тему. Частично решил. Частичность в том, что преобразование в таблицу весов рёбер и упорядочивание её по не убыванию сделал в Power Query. Остальной расчёт формульный (лист "Расчёт"). Но вот как чисто формульно преобразовать матрицу смежностей в таблицу весов рёбер, честно говоря, не знаю. Ну, можем мы через НАИМЕНЬШИЙ и номер требуемого наименьшего получить следующий вес ребра по порядку от меньшего к большему. И что? А как ещё по нему вывести в соседние ячейки имена узлов, которые соединяет данное ребро? (лист "Исходные"). Лажанулся я. Пусть имеем 4 вершины 3, a, b 5, c, d 7, a, c Дальше нет смысла, ребро а с с не будет учавствовать в остове И никто не подсказал, что хрень я нёс.
Андрей VG, Спасибо, т.е симплекс-методом через поиск решений это никак не сделать ? Вот что я пытался сделать ( алгоритм для неориентированного графа ) через поиск решения... но ответ не тот
Не могли бы вы пояснить как работает ваш документ?