Mixed-integer linear programming solver

I have the following mixed-integer linear programming problem:

I have four track sections indicated by A,B,C,D and 10 time periods as described in the table below, where 1 denotes a maintenance action has been scheduled. Maintenance is is scheduled based on how fast a track section degrades, where each track section has a different degradation rate. For example, track section A degrades at a rate where maintenance is required every 4 time periods. However, track section B only requires maintenance every 3 time periods.

There is a fixed cost for sending out a maintenance crew and there is a unit cost per section of track maintained I want to minimise these costs through changing the maintenance schedule. The only real constraints are that you can only bring a maintenance action forward (you cannot delay a maintenance action). For example, for section B you can bring maintenance forward by maintaining it at time period 1 but you cannot delay it to time period 3. Also, if you bring maintenance forward then it brings the next maintenance action forward too. For example, if you maintain track B at time period 1 then the track will require maintenance again at time period 4 instead of time period 5.

I've been studying the matlab literature on MILP (particularly the sudoku problem). However, I am still non the wiser in formulating my constraints, to use with intlinprog. Is anyone aware of any similar examples that I could have a look at?

Any guidance would be much appreciated.

Answers (0)

Categories

Asked:

on 15 Feb 2017

Commented:

on 21 Feb 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!