|
Теория графов: аналоги задачи коммивояжера | ☑ | ||
---|---|---|---|---|
0
andrewalexk
23.08.22
✎
20:37
|
:)
можно ли свести к теории графов задачу об оптимальном расположении маленьких квадратиков х(i) на большом квадрате х(0)? |
|||
1
БигБаг
23.08.22
✎
21:00
|
Это вроде задача упаковки рюкзака.
|
|||
2
RomanYS
23.08.22
✎
21:10
|
(0) так задачу озвучь. Как минимум не понятны критерии оптимальности. У квадратиков есть вес?
|
|||
3
sqr4
23.08.22
✎
21:13
|
брутфорси
|
|||
4
PR
23.08.22
✎
21:52
|
(1) Причем здесь рюкзак?
Задача оптимального раскроя |
|||
5
Йохохо
23.08.22
✎
21:55
|
(4) при чем здесь раскрой если ТС про упаковку?
|
|||
6
PR
23.08.22
✎
21:58
|
(5) Где ты прочитал слово упаковка?
Я вот в (0) прочитал про маленькие и большие квадратики и это все, квадратики, замечу, а не кубики |
|||
7
andrewalexk
23.08.22
✎
22:36
|
:)
если взять квадратик как частный случай прямоугольника и мерность пространства = 2 то может и упаковка и рюкзака зы вес неважен |
|||
8
Garykom
гуру
23.08.22
✎
22:45
|
(0) Нет это задача раскроя
|
|||
9
Garykom
гуру
23.08.22
✎
22:45
|
(8)+ Задачи раскроя не относятся к комми или рюкзаку
|
|||
10
Garykom
гуру
23.08.22
✎
22:47
|
(9) тьфу задача раскроя не относится к коммивояжеру, это рюкзак/ранец
|
|||
11
Garykom
гуру
23.08.22
✎
22:48
|
(9)+ хотя должен уточнить что если раскрой производится разными инструментами то получается коммивояжер
|
|||
12
polosov
23.08.22
✎
23:11
|
||||
13
PR
23.08.22
✎
23:12
|
(7) Задача упаковки двухмерного рюкзак — это задача раскроя, но да, ничего не мешает называть эту задачу как угодно, например, задача поиска смысла во вселенной или задача максимизации изнасилования мозга окружающим
|
|||
14
БигБаг
23.08.22
✎
23:13
|
(7) Список вариантов задачи об упаковки рюкзака: https://ru.wikipedia.org/wiki/Список_задач_о_рюкзаке
|
|||
15
PR
23.08.22
✎
23:14
|
(14) Не мешай человеку, у него свой глоссарий и свои инструменты
|
|||
16
БигБаг
23.08.22
✎
23:15
|
(15) Можно проще назвать: задача о комбинаторной оптимизации. Не ошибетесь.
|
|||
17
PR
23.08.22
✎
23:16
|
(16) Не усложняй, просто задача
|
|||
18
БигБаг
23.08.22
✎
23:20
|
Но является ли это теорией графов, я наверняка не знаю. Теория графов это вроде подмножество комбинаторики.
|
|||
19
Guk
24.08.22
✎
00:01
|
(18) теория графов, это теория графов. при чем тут комбинаторика? комбинаторика вообще другой раздел математики...
|
|||
20
БигБаг
24.08.22
✎
00:42
|
(19) поиски по графу имеет комбинаторную размерность.
|
|||
21
andrewalexk
24.08.22
✎
07:07
|
(15) :) не я же начал вводить новые термины
|
|||
22
andrewalexk
24.08.22
✎
07:08
|
(20) :) тогда можно приплести высшую математику раздел матрицы и нео
|
|||
23
Йохохо
24.08.22
✎
08:53
|
(17) с ":)" есть только потребность рассказать, что нет просто задач
|
|||
24
АгентБезопасной Нацио
24.08.22
✎
08:55
|
Так что является критерием оптимальности?
|
|||
25
mistеr
24.08.22
✎
09:05
|
(24) Это часть задачи. Как обычно в жизни. :)
|
|||
26
RomanYS
24.08.22
✎
09:10
|
(24) наиболее вероятно критерием является вес пропорциональный площади квадратов, но ТС утверждает, что "вес неважен"
|
|||
27
Михаил Козлов
24.08.22
✎
09:47
|
(0) Т.к. задача коммивояжера - NP полная задача, то свести можно. Только зачем?
|
|||
28
andrewalexk
24.08.22
✎
10:39
|
(27) :) намекаешь что через матрицы проще?
|
|||
29
andrewalexk
24.08.22
✎
10:40
|
(26) :) ну квадраты это я неточно выразился - прямоугольники т.е. критерий - периметр и площадь
|
|||
30
Михаил Козлов
24.08.22
✎
10:53
|
(28) Сформулируйте задачу содержательно. Например, нужно материал размером ШхД нарезать на такие-то прямоугольники.
Или есть набор прямоугольников и полоса материала такой-то ширины. Нужно нарезать, минимизировав отходы. Такие задачи пытались решать с незапамятных времен. |
|||
31
RomanYS
24.08.22
✎
10:59
|
(29) >> периметр и площадь
озвучь уже задачу. |
|||
32
andrewalexk
24.08.22
✎
11:00
|
:)
a(i) х b(i)-> а(0) х b(0) оптимизация упаковки/раскроя/... |
|||
33
Михаил Козлов
24.08.22
✎
11:57
|
Наверное, прямоугольники можно еще и вращать (т.е. подходит b(i) x a(i))).
Попробуйте поискать в инете. Делал похожее давно (неявный перебор методом ветвей и границ) для раскроя нестандартных кровельных элементов. Результат был не ахти. Еще вопрос: размеры прямоугольников совсем свои для каждой задачи или более-менее стандартные? |
|||
34
СеменовСемен
24.08.22
✎
12:31
|
(33) такую задачу даже запросом решали
|
|||
35
andrewalexk
24.08.22
✎
14:06
|
(33) :) скажем так я упрости задачу - высота у всех одна- только вертикальное расположение
размеры в справочнике - могу тупо обработкой подобрать - их всего полтыщи но хотелось красиво а то блин столько в универе проходили а в 1с не пригодилось почти |
|||
36
Timon1405
24.08.22
✎
14:11
|
(34) да еще и в 3D https://infostart.ru/1c/articles/267268/
|
|||
37
Михаил Козлов
24.08.22
✎
14:12
|
(35) Верно ли понимаю, что нужно в прямоугольник заданных размеров накидать сколько можно прямоугольников (с одинаковой высотой) из массива, минимизировав отход?
Не понял насчет "...могу тупо обработкой подобрать" - подбирая по какому-то принципу? |
|||
38
Михаил Козлов
24.08.22
✎
14:17
|
(35) Статью в (36) имеет смысл глянуть, хотя в ней о сути алгоритма всего одна фраза. Для 2-мерного случая (особенно, если высота у всех одинаковая) жадный алгоритм может оказаться вполне приемлимым.
Попробуйте для своей задачи сформировать критерий упорядочивания. |
|||
39
andrewalexk
24.08.22
✎
14:21
|
(37) :)
да перебором что-то типа пока сумма х(i)<х(0) цикл потом +минимум по х(i+1)...х(к) |
|||
40
Михаил Козлов
24.08.22
✎
14:34
|
(39) Это похоже на жадный алгоритм в одномерном ранце (если сначала упорядочено по x(i) по убыванию).
Еще может быть важно, как будут кроить: может резать можно только на всю ширину (гильотина). |
|||
41
andrewalexk
24.08.22
✎
14:54
|
(40) :) можно по убыванию ... но еще есть подгруппы тематические ... прикину если не найду вариант в (12) и (14)
|
|||
42
Михаил Козлов
24.08.22
✎
20:10
|
(41) (12) - это просто о методах оптимизации. Вряд ли найдете подходящее для Вашей задачи, но не вредно.
В (14) подойдет разве что мультипликативный рюкзак - если раскрой возможен только прямыми сплошными резами. В (14) собственно, только формализация, про методы ничего не сказано. Вам скорее ближе задача раскроя (https://ru.wikipedia.org/wiki/Задача_раскроя). |
|||
43
andrewalexk
24.08.22
✎
20:55
|
(42) :) ну я с самого начала подозревал что хотя задача банальная вряд ли она формализована так как задача К.
зы кстати а есть средства программной реализации решения? там всего лишь нужно открыть изображение 0 и вставить туда изображение 1 в позицию [x;y] |
|||
44
Михаил Козлов
25.08.22
✎
08:42
|
(43) "... есть средства программной реализации решения" - решения чего? Вы задачу не сформулировали ни содержательно, ни формально.
Следующую фразу совсем не понял. |
|||
45
СеменовСемен
25.08.22
✎
09:27
|
Средств для решения задач раскроя полно
|
|||
46
Святофор
25.08.22
✎
10:44
|
(0) не думаю. граф это совокупность объектов (вершины) со связями между ними (ребра). а раскрой это комбинаторика или поиск с возвратом
|
|||
47
cViper
25.08.22
✎
11:02
|
(0) Похоже на Динамическое программирование - Dynamic Programming (DP)
|
|||
48
andrewalexk
25.08.22
✎
11:03
|
(44) :) формулировок несколько
ты просто не понял |
|||
49
andrewalexk
25.08.22
✎
11:06
|
(45) :) программных ... например есть же dll под 1с для работы с изображением?
|
|||
50
Михаил Козлов
25.08.22
✎
12:28
|
(49) Попросите решение из ссылки в (36). Зададите 3-й размер = 1 и вперед.
|
|||
51
andrewalexk
25.08.22
✎
14:38
|
(50) :) да не я сам напишу думал может есть формализация алгоритма
|
|||
52
АгентБезопасной Нацио
25.08.22
✎
14:43
|
(51) пока нет даже формализации задания...
|
|||
53
andrewalexk
25.08.22
✎
14:47
|
(52) :)
ну если тебе будет проще вместе с (44) то формализации нет - есть примерное описание задачи ну что мне маткад ставить чтобы создать формулу чтобы не было подобных постов? |
|||
54
АгентБезопасной Нацио
25.08.22
✎
15:06
|
(53) ну зачем маткад?
нужно просто нормально описывать. Типа: Дано: есть заготовка - квадрат треугольной формы диаметром X*Y Необходимо: разрезать на N кружков размерами V*W оптимальным способом. резка производится ножом по всей длине заготовки критерий оптимизации - минимальное количество резов вдоль длинной стороны квадрата... |
|||
55
Kassern
25.08.22
✎
15:21
|
" вдоль длинной стороны квадрата" - не подскажите, какая сторона у квадрата самая длинная?)
|
|||
56
Святофор
25.08.22
✎
15:22
|
любой квадрат всегда можно разделить на три неравные половины
|
|||
57
АгентБезопасной Нацио
25.08.22
✎
15:28
|
(56) у "квадрата треугольной формы диаметром X*Y" - каждая сторона всегда длиннее любой другой. по определению.
|
|||
58
bolobol
25.08.22
✎
16:34
|
(54) Это прям надо записать - занимательная задача для ребёнка: квадрат треугольной формы с диаметром... нарезать кружочками... ножом вдоль длинной стороны! Это будет дома шоу!
|
|||
59
Святофор
25.08.22
✎
16:36
|
(58) нож лучше убрать... будет кровопролитье
|
|||
60
bolobol
25.08.22
✎
16:43
|
Да. "Квадрат треугольной произвольной формы, диаметром 30 на 60%, нарезали зелёными кружочками вдоль длинной стороны волнистыми линиями. Требуется найти останки квадрата... и выбросить в ведро(?)".. т.к. критерии оптимальности мы ещё не проходили.
Докручиваем задачу, пожалуйста... |
|||
61
andrewalexk
25.08.22
✎
17:04
|
(54) :) я согласился с обозначением задача раскроя условно - ничего резать не надо и точного критерия нет
это было общее описание задачи |
|||
62
Kassern
25.08.22
✎
17:10
|
Это вопрос из серии: у меня есть таблица с данными, каким алгоритмом мне ее лучше отсортировать? Все так же абстрактно и не понятно для каких целей.
|
|||
63
andrewalexk
25.08.22
✎
17:31
|
(62) :) неважно для каких целей - в (7) все есть для формализации
|
|||
64
andrewalexk
26.08.22
✎
13:18
|
:)
по факту технически не было нужды усложнять простой проход после сортировки по размеру (с учетом дискретности по одному измерению) сводит задачу к 1 размерности и процент брака будет около 5% а если добавить второй проход для учета остатков то 3.5% |
|||
65
andrewalexk
02.09.22
✎
11:03
|
:)
кстати насчет так сказать программного раскроя по схеме в питоне есть библиотека pillow для работы с изображениями и почти нормально отрабатывает скрипт но есть странный глюк с ней работал кто-нить? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |