GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Nivedha-Ramesh/Container-Loading-Problem: hybrid genetic algorithm for container loading problem

BranchesTags
Open more actions menu

Latest commit

 

History

15 Commits
15 Commits

Folders and files

NameName
Last commit message
Last commit date
Figures
Figures
 
 
PackingAlgorithm.py
PackingAlgorithm.py
 
 
README.md
README.md
 
 
Report.pdf
Report.pdf
 
 
Visualization.py
Visualization.py
 
 
boxes.py
boxes.py
 
 
create_dataset.py
create_dataset.py
 
 
input.json
input.json
 
 
main.py
main.py
 
 
requirements.txt
requirements.txt
 
 

Repository files navigation

A hybrid multi-objective genetic algorithm for the container loading problem

This repository showcases a unique approach to solving the container loading problem, a challenge commonly faced in industries related to shipping and storage. Here, we aim to pack a container as efficiently as possible, focusing on fitting the most boxes, maximizing the space used, and ensuring the packed items' total value is as high as possible.

We use a diploid chromosome structure to better organize and decide on the arrangement and orientation of boxes. This method is enhanced by a tweaked version of an existing packing algorithm, known as DBLF, which helps us place boxes in the most effective way.

By combining advanced genetic algorithms with a refined packing technique, we tackle the complex issue of packing boxes into a single container, striving for optimal space usage and value maximization.

For a detailed description of the methods and background have a look at the project report.

Getting Started

To get started with this project, clone this repository to your local machine.

Ensure you have Python installed on your system. This project is tested with Python 3.7+. You can check your Python version by running:

python --version

Install the required Python packages:

pip install -r requirements.txt

Creating a New Dataset

cd path/to/your/project
python create_dataset.py

Running the Algorithm

To run the packing algorithm with the provided dataset (input.json), execute the main.py script:

python main.py

The script will proceed to execute the packing algorithm, saving the visualizations as below.

3D Visualization of the True Solution True Solution

3D Projection of one of the Rank1 Solutions Rank 1 solution

Variation of Average Fitness Values over Generations Fitness Variation

Visualization of the Pareto Front Pareto Front

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

License

Distributed under the MIT License.

Contact

Nivedha Ramesh - [email protected]

About

hybrid genetic algorithm for container loading problem

Topics

container-loadingcontainer-loading-problemevolutionary-algorithmsgenetic-algorithmmultiobjective-optimizationnsga-ii

Resources

Readme
Activity

Stars

59 stars

Watchers

2 watching

Forks

15 forks
Report repository

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.