-5.3 C
United States of America
Friday, February 21, 2025

Mathematical optimization for cargo ships


Each optimization drawback has three elements: variables (e.g., ships and ports), constraints on these variables (e.g., a ship can match solely so many containers onboard), and an goal operate to be minimized or maximized (e.g., maximize the variety of containers shipped). The variables and constraints are sometimes represented as a matrix during which the columns are the variables and the rows are the constraints.

A standard method to decompose such massive issues is column technology, during which solely a subset of the variables are thought-about at first, after which new variables — that’s, new columns — are generated to extra intently approximate the unique drawback. To assist handle this, we developed a software program library that analyzes the issue and predicts which columns are finest to generate. This library shall be open sourced by way of MathOpt, our mathematical programming framework.

With this in hand, we outlined two primary approaches to unravel the issue:

  1. Double Column Technology
    We thought-about community design and container routing as two coupled issues, every consisting of a major choice drawback (select the best choice) and a subsidiary technology drawback (determine cheap choices). We utilized a shortest-path algorithm to every pair of issues to generate cheap choices, adopted by a linear program (utilizing our linear programming solver, Glop) to decide on the perfect choices for every. We utilized the column technology method to each on the identical time, utilizing intermediate outcomes on every drawback to affect progress on the opposite. This double column technology method enabled us to seek out provably optimum options, nevertheless it solely scaled effectively to average sized issues.
  2. CP-SAT
    We then tried an implementation based mostly on constraint programming, utilizing our CP-SAT constraint programming solver. This additionally labored effectively as much as mid-sized networks, however didn’t scale to the worldwide delivery drawback.

These two approaches enabled us to seek out provably optimum options, however they solely scaled effectively to small and medium sized issues. To enhance their scalability, we utilized a heuristic technique utilizing two variants of native search during which we study neighborhoods round current options to seek out alternatives for enhancements.

  1. Massive neighborhood search
    We mounted components of the answer (e.g., “this vessel will go to Los Angeles on alternate Tuesdays”) earlier than making use of both of the strategies described above. This improves scalability by decreasing the search area.
  2. Variable neighborhood search
    We explored neighborhoods over each the community and the schedule. We parallelize the exploration and distribute it over a number of machines to judge many neighborhoods concurrently. This additionally improves scalability by limiting the search area, whereas additionally permitting us to include data from Operations Analysis and the delivery business.

With each of those approaches, we made use of incrementalism: locking down promising parts of an answer in order that we may begin from a recognized good resolution to make it higher.

Lastly, we additionally took into consideration transit occasions. Earlier makes an attempt to unravel this drawback did not take transit occasions into consideration, since they make the issue rather more tough to unravel. We discovered that inclusion of transit occasions considerably improved the answer high quality.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles