Алгоритм сортировки для плотника

Главная Форумы Задать вопрос Алгоритм сортировки для плотника

  • В этой теме 11 ответов, 3 участника, последнее обновление 6 лет назад сделано Семен.
Просмотр 12 сообщений - с 1 по 12 (из 12 всего)
  • Автор
    Сообщения
  • #7339 Score: 0
    Семен
    Участник
    5 pts

    Привет всем. Прошу подсказать алгоритм или может какой-нибудь источник знаний. Наверное подобные задачки являются классикой.
    Задача:
    Есть список досок различной длины, которые строитель на стройке должен напилить из досок длиной 6000 мм. Нужно вычислить количество необходимых к закупке досок длиной 6000 мм при условии рационального раскроя с минимизацией обрезков, а также желательно дать схему подобного раскроя.
    Пример:
    6000 (=) 2000 + 2000 + 1500, отход 500;
    6000 (=) 900 * 6 + 600, отход 0;
    6000 (=) 5800, отход 200;
    Итого три доски и 700 мм отходов.

    Буду рад любой помощи.

    #7340 Score: 0
    Семен
    Участник
    5 pts

    Ужас, я нагуглил, что это называется задачей одномерного раскроя и это имеет отношение к линейному программированию. Кажется, нужны библиотеки вроде cvxopt, pulp, scipy. optimize, octave и glpk. Кто-нибудь имеет опыт с чем-то подобным?

    #7341 Score: 0
    Александр
    Участник
    16 pts

    Я столкнулся с подобной задачей и решил её следующим универсальным способом:

    1. Я знаком с программой Астра раскрой,он позволяет в демонстрационной версии загружать из exsel по шаблону данные.
    2. Сделал в Revit 2018 параметр текстовый для материалов, Материал_Астра,назначил его всем семействам,которые буду раскраивать
    3. Для автоматизации наименования в Revit должны совпадать с наименованием Астра,сделал спецификации по шаблону загрузки в Астра.
    4. Выгрузил спецификации из проекта в exsel,затем загрузил в Астра 5,8,раскроил.Получил необходимое кол-во материала,стоимость,сортировку по материалу,длине,толщине.
    5. При закупе увеличил на 2 доски и 2 листа ОСБ,По результатам работ осталось 4 доски и 2 листа ОСБ.
    6. Делал расчет утепления фасада дома 1 этаж.3 стены,7 окон,1 дверь.

    Результатом доволен.

    Если схема устраивает, то качай Астра раскрой 5,8,назначай там материал,организуй шаблон загрузки.

    Для досок есть вариант проще:

    -в спецификации по доскам пишешь формулу, которая вычисляет кол-во досок по каждому экземпляру,потом сумма.

    С досками проще , их можно стыковать из обрезков.

    #7342 Score: 0
    Семен
    Участник
    5 pts

    Спасибо, приму к сведению эту Астру.

    А стыковать можно только обрешетку и тому подобное, а я каркасы пытаю.

    На практике у меня небольшие объёмы, так что считаю глазами в экселе с запасом на дрова. Задача больше учебная, любопытная тема – начал читать книжку про алгоритмы. Вот эту https://logic.pdmi.ras.ru/~kulikov/sites/default/files/algorithms_href.pdf

    #7348 Score: 0
    Семен
    Участник
    5 pts

    Алгоритмы я не осилил, за то узнал, как возможны многомерные шары)

    Для себя остановился на решении в Эксель по аналогии с этим: http://al-vo.ru/spravochnik-excel/linejnyj-raskroj-v-excel.html

    #7349 Score: 0
    Александр
    Участник
    16 pts

    Просмотрел,ужасно…Вы зря не просмотрели Астра 5,8 ,там в начале не совсем удобно работать, но потом результат очень приемлемый , даже в демо версии. Есть возможность рассчитать стоимость учитывая накладные расходы, вариант раскроя, к примеру трубы раскроя нет, но можно сделать аналогию с листовым материалом.

    #7618 Score: 0
    Семен
    Участник
    5 pts

    Конечно, ужасно.

    А вот Cutting 3 очень хорошо пошла! Всем советую

    https://rutracker.org/forum/viewtopic.php?t=1720423

    #7622 Score: 0
    Александр
    Участник
    16 pts

    Нашел в обход , вот ссылка

    http://maintracker.org/forum/viewtopic.php?t=1720423

    Пока не качал ,подскажите в этой программе можно делать обмен данными по деталям из exsel и обратно?

    Я пользую Астра, там это возможно. И в связке спецификация по шаблону Астры из Revit в Exsel,затем в Астру,затем раскрой.Анализ по листам и т.д.

    #7623 Score: 0
    Семен
    Участник
    5 pts

    Чтобы не мучаться с блокировками: https://chrome.google.com/webstore/detail/frigate-cdn-smooth-access/mbacbcfdfaapbcnlnbmciiaakomhkbkb

    Да, в екселе копирую, в каттинг вставляю. Про обратно – не знаю, так как использую каттинговский отчёт напрямую, он очень наглядный и исчерпывающий.

    #7649 Score: 0
    Khasan Mamaev
    Модератор
    186 pts

    Я немножко знаю модуль scipy. Где можно посмотреть решение задачи с его использованием?

    #7652 Score: 0
    Александр
    Участник
    16 pts

    Согласен, что тема потекла не в то русло…

    #7667 Score: 0
    Семен
    Участник
    5 pts

    Конкретно эту задачу не нашел. Тогда я это пытал: https://habrahabr.ru/post/330648/, но остановился на вышеназванной готовой программке

Просмотр 12 сообщений - с 1 по 12 (из 12 всего)
  • Для ответа в этой теме необходимо авторизоваться.