-
Notifications
You must be signed in to change notification settings - Fork 1
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
RRP: Reduced Raster Points Calculation #1
Comments
I have only some additional data to add that might spur some thinking. In table 2 of the 3d paper, there is this entry: gcut1_3dr is defined in the file gcut1.txt which can be gotten from the zip file referenced at http://www.loco.ic.unicamp.br/files/instances/3duk_knapsack.zip. gcut1.txt contains. 10 The point of all this is that for the above data set, the number of discretization points is 92 and the number of raster points is 15. I was puzzled by the use of 's' as well. It seems to be used without definition in several of the algorithms. I had hoped that it had some special meaning in academic pseudo-code that would be apparent to someone who was more familiar with reading academic papers. I'm heading into a meeting... |
I just remembered I have something else to offer: There is a function called constructRasterPoints(...) here: That I'd started looking at and never really gotten any further than that. |
I think the s must have been copied from the Scheithauer paper, which I have just uploaded to the doc folder |
Eq 1 looks like the conic combination == discretization points https://en.wikipedia.org/wiki/Conical_combination L is the size of the bin dimension ( width, depth or height ) |
Eq 2 s in angle brackets is the largest conic combination point that is smaller than s |
Got it I think. In Eq 3 we are expected to substitute for angle bracket L-r angle bracket Eq 2 with L-r substitued for s. |
I will implement that and see what it looks like |
Implementation: Lines 1 to 44 in 31b78b1
For bin dimension 10 and item dimensions 5, 7 this gives
which looks very promising |
It seems that this is too aggresive. With bin 13 x 13 x 13 and item type 4 x 4 x4 we should be able to cut out 27 items, with cuts a 4, 8 and 12 in each dimension. However:
|
I've spent 15 minutes looking through the code and I'm not seeing any obvious bugs, and I agree with your reasoning that there should be 27 items. Despite that, I'm very impressed with today's progress! |
Thanks. Good to have a second pair of eyes on the code. |
The RRP code is apparently insufficiently aggressive. From paper: but RRP gives
It is a pity that the paper does not provide the 15 raster points they use. |
Apparently the problem is in DPP ( rather than RPP ) DP3UK |
I agree about the papers lack of working data-sets. Did you have a chance to look at the conic combination and raster point code in |
So, I am looking at the DDP algorithm As far as I can see, my code has faithfully implemented it Lines 23 to 41 in 9d30fb3
Yet this code produces just 67, 18, 19 points, while the paper says it should produce 92, 92, 92. |
Did you notice the clause at the top of the table that states 'considering rotations'? |
Allowing rotation would add a lot of points! |
I think many of the points would be duplicates. I think rotation is the only thing that could explain the fact that all three orientations have 92 points. |
Here is a manual check on the RRP algorithm implementation First, lets make the description in Scheithauer paper more understanable by ordinary human beings
For problem of 4 unit cube items in 13 unit cube bin
which is what the code I implemented produces. So the bug ( which cause only 8 items to be cut from the bin ) must be in DP3UK itself |
Indeed! So, let's skip all this mucking around with reduced raster points and simply remove duplicates from the discretization points! The results for item4cube_bin13cube are perfect
|
LOL! I was just writing that. It looks like there is some slight problem with RRP, but since RRP is just an optimization I think we can safely bypass it in the interests of moving on with the other algorithms. |
OK |
The akgorithm RRP is used to reduce the number of discretization points calculated by DDP.
I cannot find psuedo code for this.
The paper describes the RRP as:
L is the total length.
P is the discretization points
P with hat is the raster points
s ?????
I cannot see how to implement this. It looks like it simply converts the P points to the same number of points with values of how much smaller they originals are then the total length. There must be more to it than that.
And what is s?
The text was updated successfully, but these errors were encountered: