Uploaded image for project: 'OptaPlanner'
  1. OptaPlanner
  2. PLANNER-2312

Avoid random change move iterator bias towards "small" collection variables

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • optaplanner-core
    • None
    • 2021 Week 25-27 (from Jun 21), 2021 Week 28-30 (from Jul 12), 2021 Week 31-33 (from Aug 2), 2021 Week 34-36 (from Aug 23)
    • 1
    • Undefined
    • NEW
    • NEW

      If the random move iterator first randomly selects an employee and then randomly selects an index to move a given task to, then positions in larger task list variables have smaller chance of being selected than positions in smaller task lists:

      All possible target positions for a given moved task should have the same probability of being selected by the random move iterator.

       

      NOTE: navigable map is a nice-to-have optimization. The first implementation will use a for loop to identify the target employee based on a single random number. Leave a TODO note to try and benchmark the navigable map approach (also try with extremely large data sets that we don't have yet).

              jlocker Jiří Locker (Inactive)
              jlocker Jiří Locker (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: