Page 36 - Read Online
P. 36

Ernest et al. Complex Eng Syst 2023;3:4  I http://dx.doi.org/10.20517/ces.2022.54  Page 17 of 22


                                       Table 3. Counterexample for Spec 3 failure prior to modification
                                              Variable                 Value
                                              CombinedEnemySplash      0.75
                                              CombinedFriendlySplash   0.35
                                              EnemyHealth              0.583
                                              SplashedFriendlyLowestHealth  0.25
                                              ShotEffectiveness         0.5
                                              ShotPriority             0.55
                                              ShotSafety                0.5


               there are likely solutions that would be similarly adherent. This specification may be joined by others in the
               future though, and attempting to modify this FIS tree while maintaining reasonable semantic logic is ideal;
               thus modifying the safety evaluation FIS was selected.

               A scenario was developed to demonstrate this issue which contains one siege tank, two marines, and six zer-
               glings. Readers familiar with Starcraft 2 may be aware that siege tanks within the game do not natively have
               the ability to hold their fire. Modifications to, or deeper usage of the API can allow a unit to be ”paused”. In the
               example scenario created for the tank specifications however, a simple off-screen stationary structure served
               as a possible target for the tank to attack, rather than the zergling if it chose to not fire at the hostile troops.

               Figure 14 shows the post-training FIS in this new scenario. Four specific frames are present in this image,
               with the upper row being frames 1 and 2, and the bottom being 3 and 4. In the first frame, the tank does take
               an effective shot at the zerglings before they enter splash range with the top marine. The tank is not able to
               take another shot again until Frame 2, which is not against the spec as the top marine has very low health at
               this time and is surrounded by three zerglings. That shot defeats two zerglings, as well as the top marine, but
               adhered to the specification. The remaining zergling then approaches a full health bottom marine in Frame 3.
               Unfortunately, in Frame 4, the tank is ready to fire again, and kills a now wounded bottom marine just before
               he could defeat the zergling and still be alive. However, the tank did survive so the friendly forces secured a
               victory, just not an ideal or adherent one.

               In Figure 15 the engagement plays out almost entirely the same in frames 1 through 3. However, come frame
               4, the tank is opting to not attack, allowing the bottom marine to secure the final kill, completing the mission
               with only 1 marine loss.

               Specification 4 is essentially a much more conservative option than specification 3 and states ”Never cause
               splash damage to any friendly unit, regardless of their health”. This is represented in natural language in Equa-
               tion 8 and in LTL in Equation 9.





                                                  4 =      (                          ℎ             > 0.0)
                                                                                                        (8)
                                                   ℎ    (               < 0.50)




                                               4 = (                          ℎ             > 0.0)
                                                                                                        (9)
                                                 → (               < 0.50)


               The failure case presented to this system from our trained chromosome is the exact same from JKIND, which
               is as we expect given the fact that this specification is more conservative. Many solutions exist to create a set
               of FISs that adhere to this specification, including modifying both the Shot Safety FIS to have much lower
   31   32   33   34   35   36   37   38   39   40   41