<!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<Move> </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 < x <
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>