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

Covid demo constraint: inoculated constraints

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • None
    • 2020 Week 13-15 (from Mar 23)
    • 3
    • NEW
    • NEW

      After PLANNER-1924, add 2 new constraints:
      Any employee is inoculated if his/her covidRiskType is inoculated

      1) inoculated employees should only get covid ward shifts. 1000 soft penalty. (Not hard in case inoculation reaches high percentages)

      2) Load balancing of inoculated employees in covid wards.
      Filter all shifts of incoluated employeess in covid wards. The group them by shift hour (pitfall, there are multiple , then apply loadbalancing fairness on that total per hour.
      Do this without minimizing the usage of inoculated employees.
      Implementation: loadbalancing fairness:

      • On monday from 08:00-09:00: 2 innoculated
      • On monday from 09:00-10:00: 1 innoculated
      • On monday from 10:00-11:00: 0 innoculated
        penalize square root of (the sum of squares) = sqrt(2² +1² + 0²) * 1000 = sqrt(5) * 1000 = 2.123456 * 1000 = 2123
        sqrt(1² + 1² + 1²) * 1000 = sqrt(3) * 1000
        We need to avoid sqrt(1² + 1² + 0²) * 1000, because that's less inoculated working hours
        Add an extra constraint to maximize the innoculated hours, which soft outweighs the load balancing one.

              lpetrovi@redhat.com Lukáš Petrovický (Inactive)
              gdesmet@redhat.com Geoffrey De Smet (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: