|
OFF: Подскажите книжки по комбинаторике | ☑ | ||
---|---|---|---|---|
0
Пенза58
25.09.13
✎
16:40
|
Подскажите книжки по комбинаторике, типа как Задача коммивояжёра, а то и так знал мало, а что помнил забыл.
|
|||
1
Пенза58
25.09.13
✎
16:44
|
Наверно все же не задача коммивояжёра, т.к. не с графами.
Ну типа как что положить в мешок с ограниченным объемом и ограниченным весом. |
|||
2
NS
25.09.13
✎
16:44
|
||||
3
Пенза58
25.09.13
✎
16:46
|
(2) Там примеры программного кода есть?
|
|||
4
NS
25.09.13
✎
16:48
|
(3) Зачем? Комбинаторика это раздел математики. Если понял теорию, то напишешь и программу.
|
|||
5
Зойч
25.09.13
✎
16:49
|
(3) читаешь книгу. понимаешь что за задача. гуглишь код
|
|||
6
Пенза58
25.09.13
✎
16:49
|
(4) Я могу легко на пальцах объяснить как в графе надо искать путь от точки, а в точку б.
Но чтобы программы написать, я долго сидел. |
|||
7
NS
25.09.13
✎
16:50
|
(6) Объясни. Как на графе нужно искать путь.
|
|||
8
Пенза58
25.09.13
✎
16:52
|
(7) Берешь и двигаешься по линиям графа.
|
|||
9
NS
25.09.13
✎
16:53
|
Кстати, за решение задачи о кратчайшем пути в графе методами комбинаторики, перебором, нужно кастрировать (зачеркнуто) отрезать руки.
|
|||
10
NS
25.09.13
✎
16:53
|
(8) Путем движения по линиям графа путь не найдется. Будешь двигаться туда-сюда.
|
|||
11
Mikeware
25.09.13
✎
16:55
|
дучше дайте готовое (пусть медленное) решение задачи коммивояжера на 7.7., а то писать лень. а проэкспериментировать хочется.
|
|||
12
Пенза58
25.09.13
✎
16:58
|
(9) Сейчас вопрос собственно не про графы.
|
|||
13
NS
25.09.13
✎
17:00
|
http://e-maxx.ru/algo/
Раздел комбинаторика, с примерами программ. |
|||
14
Пенза58
25.09.13
✎
17:00
|
(11) Да вроде код обычный, циклы, массивы.
На 1С переделать не сложно. Я в свое время с паскали или с с++, переделывал на вижул бейсик. |
|||
15
NS
25.09.13
✎
17:12
|
(1) wiki:Список_задач_о_ранце
Это "Многомерный рюкзак" Решается либо перебором, либо методами линейного программирования, либо методами динамического программирования и т.д. |
|||
16
Mikeware
25.09.13
✎
17:12
|
(14) да мне и с нуля написать не шибко сложно. просто лениво. вдруг есть у кого - посчитать несколько примеров, если уж будет полезно - тогда переписывать и оптимизировать... Пробег грузчиков между камерами посчитать хочу.
|
|||
17
Михаил Козлов
25.09.13
✎
17:15
|
(16) Опишите здесь содержательно задачу и Вашу формализацию.
|
|||
18
Пенза58
25.09.13
✎
17:18
|
(15) Да, про это говорил. Книжки с кодом и объяснением решения существуют?
|
|||
19
NS
25.09.13
✎
17:19
|
(18) Задачи о рюкзаке? Решения одномерного рюкзака с обсуждением есть на этом форуме. На 1С. Но надо искать.
Было обсуждение задачи раскладки по нескольким рюкзакам. |
|||
20
Mikeware
25.09.13
✎
17:22
|
(17) оно вам надо? :-)
Ну, если уж так надо: 1) есть матрица расстояний между холодильными камерами. 2) есть список камер, которые надо посетить (список товаров, с привязкой к камерам). 3) есть ограничения (если есть товары из 1 или 2 камеры, то их надо посетить в первую очерель). необходимо: подтвердить или опровергнуть, что последовательный обход камер будет равнозначен по времени (расстоянию) обхода, расчитанного через "задачу коммивояжера" |
|||
21
NS
25.09.13
✎
17:22
|
Многомерный рюкзак в принципе такая-же задача линейного программирования, только добавляются доп. неравенства.
Ну и вопрос, в случае одного мешка - что максимизируем? |
|||
22
йети
25.09.13
✎
17:22
|
я бы рекомендовал http://bookfi.org/book/556668
для вхождения в тему самый оптимальный вариант |
|||
23
NS
25.09.13
✎
17:25
|
(22) Ссылка на заблокированный по решению власти ресурс.
|
|||
24
йети
25.09.13
✎
17:30
|
(20) если есть ограничение на вместимость грузчика (предполагается периодические возвращения на базу), то рассчитанный маршрут будет экономичней, иначе расчет сводится к жадному алгоритму
|
|||
25
NS
25.09.13
✎
17:38
|
(24) Есть доказательство, что мало того что жадный алгоритм ошибается, более того - нельзя сверху ограничить его ошибку.
Теорема Сани-Гонзалеса. |
|||
26
vmlspb
25.09.13
✎
17:46
|
комбинаторику лучше по Виленкину изучать
http://www.alleng.ru/d/math/math175.htm |
|||
27
Михаил Козлов
25.09.13
✎
17:52
|
(20) Не понял, что такое последовательный обход.
В остальном, если не обращать внимания на 3), вроде как "задача коммивояжера" (если нужно вернуться в исходную точку). Здесь может быть специфика: если расстояния геометрические ( S(a,c)<=S(a,b)+S(b,c) ), то будет не общая задача коммивояжера. Если задача коммивояжера представляется адекватной, то про нее довольно много написано. В частности, может оказаться вполне работоспособным схема ветвей и границ, где в качестве оценки берется решение задачи о назначениях (несколько циклов вместо 1 в задаче о коммивояжере). Смотреть нужно скорее не учебники по комбинаторике, а то, что связано с алгоритмами решения задач о коммивояжере. Кроме того, Вы не написали, каков порядок числа камер: может быть можно и полным перебором. |
|||
28
Mikeware
25.09.13
✎
18:01
|
(27) ну да, если не учитывать ограничения - задача коммивояжера в чистом виде.
А вообще, наверное, легче просчитать все наборы маршрутов, и дергать их без обсчета, по индексу. |
|||
29
Mikeware
25.09.13
✎
18:01
|
(27) 14 камер
|
|||
30
NS
25.09.13
✎
18:02
|
(26) На Виленкина - первая ссылка в 2.
|
|||
31
NS
25.09.13
✎
18:03
|
Вторая ссылка - более поздний вариант.
|
|||
32
NS
25.09.13
✎
18:04
|
(29) 14! Маршрутов (если не надо возвращаться в начало) Тяжело будет их все запомнить.
|
|||
33
NS
25.09.13
✎
18:06
|
(28) А, ты имеешь в виду сохранить оптимальные маршруты для всех пар первоочередных камер?
|
|||
34
Михаил Козлов
25.09.13
✎
18:08
|
(32) Можно схему ветвей и границ с отсевом по оценке, хуже достигнутого рекорда. Для 14 задача коммивояжера должна решаться не слишком долго. Ограничение 3) в этой схеме достигается ограничением ветвления в начале.
|
|||
35
Михаил Сорокин
25.09.13
✎
18:09
|
Вот неплохой курс Станкевича, который читается в знаменитой ЛКШ:
http://www.intuit.ru/studies/courses/997/313/info (свободный) Также можно посмотреть разные дополнительные курсы. |
|||
36
Mikeware
25.09.13
✎
18:36
|
(32) по факту - ну чувствую, что можно без просчета каждого маршрута.
|
|||
37
NS
25.09.13
✎
19:37
|
(34) Те-же самые O(14!) в худшем случае.
|
|||
38
Михаил Козлов
25.09.13
✎
20:02
|
(37) Его еще надо придумать (нужно быть оптимистом).
Я давно отошел от этих дел: может быть, если матрица расстояний удовлетворяет неравенству треугольника дело не так плохо. |
|||
39
vde69
25.09.13
✎
20:09
|
Добрая половина комбинаторики использкет всякие стратегии типа
Строй и перестраивай. Для примера поищи стратегии триангулчции делона, там почти все есть |
|||
40
NS
25.09.13
✎
20:31
|
(38) Вроде из всех изменений - позволяет оценить максимальную ошибку для полиномиальных алгоритмов.
То есть хорошее решение можно получать быстро. |
|||
41
toypaul
гуру
25.09.13
✎
20:46
|
(35) спасибо за ссылку :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |