Command values and number of orders

This document lists the expected number of orders that can be given by characters depending on their command value. We study two models. The multiple order model assumes that a character gives a single order to a number of different units in succession. The successive order model assumes that a character gives successive orders to the same unit.

Multiple orders

Here we study how many units a character can expect to order per command phase.

Fig. 1. Ordering several units once

We assume no distance penalties, this means that all units the character wishes to order are within 20 cm of him. For example, Tab. 1 shows that a character with command 8 can expect to give 2.6 orders before he fails. Note that the result for command 11 is mainly of theoretical interest, since it is difficult to arrange that many units within 20 cm of the character so as not to incur any distance penalties.

CV 6 CV 7 CV 8 CV 9 CV 10
.7 1.4 2.6 5 11

Tab. 1 Expected number of orders to different units

The next table presents probabilities (in percent) instead of expected values. It shows for a given command value what the probability is to give a given number of orders without failure. For example, with command 10 the three first orders all succeed with probability 77%.

123456789101112131415
CV 642177311000000000
CV 75834201274211000000
CV 87252382720141075432111
CV 9836958484033282319161311986
CV 10928477716559545046423835323027

Tab. 2 Chance (in percent) of giving a number of orders to different units

Successive orders

Here we study how often per command phase a character can expect to order a single unit.

Fig. 2. Ordering a single unit several times

We want to order the same unit several times in succession (and do nothing else). The calculations must take the -1 command modifier for successive orders into account. Thus the first order goes against c, the second against c-1, etc. Sooner or later, we also have to take distance modifiers into account (unless the unit is ordered to run around in circles). We will assume that the first three orders do not incur distance penalties, and thereafter an additional -1 penality is added for every command. This is the case, for example, if an infantry unit starts 20 cm behind the character - the distances to the character are within 20 cm, 0 cm, 20 cm, 40 cm, etc.

CV 6 CV 7 CV 8 CV 9 CV 10
.5 .9 1.3 1.9 2.5

Tab. 2 Expected number of orders to the same unit

The next table presents probabilities (in percent) instead of expected values. It shows for a given command value what the probability is to give a given number of orders to the same unit without failure. For example, with command 10 the same unit can be moved thrice with probability 55%.

12345
CV 64212200
CV 75824710
CV 872421830
CV 9836035101
CV 10927655234

Tab. 4 Change (in percent) of giving a number successive of orders to the same unit

Appendix 1: Maple Worksheet

The appendix contains the Maple worksheet used to calculate the above probabilities. If you find any errors, please report them to the Warmaster e-group.

Rolling two dice

p(i) gives the number of ways to roll i with 2D6:

> p:= i->6-abs(7-i);

                                 p := i -> 6 - | 7 - i |

s(i) gives the number of ways to roll at most i with 2D6

> s:= i->sum(p(j),j=2..i);

                                              i
-----
\
s := i -> ) p(j)
/
-----
j = 2

For example,

> p(7); s(7);

                                            6

                                           21

Ordering multiple units

We start with a simple model: a character gives a single to multiple units. We assume that all these units are within 20 cm, so no command modifiers apply.

The probability to succeed in (at least) l such orders with comand value c is

> multord:= (c,l)-> (s(c)/36)^l;

                                                            l
multord := (c, l) -> (1/36 s(c))

For example, a general with command 10 can give 5 successful commands with probability

> multord(10,5), round(multord(10,5)*100);

                                       161051
------, 65
248832

We can set this up as a table.

> M:=array(1..5,1..15):for rr from 1 to 5 do
for cc from 1 to 15 do
M[rr,cc]:=round(multord(rr+5,cc)*100)
od;
od;
print(M);

       [42 ,  17 ,  7 ,  3 ,  1 ,  1 ,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ,  0 , 0]
[ ]
[58 , 34 , 20 , 12 , 7 , 4 , 2 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0]
[ ]
[72 , 52 , 38 , 27 , 20 , 14 , 10 , 7 , 5 , 4 , 3 , 2 , 1 , 1 , 1]
[ ]
[83 , 69 , 58 , 48 , 40 , 33 , 28 , 23 , 19 , 16 , 13 , 11 , 9 , 8 , 6]
[ ]
[92 , 84 , 77 , 71 , 65 , 59 , 54 , 50 , 46 , 42 , 38 , 35 , 32 , 30 , 27]

Expected number of orders

To calculate the expected number of multiple orders, we use standard results. The expected number of succesful orders (before a failure) is geometrically distributed with parameter (1-s(c)/36), the failure probability. By standard probability theory,

> expMultOrd:= c->(s(c)/36)/(1-s(c)/36);

                                                      s(c)
expMultOrd := c -> 1/36 -------------
1 - 1/36 s(c)

This can be tabulated

> TexpMultOrd:= array(1..5):
for rr from 1 to 5 do TexpMultOrd[rr]:= expMultOrd(rr+5) od:

> print(TexpMultOrd);

                                 [5/7, 7/5, 13/5, 5, 11]

Ordering the same unit successively

It is slightly harder to calculate the probability to order the same unit several times in succession. The calculations must take the -1 command modifier for successive orders into account.

Our model is the following: a character with command value c attempts to give successive orders to a unit. Thus the first order goes against c, the second against c-1, etc. Sooner or later, we also have to take distance modifiers into account (unless the unit is ordered to run around in circles).
We assume that the first three orders do not incur distance penalties, and thereafter an additional -1 penality is added for every command. This is the case, for example, if an infantry unit starts 20 cm behind the character - the distances to the character are 20 cm, 0 cm, 20 cm, 40 cm, etc.

The total command penalities for the orders are thus 0, -1, -2, -4, -6, etc. This gives raise to the following formula for the probability of giving l successive commands to a unit:

> over2:= x-> max(0,x-2);
succ:= (c,l)->product( (s(c-i-over2(i)))/36, i=0..l-1);

                               over2 := x -> max(0, x - 2)

                                     l - 1
--------'
' | |
succ := (c, l) -> | | (1/36 s(c - i - over2(i)))
| |
| |
i = 0

For example, a general with Command 10 can give 3 successive orders to a unit withtout failing with probability

> succ(10,3), round(succ(10,3)*100);

                                        715
----, 55
1296

We can construct a table for various command values and orders

> C:= array(1..5,1..5):
for rr from 1 to 5 do
for cc from 1 to 5 do
C[rr,cc]:=round(succ(rr+5,cc)*100)
od;
od;
print(C);

                               [42    12     2     0    0]
[ ]
[58 24 7 1 0]
[ ]
[72 42 18 3 0]
[ ]
[83 60 35 10 1]
[ ]
[92 76 55 23 4]

Expected number of orders

The probability for giving exactly l orders (i.e., l successes, but the (l+1)st order fails) is then given by

> b:=(c,l)->succ(c,l)*(1-(s(c-l-over2(l)))/36);

For example

> b(10,3); round (%*100);

                b := (c, l) -> succ(c, l) (1 - 1/36 s(c - l - over2(l)))

                                          5005
-----
15552

                                           32

> expSuccOrd:= c->sum(b(c,k)*k,k=1..12);

                                               12
-----
\
expSuccOrd := c -> ) b(c, k) k
/
-----
k = 1

For example, a general with command 10 can expect to give 2.1 orders

> expSuccOrd(10); evalf(%,2);

                                         8403131
-------
3359232

                                           2.5

> TexpSuccOrd:= array(1..5):
for rr from 1 to 5 do TexpSuccOrd[rr]:= evalf(expSuccOrd(rr+5),2) od:
print(TexpSuccOrd);

                                [.55, .90, 1.3, 1.9, 2.5]

>