Heuristic Methods for Minimizing Cut Bars and Using Leftovers from the One-dimensional Cutting Process
Project description
heuristictree
Heuristic Methods for Minimizing Cut Bars and Using Leftovers from the One-dimensional Cutting Process - TREE Heuristic.
Getting Started
Dependencies
You need Python 3.8 or later to use heuristictree. You can find it at python.org.
Installation
Clone this repo to your local machine using:
git clone https://github.com/omatheuspimenta/heuristictree
or
pip install heuristictree
Features
In this heuristic, the losses of the cutting process are concentrated on the smallest number of bars possible, using a tree structure, in order to become losses (unusable) into leftovers (usable).
Example
from heuristictree import tree as ht
n = 7
L = 30
l = [7, 9, 11, 14, 19, 21, 26]
d = [2, 3, 2, 2, 2, 1, 1]
left = loss = bar = 0
x = []
left,loss,bar,x = ht.tree(L=L, n=n, l=l, d=d)
Input and Parameters
- L: Size of bar to be cutting. (int)
- n: Number of Items to be cutting. (int)
- l: Lenght of items to be cutting. (list)
- d: Demand of items to be cutting. (list)
- smallitem: Size of small item. Default is the smallest item to be cutting. (int)
Output
- left: Leftover from the cutting process. (int)
- loss: Loss from the cutting process. (int)
- bar: Bar number used in the cutting process. (int)
- x: Cutting pattern. (list)
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
Citation
If you use this software in your work, please cite our paper. (soon)
License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.