<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <div class="moz-cite-prefix">On 18-03-14 09:24, Scott Danner wrote:<br>
    </div>
    <blockquote
cite="mid:CAOQce+AsGLauEn98+sc_g3ZYAin__uGMEcFLwv8Bse+YULP_Rg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>Hello,</div>
        <div><br>
        </div>
        <div>We have a resource allocation problem. Could this be solved
          with OptaPlanner?</div>
        <div><br>
        </div>
        <div>Here it is:</div>
        <div>There are N projects located in various places that need
          work done with machines (just one machine type for all machine
          work).</div>
        <div>Work can be parallelized, e.g. 6 work days can be done in 6
          calendar days by one machine or in 3 calendar days by two, or
          in 4 calendar days by 2 machines (one works 4, other 2).</div>
      </div>
    </blockquote>
    Take a look at these examples:<br>
    <br>
    Cloud Balancing<br>
    &nbsp; <a class="moz-txt-link-freetext" href="https://www.youtube.com/watch?v=xhCtuM-Hiic">https://www.youtube.com/watch?v=xhCtuM-Hiic</a><br>
    use as less machines as possible<br>
    <br>
    Project Job Scheduling<br>
    &nbsp; <a class="moz-txt-link-freetext" href="https://www.youtube.com/watch?v=_2zweB9JD7c">https://www.youtube.com/watch?v=_2zweB9JD7c</a><br>
    in case the work has dependencies on other work items<br>
    <br>
    Vehicle routing with Time Windows<br>
    &nbsp; <a class="moz-txt-link-freetext" href="https://www.youtube.com/watch?v=BxO3UFmtAPg">https://www.youtube.com/watch?v=BxO3UFmtAPg</a><br>
    When a work gets assigned to a machine, use shadow variables to
    capture when the work will be done.<br>
    See docs about "variable listeners"<br>
    <br>
    <blockquote
cite="mid:CAOQce+AsGLauEn98+sc_g3ZYAin__uGMEcFLwv8Bse+YULP_Rg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>How to best allocate machines to projects?</div>
        <div>Looking at planned project work, how many machines are
          needed for each calendar day? How many machines should we buy,
          and how many to rent, and when?</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>Details</div>
        <div><br>
        </div>
        <div>For each project, the work can &amp; must be done only in
          some selected calendar periods.</div>
        <div>Machine locations are always known.&nbsp;</div>
        <div><br>
        </div>
        <div>Machine costs:</div>
        <div>* moving from location A to location B (per km). Moving
          also takes time, and a machine can be moved a maximum amount
          of km per day.</div>
        <div>* operating (per day)</div>
        <div>* staying in a project location (per day)</div>
        <div>* staying in a hangar (per day)</div>
        <div>* being rented for one day from location L (total cost =
          transport from rent location to project location and back, and
          daily rent)</div>
        <div>* being purchased</div>
        <div><br>
        </div>
      </div>
    </blockquote>
    These are all just constraints, I don't see any special stuff there.<br>
    To make them easy to write, the domain classes will need a (shadow)
    variable that says when a work starts.<br>
    <blockquote
cite="mid:CAOQce+AsGLauEn98+sc_g3ZYAin__uGMEcFLwv8Bse+YULP_Rg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div><br>
        </div>
        <div>A machine also needs an operator, but for now that can be
          considered a single unit.</div>
        <div><br>
        </div>
        <div>Ideally, also take into accounting weather for each project
          location. Weather might be known with 2 weeks in advance. Just
          re-plan by blocking the rainy days for some projects?</div>
      </div>
    </blockquote>
    Yes, see docs on repeated planning.<br>
    <blockquote
cite="mid:CAOQce+AsGLauEn98+sc_g3ZYAin__uGMEcFLwv8Bse+YULP_Rg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>Thanks,</div>
        <div>Scott</div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a></pre>
    </blockquote>
    <br>
  </body>
</html>