Я пытаюсь создать алгоритм, который будет упаковывать правильные и неправильные треугольники разных размеров в прямоугольники заданного размера наиболее эффективным способом. Я пытаюсь создать схемы для резки фанерных деталей для zomes, чтобы минимизировать сумма материальных затрат, связанных со строительством.
Входы будут:
- Основание и высота каждого треугольника
- Ширина и высота разрезаемого материала.
Результатом будет диаграмма, которая выглядит примерно так:
Я прочитал математику, связанную с упаковкой, изучил существующие библиотеки и соответствующие теги stackoverflow, а также возился с matplotlib, но не смог придумать ничего, что легко применимо к этой задаче.
Я знаю, что 2D-упаковка бинов — это NP-сложная задача, поэтому я не ищу чего-то математически совершенного. Даже скромный прирост эффективности был бы чрезвычайно полезен.
https://www.hindawi.com/journals/mpe/2014/548957/< /а>
Эффективный алгоритм упаковки неправильных многоугольников
https://github.com/wbernoudy/packing-pythagorean-triangles https://github.com/shivamjgandhi/IsoscelesTriangleSim