Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About future improvements #3

Open
rlacjfjin opened this issue Aug 4, 2022 · 3 comments
Open

About future improvements #3

rlacjfjin opened this issue Aug 4, 2022 · 3 comments

Comments

@rlacjfjin
Copy link

Hi,

first of all, thanks a lot for sharing.
Regarding the improved part you mentioned in your report, is it in the work plan in the near future?
I would like to know how to make the project support 3D rotation, can you give me some advices?

Thanks,
Zhe.

@Wadaboa
Copy link
Owner

Wadaboa commented Aug 6, 2022

Hi,

Thanks for opening the issue. Unfortunately, we currently do not have any plans to work on "future improvements" mentioned in the slides. Will keep you posted in this issue in case we decide to extend the current code-base.

As for supporting rotation, you can easily extend the current approach to support rotation on the z axis, by introducing boolean variables in the subproblem (0 meaning original position and 1 meaning 90 degree rotation). Supporting rotation on the x and y axes is more complicated, as that would imply possibly dealing with layers as well (since a rotation might imply a change in height). Anyways, supporting full rotations in a 3D bin packing problem is not straightforward, as it introduces many more decision variables and makes the problem even harder to solve; on top of that, we worked with superitems and layers, which further complicates integration with rotation. Still, if you want to give it a shot, you can start reading up this paper for example.

Let me know if you decide to go ahead with the implementation of rotation, it would be a nice addition to the repo.

Thanks,
Alessio.

@rlacjfjin
Copy link
Author

Thanks for your reply.
I'll look at your code first, and try to do what it does if I can.

Zhe

@raucal
Copy link

raucal commented Sep 7, 2023

I am also trying to achieve this goal. I do the maxrects with the rotation argument equal to True and I can find out if any cja can be placed on a lower stack if we rotate it. However, I cannot then exchange the width and depth values with each other since I get an error that the value of these attributes cannot be directly set.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants