|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
Коммивояжер05.01.2011, 22:11. Показов 14623. Ответов 11
Метки нет (Все метки)
Доброго времени суток!
Для полного графа и n <= 20 нужно написать программу для задачи коммивояжера за приемлемое время Какой алгоритм - возможен ли полный перебор, ветвей и границ или ? Спасибо за любую идею или ссылку!
0
|
|
| 05.01.2011, 22:11 | |
|
Ответы с готовыми решениями:
11
Коммивояжер (бродячий торговец) Коммивояжёр - или оптимизация пути. коммивояжер |
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 05.01.2011, 23:15 | |
|
1
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|||||||
| 06.01.2011, 00:47 [ТС] | |||||||
|
Спасибо! Теорию я знаю - в книжке Мудрова - хорошо рассказано. Есть интересные реализации - ищу их ввиду недостатка времени.
0
|
|||||||
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 06.01.2011, 00:51 | |
|
АТерентьев, так что нужно? Написать программу которая будет выполняться за приемлемое время? А какое тогда время приемлемое?
0
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
| 06.01.2011, 09:11 [ТС] | |
|
Да, нужна программа, я думаю минут 5 - это нормально. Я смотрю метод ветвей и границ - судя по тому, что посмотрел - вроде подходит. Предпочитаю C# , но не уверен, что это наиболее подходит в данном случае. Видел реализацию алгоритма Дейкстры на C++ - очень понравилось использование контейнеров типа векторов, векторов от векторов и множеств - очень компактно получилось и красиво. Главная проблема - время, поэтому искал готовое
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 06.01.2011, 10:26 | |
|
Готового у меня нет. Лучше поищите в интернете сами, там очень много разных рефератов, курсовых работ с готовыми программами даже есть. Лучше что там есть Вам вряд ли кто здесь напишет.
0
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
| 06.01.2011, 12:05 [ТС] | |
|
Сделаю - выложу. Все равно разбираться - что к чему . Вариант интересный есть.
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 06.01.2011, 13:12 | |
|
АТерентьев, Если честно меня немного смущает: n <= 20 (имею ввиду n равное 20) и 5 минут. Но все может быть... Если что-то найдете и выложите, то обязательно посмотрю.
0
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
| 06.01.2011, 14:09 [ТС] | |
|
Время - на вскидку сказал. Сейчас запустил на Паскале - для n=6 тестовый пример из книжки считает мгновенно. Прогу приложил с тестовым примером.
0
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
| 06.01.2011, 14:14 [ТС] | |
|
Добавил входной файл для примера из книжки Мудрова - для метода ветвей и границ
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 06.01.2011, 15:59 | |
|
АТерентьев, К сожалению с паскалем знаком очень поверхностно, можно сказать вообще "в первый раз вижу". Компилятора для паскаля не имею, и не умею с ним работать.
Ради интереса, загрузите такой тест: 20 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 0 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 2 2 0 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 3 3 3 0 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 4 4 4 4 0 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 5 5 5 5 5 0 6 7 8 9 0 1 2 3 4 5 6 7 8 9 6 6 6 6 6 6 0 7 8 9 0 1 2 3 4 5 6 7 8 9 7 7 7 7 7 7 7 0 8 9 0 1 2 3 4 5 6 7 8 9 8 8 8 8 8 8 8 8 0 9 0 1 2 3 4 5 6 7 8 9 9 9 9 9 9 9 9 9 9 0 0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 1 1 1 1 0 2 3 4 5 6 7 8 9 2 2 2 2 2 2 2 2 2 2 2 2 0 3 4 5 6 7 8 9 3 3 3 3 3 3 3 3 3 3 3 3 3 0 4 5 6 7 8 9 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 5 6 7 8 9 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 0 6 7 8 9 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 0 7 8 9 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 0 8 9 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 0 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 0 И напишите сколько по времени получилось?
0
|
|
|
25 / 24 / 18
Регистрация: 16.10.2009
Сообщений: 1,163
|
|
| 06.01.2011, 18:39 [ТС] | |
|
Я по диагонали поставил 30000 - это аналог бесконечности, т.е. нет дуг, замкнутых на себя.
Посчитала мгновенно. Ответ: Кратчайший цикл - 1 11 10 12 9 13 8 14 7 15 6 16 5 17 4 18 3 19 2 20 Его длина - 90 Вроде похоже на правду. Входные данные. 20 30000 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 30000 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 30000 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 30000 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 30000 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 30000 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 30000 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 30000 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 30000 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 30000 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 30000 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 30000 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 30000 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 30000 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 30000 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 30000 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 30000 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 30000 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 30000 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 30000
1
|
|
| 06.01.2011, 18:39 | |
|
Помогаю со студенческими работами здесь
12
Коммивояжер. Расчёт минимального пути Коммивояжёр, метод поиска в глубину
Определить, сможет ли коммивояжер обойти все клетки и вернутся в исходную клетку Определить маршрут, которым должен двигаться коммивояжер так, чтобы заключить максимально возможное число контрактов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает
Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|