Processing math: 66%

Thursday, April 24, 2025

Revisiting a continuous facility location problem

I am revisiting here a problem from [1]:

We have n demand points and their locations. How many facilities do we need to service these customers? And where do we place them? We have a restriction: there is a maximum distance between customer and facility.   

Data

We randomly generated 75 demand points inside the [0,1]×[0,1] square. The maximum allowed distance between a demand point and a facility is 0.25. 

Random Demand Points

Wednesday, April 16, 2025

Nonconvex problem: local vs multistart vs global

In [1] a somewhat abstract non-convex problem is given:

min

This is a nonconvex objective with some linear constraints. Of course, the best way to attack a problem like this is to do some quick and dirty tests with global solvers designed to handle this type of model. As the constraints are linear, a solver like Cplex or Gurobi may be a good starting point (pun intended).

If you have access to a local NLP solver, it may not always be easy to find a good starting point. One possible approach is to use a multistart algorithm (some NLP solvers, like Baron and Knitro, have this built-in). This will not guarantee to produce a global solution (and often it doesn't), but at least we can prevent really bad solutions. There are some ways to construct a confidence interval, so we can say something probabilistic about the quality of the solution found this way. 

Tuesday, April 1, 2025

Towers of Hanoi: inventory and network formulation

The towers of Hanoi problem [1] is a famous puzzle demonstrating recursion. The task is to move a stack of disks from one peg to another. We can only move one disk at a time, and we need to obey the rule that larger disks can never be on top of a smaller disk. The moves for the 3 disk problem are: