<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;"
      id="internal-source-marker_0.3138299362945236">Hi guys,<br>
      <br>
      In Planner, I am going to do some structural improvements on the
      selectors.<br>
      Below are some of the idea's on how to do that. All of these are
      ideas are still very volatile.<br>
      Feed-back is welcome, especially if you don't like a particular
      naming or semantic.<br>
      <br>
      <br>
      Global design objectives:</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">- 1) Make selectors and generic
      MoveFactories faster, scalable and use less memory: by optionally
      not generating all the moves</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">- 2) Make selectors and generic
      MoveFactories more configurable: filter on entities, variables,
      moveFilter, ...</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">- 3) Unify entity, variable and value
      selectors under the same system, to also make them faster,
      scalable, memory-efficient and more configurable</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;"></span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">Let's focus on 1) MoveSelector only for
      now, on terminology and semantics.</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">What does a MoveSelector need to have?</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;"></span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;"></span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;"></span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">Terminology of methods/attributes on
      MoveSelector. How would you name them?</span>
    <ul style="margin-top: 0pt; margin-bottom: 0pt;">
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">Iterator&lt;Move&gt; </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">moveIterator</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">
            iterates over all the moves in the selector, based on the
            configuration of the MoveSelector</span></li>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">long </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">moveSize</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;"> or </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">size</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">how
            many moves in this MoveSelector.</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">The
            MoveSelector interface probably doesn't need to expose this<br>
          </span></li>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">boolean </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">continuous</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Some
            value ranges, for example double x with (1.0 &lt; x &lt;
            2.0) are continuous.</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">For
              example, a value can be 1.23435455444.</span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">When
            true, then MoveSelector.size returns -1 or throws exception
            (because it is infinity really :)</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Not
            all features will be able to combine with continuous true.</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">If
              it's not compatible, it fails-fast during configuration.</span></li>
        </ul>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">boolean </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">cacheableBetweenSteps</span></li>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">enum </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">orderType</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">The
            order in which the moveIterator generates Moves</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">DEFAULT
            (or FROM_SOLUTION?)</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">not
              cached</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">The
                Moves are generated in real-time (at each move scope)</span></li>
            <ul style="margin-top: 0pt; margin-bottom: 0pt;">
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">A1, A2, A3, ... A9, B1, B2, ... F9</span></li>
            </ul>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">100%
              cached</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">The
                Moves are generated in advance (at each step scope) and
                iterated in generated order.</span></li>
            <ul style="margin-top: 0pt; margin-bottom: 0pt;">
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;"> A1, A2, A3, ... A9, B1, B2, ... F9</span></li>
            </ul>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Not
              compatible with continuous == true</span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">DECREASING_DIFFICULTY
            (experimental)</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">B1,
              B2, … B9, F1, F2, … F9, A1, A2 …, C9</span></li>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">This
              is really DEFAULT for the MoveSelector with
              DECREASING_DIFFICULTY for the entitySelector and
              DEFAULT/DECREASING_STRENGTH/... for the valueSelector<br>
            </span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">RANDOM_COMPLETE</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">The
              Moves are generated in advanced (at each step scope) and
              shuffled, so iterated in random order.</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">C2,
                B2, A7, E4, F3 ...</span></li>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Not
              compatible with continuous == true</span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">RANDOM_SCALABLE</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">The
              moves are generated in real-time (at each move scope)
              randomly.</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">C2,
                B2, A7, E4, C2 ...</span></li>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Will
              sometimes generate the same Move twice, before some other
              Move is generated once.</span></li>
        </ul>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">boolean </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">hasFiniteMoveSize</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Other
            names</span><span style="font-size: 15px; font-family:
            Arial; color: rgb(0, 0, 0); background-color: transparent;
            font-weight: bold; font-style: normal; font-variant: normal;
            text-decoration: none; vertical-align: baseline;">:</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">hasFiniteAmountOfMoves</span></li>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">knowsWhenAllMovesHaveBeenIterated</span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">true
            if moveIterator.hasNext() will ever return false</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">It's
            false in the following cases:</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">orderType
              == RANDOM_SCALABLE</span></li>
        </ul>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">boolean </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">roundRobinSelection</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">true
            if it should try to round robin selection between steps</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            orderType == IN_ORDER</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Suppose
              the moves are (A1, A2, A3, A4, A5)</span></li>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">if
              the first step stops after 3 move selections, it gets [A1,
              A2, A3]</span></li>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">then
              the next step will get [A4, A5, A1, A2, A3].</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">so if
                it stops after the 3 move selections, it gets [A4, A5,
                A1]</span></li>
            <ul style="margin-top: 0pt; margin-bottom: 0pt;">
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">with roundRobinSelection == false it would
                  get [A1, A2, A3] again</span></li>
            </ul>
          </ul>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            orderType == RANDOM_COMPLETE</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">This
              is a bit tricker - ignore for now</span></li>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Not
            compatible with orderType == RANDOM_SCALABLE</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Not
            compatible with continuous == true</span></li>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">long </span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">randomSelectionWeight</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            this MoveSelector is put into a composition with another
            MoveSelector, how high is the chance that this MoveSelector
            is chosen?</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">See
            below on composition for more info.</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">Can
            default to 1 or can default to size.</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Currently,
              Planner 5.4 implementation default it to 1.</span></li>
        </ul>
      </ul>
    </ul>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">MoveSelector composition: Local Search
      can only have 1 direct MoveSelector, but that one can be
      CompositeMoveSelector of other MoveSelectors. There are several
      forms of composition:</span>
    <ul style="margin-top: 0pt; margin-bottom: 0pt;">
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">Summed composition: UNION</span><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            X(A1, A2, A3) and Y(B1, B2) are summed, we get (A1, A2, A3,
            B1, B2)</span></li>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            this composition is called with RANDOM (complete or
            scalable), how high is the change that A1 will be selected?</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">if
              randomSelectionWeight = 1 for each, so on X = 1 and Y = 1:</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">(1/2)
                * (1/3) = 1/6 chance to select A1</span></li>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">if
              randomSelectionWeight = size for each, so on X = 3 and Y =
              2:</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">1/(3 +
                2) = 1/5 chance to select A1</span></li>
          </ul>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Think
              about it: currently randomSelectionWeight = 1,</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">so if
                you have 100 change moves and 1000 swap moves,</span></li>
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">then </span><span
                style="font-size: 15px; font-family: Arial; color:
                rgb(0, 0, 0); background-color: transparent;
                font-weight: normal; font-style: italic; font-variant:
                normal; text-decoration: none; vertical-align:
                baseline;">every change move has 10 times more chance to
                be selected then a swap move</span></li>
          </ul>
        </ul>
      </ul>
      <li style="list-style-type: disc; font-size: 15px; font-family:
        Arial; color: rgb(0, 0, 0); background-color: transparent;
        font-weight: normal; font-style: normal; font-variant: normal;
        text-decoration: none; vertical-align: baseline;"><span
          style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
          0); background-color: transparent; font-weight: bold;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline;">Multiplied composition:
          CARTESIAN_PRODUCT</span><span style="font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;">:</span></li>
      <ul style="margin-top: 0pt; margin-bottom: 0pt;">
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            X(A1, A2, A3) and Y(B1, B2) are multiplied, we get (A1-B1,
            A1-B2, A2-B1, A2-B2, A3-B1, A3-B2)</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">So
              you get composite moves: even though X and Y only move 1
              entity, the composite move moves 2 at the same time</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <li style="list-style-type: disc; font-size: 15px;
              font-family: Arial; color: rgb(0, 0, 0); background-color:
              transparent; font-weight: normal; font-style: normal;
              font-variant: normal; text-decoration: none;
              vertical-align: baseline;"><span style="font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;">If
                multiplied composition is useful is yet to be determined</span></li>
          </ul>
        </ul>
        <li style="list-style-type: circle; font-size: 15px;
          font-family: Arial; color: rgb(0, 0, 0); background-color:
          transparent; font-weight: normal; font-style: normal;
          font-variant: normal; text-decoration: none; vertical-align:
          baseline;"><span style="font-size: 15px; font-family: Arial;
            color: rgb(0, 0, 0); background-color: transparent;
            font-weight: normal; font-style: normal; font-variant:
            normal; text-decoration: none; vertical-align: baseline;">If
            this composition is called with RANDOM (complete or
            scalable), how high is the change that A1-B1 will be
            selected?</span></li>
        <ul style="margin-top: 0pt; margin-bottom: 0pt;">
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">Always
              (1/3) * (1/2) = 1/6 chance to select A1-B1</span></li>
          <li style="list-style-type: square; font-size: 15px;
            font-family: Arial; color: rgb(0, 0, 0); background-color:
            transparent; font-weight: normal; font-style: normal;
            font-variant: normal; text-decoration: none; vertical-align:
            baseline;"><span style="font-size: 15px; font-family: Arial;
              color: rgb(0, 0, 0); background-color: transparent;
              font-weight: normal; font-style: normal; font-variant:
              normal; text-decoration: none; vertical-align: baseline;">The
              randomSelectionWeight doesn't matter!</span></li>
          <ul style="margin-top: 0pt; margin-bottom: 0pt;">
            <ul style="margin-top: 0pt; margin-bottom: 0pt;">
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">if randomSelectionWeight = 1 , so on X = 1
                  and Y = 1:</span></li>
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">(1/3) * (1/2) = 1/6 chance to select A1-B1</span></li>
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">if randomSelectionWeight = size, so on X =
                  3 and Y = 2:</span></li>
              <li style="list-style-type: circle; font-size: 15px;
                font-family: Arial; color: rgb(0, 0, 0);
                background-color: transparent; font-weight: normal;
                font-style: normal; font-variant: normal;
                text-decoration: none; vertical-align: baseline;"><span
                  style="font-size: 15px; font-family: Arial; color:
                  rgb(0, 0, 0); background-color: transparent;
                  font-weight: normal; font-style: normal; font-variant:
                  normal; text-decoration: none; vertical-align:
                  baseline;">(1/3) * (1/2) = 1/6 chance to select A1-B1</span></li>
            </ul>
          </ul>
        </ul>
      </ul>
    </ul>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">I hope this makes sense :) What do you
      think? Naming, semantics, usage, ...</span><br>
    <span style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
      0); background-color: transparent; font-weight: normal;
      font-style: normal; font-variant: normal; text-decoration: none;
      vertical-align: baseline;">MoveFilters, entity
      inclusion/exclusion, etc are for phase 2 (by much easier to do
      once this stuff in in place)</span>
    <pre class="moz-signature" cols="72">-- 
With kind regards,
Geoffrey De Smet</pre>
  </body>
</html>