We offer this solution as:
Our software creates a heuristicly optimized solutions for the static problem (ie you can pack the items in any order).
It uses a genetically optimized neural network as its core.
Our algorithm could be modified to work for dynamic problems (eg where you only have (limited or no) control over the order of the items during packing or require a specific unpacking order).
Just ask us.
The cloud version is integrated into Google Sheets via it's own Add-On.
Our comprehensive web service API simplifies integration into existing systems.