java - Existing Algorithm for Scheduling Problems? -


let's want build function schedule 3 bus drivers drive in week following constraints:

  • each driver must not drive more 5 times per week
  • there must 2 drivers driving everyday
  • they rest 1 day each week (will not clash other drivers' rest day)

what kind of algorithm used solve problem this?

i looked through several sites , found these:

1) backtracking algorithm (brute force) 2) genetic algorithm 3) constraint programming 

frankly, these "culture shock" me have never learnt kind of linear programming in past. there 2 things want know:

1) algorithm best suit case scenario above?

2) simplest algorithm solve problem?

3) please suggest other algorithms can solve above problem.

first of discrete optimization problem, linear programming not idea (since meant continuous optimization). can still solve using linear programming (it become integer or mixed-integer program) exponentially heard (if input size small ok).

now comparison:

  1. brute force : worst.

  2. genetic: can not guarantee optimality. algorithm may not able solve problem.

  3. constraint programming: best in case (and in many discrete optimization problems). there super efficient implementation of in ibm ilog cplex solver (but is not free, free academia or testing though).


Comments

Popular posts from this blog

linux - Does gcc have any options to add version info in ELF binary file? -

android - send complex objects as post php java -

charts - What graph/dashboard product is facebook using in Dashboard: PUE & WUE -