Giter Club home page Giter Club logo

Comments (6)

torbir avatar torbir commented on August 16, 2024

I have run into the same issue...
The only work-around was changing the bin dimensions by removing decimals. For example, using bin 10.25 x 11.9 x 6.5 would not work but changing it to 10 x 12 x 7 would work (doing this for all boxes in suite). I've never had any issues with full increment bin dimensions, but when decimals are used it sometimes throws this error

from gbp.

gyang274 avatar gyang274 commented on August 16, 2024

@Haridut @tohpedo Have the bins and items loaded into data.table or just data.frame? We have tested packing with decimals box sizes with no issue.

from gbp.

gyang274 avatar gyang274 commented on August 16, 2024

@Haridut

I can run your example without issue. Test environment: MacOSX 10.14, R 3.6.1. Note, some large items cannot be fit into any test boxes - this was handled by giving tid = 0, and x, y, z all -1.

@tohpedo decimal box sizes.

library(gbp)

it <- data.table::fread("./error_order.csv")

bn <- data.table::data.table(
id = c("K01", "K02"), l = c(7.50, 11.25), d = c(6.25, 4.75), h = c(5.25, 2.25), w = c(10.00, 10.00)
)

sn <- gbp::bpp_solver(it = it, bn = bn)

sn$it
oid tid otid bid sku x y z l d h w
1: 9277 2 9277X2 K02 120357-5085 0 0.000 0.875 8.000 4.375 0.750 0.164000
2: 9277 3 9277X3 K02 77-56795 0 0.000 0.000 7.875 4.250 0.750 0.230000
3: 9277 2 9277X2 K02 77-59397 0 0.000 0.000 8.000 4.250 0.875 0.216000
4: 9277 1 9277X1 K01 CAB6FTCTOA-M1 0 2.375 0.000 4.125 1.750 4.125 0.152000
5: 9277 1 9277X1 K01 CAB6FTCTOA-M1 0 0.625 0.000 4.125 1.750 4.125 0.152000
6: 9277 0 9277X0 K01 IPD-389-BLK-V -1 -1.000 -1.000 10.625 7.250 0.750 1.062182
7: 9277 0 9277X0 K01 MOPHCHGSTRMBLK -1 -1.000 -1.000 8.000 4.250 6.875 3.390000
8: 9277 1 9277X1 K01 MQ722LL/A 0 4.250 0.000 6.180 1.880 3.380 0.868000
9: 9277 2 9277X2 K02 T21-6118 0 0.000 1.625 7.750 4.375 0.625 0.222000
10: 9277 1 9277X1 K01 ZAG200101350 0 0.000 4.250 7.125 4.250 0.625 0.142000
11: 9277 1 9277X1 K01 ZAG200101350 0 0.000 0.000 7.125 0.625 4.250 0.142000

from gbp.

Haridut avatar Haridut commented on August 16, 2024

Hi Guang and All,

Please make sure you use data.table::fread() instead of read.csv(), and then converting to data.table however silly or dumb it may sound, I stopped running into the sort error issue once I used a different read function.

from gbp.

gyang274 avatar gyang274 commented on August 16, 2024

Note to all:

Load the data.table into the environment, read and process data use data.table instead of data.frame. I heard several issues (sort error, incorrect results, etc.) due to people using data.frame, although the function convert everything to data.table at the first step.

The reason could be - when user didn't load the data.table into the environment explicitly, even the data.table class is assigned to the data.frame, some operations still follow the data.frame way. This is also the reason we had Depends on, instead of Imports of data.table.

from gbp.

torbir avatar torbir commented on August 16, 2024

Good to know. Thank you both @gyang274 @Haridut !!

from gbp.

Related Issues (10)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.