USER'S MANUAL

 

FOR THE

 

SCENARISTTM

 

AUTOMATED SCENARIO GENERATION SYSTEM

 

 

PROJECT TITLE: RESEARCH IN ARTIFICIAL

INTELLIGENCE FOR NON-COMMUNICATIONS

ELECTRONIC WARFARE SYSTEMS

 

 

 

 

 

Contract No. DAAB07-89-C-P017

 

August 31, 1991

 

 

 

 

 

 

 

 

 

Prepared for:

 

US ARMY COMMUNICATIONS-ELECTRONICS COMMAND

Fort Monmouth, New Jersey

 

 

Prepared by:

 

VISTA RESEARCH CORPORATION

3826 Snead Drive

Sierra Vista, Arizona 85635

(602)378-2130 (602)790-0500

 

Copyright (C) 1991 Vista Research Corporation


 

Contents

Foreword. 3

2.0. Summary of Scenarist Documentation. 5

3.0. Summary of System Capabilities. 6

4.0. Installation Procedures. 10

5.0. Overview of Operating Procedures and System Procedures. 11

6.0. Map Data Preparation and Editing. 15

7.0. Unit Data Preparation and Editing. 16

8.0. Rule Preparation and Editing. 18

9.0. Scenario Generation Commands. 18

10.0. Output Data Interface. 19

Appendix A. Scenarist Map Data File. 19

Appendix B. Scenarist Unit Data File (Test Deployment) 24

Appendix C. Scenatist CLIPS Rule File. 30

Appendix D. Scenarist Test Output Interface File. 34

Appendix E. Test Report for the Scenarist Automated Deployment Generation System.. 38

 


 

            Foreword

 

This report was prepared by the staff of Vista Research Corporation, under Contract No. DAAB07-89-C-P017 to the US Army Communications-Electronics Command.  Project staff included Dr. J. George Caldwell, Principal Investigator, Mr. William N. Goodhue, Ms. Sharon K. Hoting, Dr. William O. Rasmussen, Mr. Eric Weiss, and Mr. Fletcher Aleong.  Government monitoring of the project was provided by Dr. Frank Elmer, Head of the Advanced Concepts Division of the Center for Electronic Warfare/Reconnaissance, Surveillance and Target Acquisition (EW/RSTA).  The CECOM Project Manager was Dr. Frank Elmer.


 

1.0.      Introduction

 

1.1.  Purpose of Document

 

This document is the User's Manual for the Scenarist Automated Scenario Generation System.  The purpose of this document is to provide information needed by a user to execute the Scenarist software.  This manual discusses the steps necessary to execute the software, the outputs of the system, and corrective actions to be taken if error messages appear.

 

The user interface has been written to provide an intuitive menu sequence which can be followed easily by the user.  Menu selections are made using a mouse and data inputs are made using the mouse and/or keyboard.

 

The Scenarist is a graphics workstation system that assists a military analyst in generating military scenarios.  Although it performs a very large amount of processing, the user of the system must still invest a considerable amount of effort in the collection or preparation of data files required by the system.  These data files are basically of three types: map data files, (military) unit data files, and rule data files.  The map data files contain information about geographic features, such as terrain elevation, terrain type, or road availability.  The unit data files contain information about the organization and structure of military units.  The rule data files contain specifications of the rules used to position items on the battlefield.

 

This User's Manual describes the basic functions of the Scenarist software system, and tells how to execute it.  It does not present a detailed, step-by-step explanation of all of the analysis required to define the map, unit, and rule data that should be taken into account to generate one or more scenarios in a particular application.  Use of the Scenarist is analogous to use of an accounting program package or an advanced statistical analysis package.  A user can use an accounting package to do a firm's books, but a substantial amount of effort is required to design and define the accounting system, before the package can be used.  The user must define the accounts that are useful for the particular application; the program cannot perform that function.  All the program can do is the arithmetic to construct various account items of interest, once the user has defined the system.  Similarly, a user can use an advanced statistical analysis package to perform the numerical processing required by various statistical analysis procedures, but the package is of no assistance in setting up the experimental design or sample survey design that generated the data, or even in advising the user concerning what analysis procedure is appropriate.

 

The role of these kinds of programs, designed to assist applications in which the user must play a significant design and analysis role, is quite different from the role of highly specialized processing programs, such as a microcomputer utility ("tools") package or a word processor, which perform specialized functions without the requirement for a significant design or analysis function prior to their use.

 

In the case of an accounting package or an advanced statistical analysis package, no attempt is made in the user's manual to tell the user how to do accounting, or how to do statistical analysis.  The packages begin with the assumption that the user already knows accounting or statistics.  Similarly, the Scenarist system does not tell the user how to decide how to decide what factors should be included in rules, or what resolution of maps is reasonable, or what level of detail should be included in the specification of the military units and organization, or what missions or objectives should be defined for units, in order to generate a reasonable scenario.  Accordingly, this User's Manual presents a description of the functional capability that is included in the Scenarist, but it does not constitute a training course in the analytical processes involved in Scenario design.  The role of the Scenarist is to accomplish the (large amount of) numerical processing required to use an expert system (CLIPS) to generate scenarios; it does not perform the design or analysis that is required to specify the map data, unit data, or rule data that will enable the system to do its processing.

 

As an aid to a prospective system user, we have included in this manual several appendices that contain examples of the data used by the system.  These examples are drawn from a "hypothetical" application in which the Scenarist was used to position radars in the Beqaa Valley (problem 01), and a more realistic example in which the Scenarist was used to position TRAILBLAZER equipment in an area near Spearfish, SD.  We have included (in Appendix E) a complete copy of a Test Report which describes in detail the process of using the Scenarist in the TRAILBLAZER example.

 

The Final Report contains a detailed discussion of the concept underlying the Scenarist and its operation.  The material in the Final Report should be read before attempting to use the system.  This User's Manual is intended to assist the user in executing (operating) the system, once he has designed and assembled the map, unit, and rule data in terms of which he plans to implement one or more scenarios.

 

In general, an analyst wishing to use the Scenarist to generate scenarios in a new application will find it desirable to include certain factors in rules, which factors are not already computed by the Scenarist program.  (These "factors" are the values of variables derived from map or unit data, such as a terrain feature or line-of-sight condition.)  When this situation occurs, it is necessary to generate program code to compute the values of these factors.  To assist the user in accomplishing such modifications to the Scenarist software, a substantial amount of program documentation has been developed and is available.

 

2.0. Summary of Scenarist Documentation

 

A list of documentation for the Scenarist Automated Scenario Generation System is given below.

 

1. Test Report for the Scenarist Automated Scenario Generation System, Vista Research Corporation, Tucson, Arizona, April 30, 1991.

 

2. User's Manual for the Scenarist Automated Scenario Generation System, Vista Research Corporation, Tucson, Arizona, August 31, 1991.

 

3. Programmer's Manual for the Scenarist Automated Scenario Generation System (including separately bound program and file listing), Vista Research Corporation, Tucson, Arizona, August 31, 1991.

 

4. Variable Glossary for the Scenarist Automated Scenario Generation System, Vista Research Corporation, Sierra Vista, Arizona, August 31, 1991.

 

5. Scenarist Automated Scenario Generation System: Final Report, Final Report for Project, "Research in Artificial Intelligence for Noncommunications Electronic Warfare Systems (Contract No. DAAB07-89-C-P017)," Vista Research Corporation, Sierra Vista, Arizona, August 31, 1991.

 

As mentioned, a new user should read the Final Report before attempting to use the system.  The Programmer's Manual and Variable Glossary contain information helpful in modifying the system to include new factors for use in rules.  (The documents listed above do not include information on how to specify rules in the syntax of the CLIPS knowledge-based system -- the "C-Language Integrated Production System."  That information is available in the CLIPS documentation available from NASA, the developer of CLIPS, or from one of the several CLIPS support organizations.)

 

Since the Test Report is very helpful in assisting a new user in understanding all of the steps involved in identifying and assembling the map, unit, and rule data required to effectively use the Scenarist, that report is included as an appendix to this report (Appendix E).

3.0. Summary of System Capabilities

 

The Scenarist automated scenario generation system is a workstation-based aid for use by military scientists to develop tactical military scenarios.  As used in this report, a "tactical military scenario" is a specification of the initial positions, activities, and planned movements of tactical military units.  The specification may be at various levels of detail, ranging from a specification of the positions of high-echelon tactical units (divisions, brigades, battalions) to the positions and activities of low-level units (e.g., companies) or individual platforms or items of equipment (e.g., vehicles and radars).

 

The immediate application of the Scenarist is to develop laydowns of noncommunications equipment for use by the US Army Communications-Electronics Command (CECOM) in its analysis of electronic warfare systems and concepts.  Later applications may include development of scenarios for use in a wide range of military applications, including force planning; research, development, test and evaluation; operational planning and evaluation; and training and education.

 

3.1. Overview of System Inputs, Functions, and Outputs

 

The decomposition of the Scenarist Automated Scenario Generation System into functional areas provides a convenient mechanism for displaying and discussing information about the software.  A tree-structured decomposition of the Scenarist showing functional areas and processes is given in Table 3.1.

 

Following sections will present information, such as operating procedures, using this functional breakdown.  This will provide the user with a consistent view of the structure of the Scenarist. 

 

The menu screens presented to the user also follow the structure described in Table 3.1.  The Main Menu selection presents options for functional areas 3 to 9: About, Units, Rules, Map, Scenarios, Hardware, and Quit.

 

The Map Menu selection and the Unit Menu selection present the options shown in the Processes column for Functional Areas 4 and 5, respectively.

 

The menu hierarchy is shown in Figure 3.1-1.

 

System Inputs

 

User interface/menu control data.

 

Table 3.1.  A tree-structured decomposition of the Scenarist Automated Scenario Generation System showing functional areas and processes.

 

*********************************************************************************

*   FUNCTIONAL AREAS            *           PROCESSES                           *

*********************************************************************************

* 0:   Scenarist Initialization  *      Initialize screen windows, CLIPS setup  *

*********************************************************************************

* 1:   Project File Selection    *      _project_selection() function           *

*********************************************************************************

* 2:   Set Initial Map Location * _Change_Map_Location() function                *

*    Point                      *                                               *

*********************************************************************************

* 3:   Brief system description    *    _About() function                       *

*********************************************************************************

* 4:   Processing Military       *      _Units() function                       *

*    Units                      *                                               *

*                               *      _Define_Unit(), _Copy_Unit(),            *

*                               *      _Delete_Unit(), _Reposition_             *

*                               *      Unit_by_User(), _Reposition_             *

*                               *      Subunits_by_User(), _Reposition_         *

*                               *      Subunits_by_Rules(), _Reposition_FEBA(), *

*                               *      _Display_Unit(), _Output_Unit(),         *

*                               *      Return to previous Menu                  *

*********************************************************************************

* 5:   Entry point for integrated *     _Rules() function                       *

*      CLIPS rules editor         *                                             *

*********************************************************************************

* 6:   Processing Maps            *     _Map() function                         *

*                               *                                               *

*                               *      _Draw_Terrain_Map(), _Draw_Elevation_    *

*                               *      Map(), _Draw_Road_Map(), _Add_Vector_Map_*

*                               *      with_Labels(), _Add_Vector_Map_without_  *

*                               *      Labels(), _Draw_Vector_Map_without_      *

*                               *      Labels(), _Place_Unit_on_Map(),          *

*                               *      _Zoom_Map(), _Change_Map_Location(),     *

*                               *      _Change_Map_Files(), _Print_Map(),       *

*                               *      Return to Previous Menu                  *

*********************************************************************************

* 7:   Entry point for large-     *     _Scenario_Generation function          *

*      scale scenario generation  *                                             *

*********************************************************************************

* 8:   Display hardware           *  _Hardware_Setup() function                 *

*      characteristics            *                                             *

*********************************************************************************

* 9:   Exit from the Scenarist    *     _Quit() function                        *

*********************************************************************************

 

                                                                   

 

 

                        FIGURE 3.3-1

 

 

 

 

Map data: terrain-type file, elevation file, road

availability file.

 

Unit data: generic unit and specific unit data which describe the military units of interest.

 

CLIPS expert system knowledge base.

 

C functions within the Scenarist which constitute the CLIPS interface and generate the patterns (facts) upon which the inferences are made.

 

System Functions

 

Processing Maps:

draw the terrain-type, elevation, road, and vector maps; add labels; place units on a map; zoom the map; change map location point; change map resolution; and print the map on a laser printer.

 

Processing Military Units:

Define, copy, and delete units; user mandated positioning of units and sub-units; reposition sub-units using the CLIPS expert system; reposition the FEBA; display a unit on the terrain-type map; output unit data to the printer or an ASCII file.

 

System Outputs

 

Graphic Display Output:

The Scenarist displays graphic output to the user's graphics terminal using either the EGA or VGA video configuration.

 

Hard Copy Output:

The Scenarist supports hard copy output to a HP Laser Jet Series II (or compatible) printer.  The user can print any map displayed on the graphics monitor.

 

Data contained in the generic unit file and/or the specific unit file can be printed.

 

User Application Interface:

The Scenarist supports an ASCII file output option which the user can adapt to his specific interface requirements.

 

3.2. Input Data Editing Functions

 

Map Data

 

The Scenarist operates on a sequence of maps of varying resolution as established by the user's requirements.  The map data used in the two sample problems addressed during the Scenarist development (i.e., the Beqaa Valley and Spearfish examples) were somewhat different in nature.  In the Beqaa Valley example, the map data were generated by hand, and input directly into a file using the MS-DOS line editor, "edlin."  In the Spearfish example, the map data were extracted from digital terrain maps provided with a sample data set in the US Army's GRASS geographic information system.

 

The Scenarist system does not contain functions for on-line editing of map data, during a "run."  Corrections to map data files would be made using a text editor (e.g., the MS-DOS "edlin" line editor.  As will be discussed in Section 6.0, however, software is available for off-line aggregation of map data, to produce maps of lower resolution from maps of higher resolution.

 

The Scenarist system contains an option for changing map files (e.g., for switching from a low-resolution map to a high-resolution map).  The user may add C-language functions to conduct specialized processing of map data, or use a "_preprocessingxxxx" function to create new maps from existing ones.

 

Unit Data

 

The Scenarist system provides an interactive capability by which the user may input unit data (once it has been defined and assembled by the user) and store it in "unit data files."  It also enables the user to define new units by "copying" existing units, to display units on maps, and to delete units that are no longer needed.  The user may request that a formatted description of all units stored in the unit data files be printed.  Examples of a formatted printout of two unit data files are presented in Appendix B.

 

Expert System Rules

 

The Scenarist uses the C Language Integrated Production System (CLIPS) Version 4.3 as its expert system shell.  The CLIPS expert system rules are loaded into the Scenarist at execution time using the CLIPS function load_rules().

 

This rules file is an ASCII text file and it is created and edited using a text editor.  The CLIPS reference documents, the CLIPS User's Guide and CLIPS Reference Manual, provide the hands-on expert system programming information.

 

In order to use the Scenarist with CLIPS, the user must specify the rules in the syntax of the CLIPS system.  During the course of the Scenarist system development, it was observed that the process of specifying rules in the CLIPS syntax could be substantially simplified if a CLIPS rule "editor" were available.  The Scenarist main-menu option "Rules" is an entry point for such an editor (in a future extension of the Scenarist).

 

3.3. Graphic Output and Scenario Generation Commands

 

The user can obtain hard copy output of any map displayed on the graphics monitor.  One selects the print map option from the Processing Maps menu.  The graphics output is sent to the HP Series II, or compatible, laser printer.

 

The Scenario Generation Commands are those menu options that allow the user to modify the initial canonical laydown.  These repositioning options will accept user mandated placement coordinates and/or will generate new unit placements using the CLIPS expert system.

 

The options available are:

 

-  Reposition Unit by User

-  Reposition Subunits by User

-  Reposition Subunits by Rules

 

All options are available under the Processing Military Units menu.

 

3.4. Output Data Interface Functions

 

The interface between the Scenarist and other software systems is through the Output Data Interface Functions.  The function can create a data file containing Scenarist data that is to be shared with the other system. Typically, at a minimum, this user application interface data set contains:

 

Unit id

Unit name

Unit boundary location points

Number of area subordinate units

Number of point subordinate items

Placement code

 

(The placement code indicates how the location of a subitem was determined:

0: Canonical placement; the placement

code is initialized to 0 for all defined                     units

1: User-reviewed, unchanged

2: User-suggested placement

3: User-mandated placement

4: Position reviewed by rules, whether                             moved or not

5: Position reviewed by rules, moved to                    satisfy local constraints

6: Subitem of geogtype 6 was moved in a                     search to satisfy global constraints  7: Subitem of geogtype 7 - platform/

equipment - was moved in a search to                             satisfy global constraints)

 

The Scenarist generates hard copy output of the unit data and provides the option to save the data to a disk file.

 

4.0. Installation Procedures

 

The DOS batch command file INSTALL.BAT is provided on distribution disk #1 and can be used to install the Scenarist executable code and data files for PROJ0101.FIL and PROJ0201 project files. 

 

The Scenarist source code, CLIPS source code, and the Microsoft C MAKE file are provided on separate disk(s).

 

4.1 System Requirements

 

Hardware Requirements

 

The Scenarist runs on a PC/AT microcomputer (80286/80386 microprocessor) and requires approximately 5 megabytes of disk space, a 3-1/2" or 5-1/4" diskette drive, one megabyte of memory, an EGA or VGA graphics monitor, and a mouse.  In order to obtain printed output, an HP-Laserjet-Series-II compatible printer is required.

 

Software Requirements

 

The following software is required to run the Scenarist:

 

1. Scenarist Automated Deployment Generation System.

 

2. Data file generation software for user's specific

   mapping data.

 

3. PC/MS-DOS 3.3 operating system.

 

4. Microsoft C, version 6.0, revision A.

 

5. Text editor.

 

4.2 Installation Steps

 

To install the Scenarist executable and data files, make b: the active drive and type INSTALL, as shown below:

 

b:         <Enter>

INSTALL    <Enter>

 

To install the Scenarist source code and/or the CLIPS source code, load the contents of the diskettes identified as SOURCE CODE: SCENARIST and SOURCE CODE: CLIPS into the directory/sub-directory of your choice.

 

The Microsoft C MAKE file is on the SOURCE CODE: SCENARIST diskette.

 

5.0. Overview of Operating Procedures and System Procedures

 

The Scenarist Operating Procedures and System Procedures are organized according to functional area (ref. Table 3.1.).

 

5.1. Start Scenarist Execution

 

To begin execution of the Scenarist Automated Scenario Generation System, the user types S03GMAIN at the keyboard as shown below:

SO3GMAIN   <Enter>

 

This loads the Scenarist executable and begins the initialization process. 

 

5.2. Project File Selection

 

The Project File is a text file that contains the names of files and functions that the Scenarist uses when the system is first activated.  Data base files can be altered at a later time using the Change Map Files option within the Processing Maps function.

 

Included on the distribution diskettes are seven project files:

PROJ0101.FIL  -  the Beqaa Valley file set

PROJ0201.FIL  -  the Spearfish, SD file set

PROJ0202.FIL

PROJ0203.FIL

PROJ0204.FIL

PROJ0205.FIL

PROJO2O6.FIL

 

All file names matching the wild card sequence PROJ*.FIL are displayed in the file selection window.  The user selects a specific file by moving the mouse cursor to the file name and clicking the left mouse button on the highlighted region.  The user is prompted to confirm the selection.  Click the left mouse button on Accept.

 

The project file PROJ0206.FIL, used to start the TRAILBLAZER example, is shown below.

 

File name:  PROJ0206.FIL

 

intro.fil

titl01.fil

geod0206.fil

geoc0206.fil

geor0205.fil

geoa02.fil

geol02.fil

geop02.fil

genu01.fil

spec02.fil

scra01.fil

symb01.fil

plat01.fil

eqpt01.fil

feba02.fil

_suitability0201

_preprocessing0201

_action0201

_clipssuitability0201

clip0201.fil

 

5.3. Set Initial Map Location Point

 

The Set Initial Map Location Point option occurs when the Scenarist software starts executing.  The project file identifies the map files and, at this point, the user can specify a map coordinate for either the center of the map display or the upper left-hand corner.

 

The user can alter the location point and/or the map files at any time during execution by selecting under the Processing Maps function either Change Map Location or Change Map Files.

 

5.4. Brief System Description

 

This option provides the user with point of contact address and phone information for both US Army CECOM and Vista Research Corporation.

 

5.5. Processing Military Units

 

This option provides the user with ten sub-options for handling the creation, modification, positioning, and displaying of unit data.  Each option is described below.  Sample unit input data for the Beqaa Valley and TRAILBLAZER examples are shown in Appendix B of this document.

 

Define Unit

 

This option is used to define a new generic or specific unit in the data base. 

 

Copy Unit

 

This option creates a new generic or specific unit in the data base by copying the contents of an existing record into the data structure of the new unit record.

 

The Scenarist allows the user four copy options:

 

Copy from Generic to Specific

Copy from Generic to Generic

Copy from Specific to Specific

Copy from Specific to Generic

 

Delete Unit

 

This option is used to delete a generic or specific unit from the data base.

 

Reposition Unit by User

 

This option allows the user to reposition a unit that has NO parent unit.  The user inputs the unit code of the unit to be moved and the Scenarist checks on whether a parent unit is defined for this unit.  If there is no parent unit, then the input process continues; otherwise the user is returned to the unit menu and is prompted for another selection. 

 

This process moves the selected unit to the user designated location and all sub-units repositioned automatically.

 

Reposition Subunits by User

 

This option allows the user to reposition a subordinate unit.  Input data are required, if already defined in the record, for location point, radius, and placement code for each minor subarea absolute items and location points and placement code for point items.

 

Reposition Subunits by Rules

 

This option repositions subunits using the CLIPS expert system knowledge base.

 

Reposition FEBA

 

This option allows the user to review and/or change the location of the FEBA.  The existing points are displayed on the screen and the user is prompted for the changes.

 

Display Unit

 

This option allows the user to display the unit on the graphics terminal.  The unit is drawn in the map window on the elevation map using the zoom characteristics in effect at the time this option is chosen.

 

Output unit

 

This option allows the user to obtain hard copy output of the specific unit and generic unit files.  The required printer is a HP Laser Jet Series II compatible printer.

 

Return to Previous Menu

 

This option returns the user to the Main Menu selection screen.

 

 

5.6. Entry Point for CLIPS Integrated Rule Editor

 

The "Rules" option enables the user to display information about the definition and source of rules stored in the CLIPS rule file currently being used.  Also, this option is intended to serve as a "hook" in the Scenarist code to interface a CLIPS expert system rule editor (a suggested area for further system development).

 

5.7. Processing Maps

 

Draw Terrain Map

 

This option draws the terrain map on the graphics monitor.  Map resolution, map location point, and zoom window characteristics have been set prior to selecting this option.

 

Draw Elevation Map

 

This option draws the elevation map on the graphics monitor.  Map resolution, map location point, and zoom window characteristics have been set prior to selecting this option.

 

Draw Road Map

 

This option draws the road availability map on the graphics monitor.  Map resolution, map location point, and zoom window characteristics have been set prior to selecting this option.

 

Add Vector Map with Labels

 

This option adds the vector map with labels to whatever already is drawn in the map window.  This option displays on the screen all objects that have been defined in the area-objects, linear-objects, and point-objects files.  Map resolution, map location point, and zoom window characteristics have been set prior to selecting this option. 

 

In some situations, the display of the label information can make the graphics window appear very "busy".  The Scenarist provides the Add Vector Map without Labels as an alternative selection.

 

Add Vector Map without Labels

 

This option adds the vector map without labels to whatever already is drawn in the map window.  Map resolution, map location point, and zoom window characteristics have been set prior to selecting this option. 

 

Place Unit on Map

 

This option allows the user to identify a specific unit, by unit id code, and the Scenarist will place the unit on the map using the coordinate information in the data base. 

 

Zoom Map

 

This option supports three choices:

 

1.  Return to the original map.

2.  Set the zoom map coordinates as the bounding

    rectangle of a unit.

3.  Specify the upper left corner coordinates and

    width of the map.

 

Change Map Location

 

This option supports two choices:

1.  Specify upper left corner for map intersection

    location point.

2.  Specify map center.

 

Change Map Files

 

This option allows the user to access different map data files for the terrain-type file (GEODxxx.FIL), the elevation file (GEOCxxx.FIL), and the road file (GEORxxxx.FIL).  Maps of different resolution can be accessed to facilitate the analysis of unit placement.  The Scenarist can handle simultaneously map files of different resolutions (i.e. terrain-type file @ 100 m. and elevation file @ 30 m.).

 

 

Print Map

 

This option allows the user to obtain hard copy output of the graphics screen.  The required printer is a HP Laser Jet Series II compatible printer.

 

Return to Previous Menu

 

This option returns the user to the Main Menu selection screen.

 

5.8. Entry Point for Large-scale Scenario Generation

 

This option is a "hook" in the Scenarist code to interface with processes that would reposition an entire data base of units using the Scenarist and the CLIPS knowledge base (a suggested item for future development).

 

5.9. Display Hardware Characteristics

 

This option displays to the screen several of the PC system hardware characteristics determined from a query of the video configuration data structure. 

 

5.10. Exit From Scenarist

 

This option exits the user from the Scenarist software.

 

6.0. Map Data Preparation and Editing

 

Map Data

 

This section presents some additional on information on map data preparation and editing, in addition to that presented in Section 3.2.

 

The Test Report included in Appendix E provides a detailed discussion of the procedures for producing maps of varying resolutions for use in the TRAILBLAZER application.  The exact procedures used to prepare map files for input to the Scenarist will vary from application to application, depending on the source of the mapping data.

 

The Scenarist software contains a program, s03xcomp, that enables the user to "aggregate" map data, i.e., to obtain a lower-resolution map from a higher-resolution map.  The function of aggregating maps is an important one in Scenarist processing.  At any given time, the system stores only a 32-cell by 32-cell map in memory.  In order to use the system properly, the user should begin processing using a map that contains the entire unit to be processed.  After completing rule processing on this map, the user may proceed to conduct rule processing on maps of higher resolution, up to any resolution level.

 

In a typical application, it is expected that a user would obtain a high-resolution map (e.g., from the Defense Mapping Agency), and generate a series of lower-resolution maps from this one using the program s03xcomp.  The high-resolution map should be aggregated to a degree sufficient that the unit of interest fits on a single 32-cell by 32-cell map.  In the TRAILBLAZER application, a series of six different levels of aggregation were used.  The different-resolution maps were generated by applying the s03xcomp program to the high-resolution map obtained from the GRASS sample data set.  Each successive map was obtained from the previous one by aggregating blocks of two or three cells on a side.

 

Listings of some of the map files constructed and used in the Beqaa Valley example are presented in Appendix A.

 

7.0. Unit Data Preparation and Editing

 

Unit Data

 

The unit data used in the Scenarist demonstration/test based on the TRAILBLAZER system were obtained from the US Army Intelligence Center and School.  We obtained a number of documents describing the organizational structure of units containing TRAILBLAZER systems, and the tactical doctrine for placing TRAILBLAZER units on the battlefield.  (The specific documents used in the TRAILBLAZER application are listed in the Test Report.)  For other systems to be represented by the Scenarist, similar information would be required.

 

From a data preparation point of view, the most important aspects of a unit are its relationship to other units (i.e., what unit, if any, is its parent unit) and what subordinate units should be defined.  What subordinate units should be defined depends on the application.  All units and subunits should be defined whose position has an effect on the items of interest in the application.  For example, in the TRAILBLAZER, it was considered necessary to define a division, a military intelligence battalion, an electronic warfare company, a SIGINT processing platoon, and a TRAILBLAZER section, since the positioning of any of these units affected the positions of the TRAILBLAZER squad/teams (the items being positioned).

 

Once it is decided what units should be defined, it is necessary to "define" them, using the Scenarist option, "Define Unit."  The process of defining a unit involves specifying all of its subordinate items.  For each subordinate item, the user must specify the "geographic type" of the subitem.  The geographic type ("geogtype") is used in the Scenarist processing to determine what parts of a parent unit must be respecified if the position of the subunit is changed.  The geogtype determines two things: (1) the type of parameters that will be used to specify the subunit; and (2) the domain (area) over which a subordinate item may be repositioned in its parent unit.  The user determines a subunit's geogtype by examining the various geogtype definitions, and selecting the geogtype that best suits the subordinate unit in terms of its relationship to its parent unit.

 

A key factor to be kept in mind is that the Scenarist applies rules only to subitems of geographic types 6 and 7.

 

A summary of the definitions of military unit geographic types is given below.

 

 

Areas defined by four corners:

 

1. On-line (front) subordinate unit;  a subordinate unit occupying a slice of the parent-unit's front area.

 

2. Reserve (rear) subordinate unit;  a subordinate unit occupying a slice of the parent-unit's rear area.

 

3. All-area subordinate unit;  a subordinate unit that covers the parent unit's entire area.

 

4. Major subarea subordinate unit;  a subordinate unit whose domain is a quadrilateral of arbitrary location and orientation within the parent-unit area.

 

Areas defined by location (relative) and half-width (relative):

 

5. Large minor subarea subordinate unit;  a subordinate unit whose domain (covered area) is a square whose half-width is specified as a fraction of the parent width.

 

Areas defined by location (relative) and half-width (absolute, in meters):

 

6. Small minor subarea subordinate unit;  a subordinate unit whose domain is a square whose half-width is specified in meters.

 

Non-area items (defined by location only):

 

7. Point subordinate items: an item whose domain is unspecified.

 

The Final Report contains graphic illustrations of the various unit geographic types (Figures 3-8).  

 

Data Input and Editing

 

In the course of defining a unit, the user specifies a number of items, including: the unit's echelon, number, type, and id number; the unit's parent unit (if any); the map locations of the unit's four corners; the geographic types and locations of its subordinate items; its mission and objective (if any).

 

The locations of subordinate items are specified in a "normalized" coordinate system, relative to the boundaries of its parent unit.  The Final Report contains a detailed description of this unit (normalized, relative, standard) coordinate system.  In the unit coordinate system, the unit is in the "standard" position, in which the front of the unit extends from (0,0) to (1,0) and the rear of the unit extends from (0,1) to (1,1).

The Final Report also presents a detailed discussion of the unit parameters and their acceptable values.

 

The user is prompted for the input data and a brief text description of the item being entered is shown in one of the screen windows. 

 

The user is given the opportunity to cancel or reject the unit data just entered.  If the user chooses this option, the Scenarist software does not write the unit data to the disk file.

 

Detailed examples of unit data are given in Appendix B and Appendix E.

8.0. Rule Preparation and Editing

 

Expert System Rules

 

The process of defining the factors that should be included in rules and of specifying the rules is, as discussed in the Introduction, not within the scope of the Scenarist system.  As discussed, the system is intended to perform the processing required to conduct rule-based positioning of military items, but it cannot perform the design and analysis functions required to structure a particular application in a way that can reasonably be addressed by an expert system.

 

It is expected that the user would develop a new application-specific rules file for each new application.  The rule set would typically be modified as the result of viewing the results of an initial specification.  In the TRAILBLAZER example, we identified factors for rules and rules from information included in TRAILBLAZER system documents (listed in the Test Report).

 

To assist the user in assessing the reasonableness of the current rules, the Scenarist displays information about what rule is violated, each time that CLIPS determines that an item is not suitably located.  In addition, the user may use the Rules option to obtain information about the specification and source of the rules currently in the rules file.  If at any point the user decides that a particular rule is not reasonable, he may change the rule specification in the CLIPS rule file (e.g., clips0201.fil, the rule file used for the TRAILBLAZER example).  Of course, he should take care to change descriptive comments on the specification and source of the rules whenever he changes them.

 

An example of the CLIPS rules file constructed for the Beqaa Valley example (which involved the positioning of field artillery and air defense radars) is presented in Appendix C.  An English description of the rules specified in that rule file (clips0101.fil) is contained in the program listing of the C function _clipssuitability0101 (in Volume II of the Programmer's Manual).

 

As discussed in Section 3.2, use of the CLIPS expert system would be easier if there were available an easy-to-use CLIPS rule editor.  If such an editor becomes available, it can be interfaced with the Scenarist in the Rules option.

9.0. Scenario Generation Commands

 

The Scenarist has three options under the Processing Military Units function that allow the user to alter the initial or canonical location of units.  These options are listed below:

 

Reposition Unit by User

 

This option can be applied only to a unit that has no parent unit, i.e., that is not subordinate to another unit.  The user inputs new location boundary points and the Scenarist automatically repositions all subordinate units of the relocated unit.

 

Reposition Subunit by User

 

This option may be used to reposition a subordinate unit of geographic type 6 or 7 (i.e., small minor subarea subunits or point subitems -- the same types of subitems as may be repositioned by rules).  The user inputs new location data, and a "positioning code."  The positioning code indicates whether the subitem's new position is to be permanently fixed, or may be revised by the rules.

 

Reposition Subunit by Rules

 

This option uses the CLIPS expert system to reposition a subordinate unit.  The particular CLIPS rule file to be used is specified in a "project" file, which is selected by the user at the beginning of a Scenarist run.  The Scenarist evaluates both "local" and "global" constraints when determining a suitable location to which to move the subunit (the terms "local" and "global" are defined in the Final Report).

10.0. Output Data Interface

 

The interface between the Scenarist and other systems is accomplished using a customized data interface.  The Scenarist provides an example of a typical interface; the Output Unit option within the Processing Military Units function writes unit data to an ASCII file specified by the user.  These files can be printed on any standard printer.  Appendix D contains an example of this interface output.

 

Appendix A. Scenarist Map Data File

 

File Name: geoc0101.fil

Map Name: Beqaa_Valley

Data Topic: Elevation

Data Source(s): Hypothetical

File Initial Creation Date: December_20,_1990

Date of Last Change: January_26,_1991

Legend:

Number of categories: 0

Unit of measurement: meters

UTM Zone: 0 UTM Band: 0

Map top left corner, in UTM coordinates:

East‑west (meters): 66000

North‑south (meters): 70000

Cell width (meters): 2000

Rows, columns: 32 32

Row format: (32I4)

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 50

50 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 60 70

75 60 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 35 45 55 60 55

60 60 55 45 70 55 45 50

45 1 1 1 1 1 1 1

20 30 35 30 35 30 25 30

35 45 55 45 60 75 85 90

100 90 100 95 100 90 100 90

75 65 55 1 1 1 1 1

125 130 110 145 155 160 175 200

260 270 280 290 300 310 260 275

320 350 340 360 350 400 350 375

325 300 275 250 225 200 175 200

500 550 600 650 700 800 750 900

900 1000 1200 1400 1600 1750 1900 2000

2000 2500 3000 3250 3500 4000 4500 5000

5000 5200 5300 5400 5500 5700 5600 6000

600 600 700 760 735 800 900 1000

1000 1200 1300 1400 1500 1800 2000 2300

2500 3000 2800 3500 4000 4500 5000 5500

5500 5400 5560 5700 5900 5800 5800 5790

700 600 600 800 900 1100 1200 1300

1300 1450 1600 1800 2000 2400 2800 3000

3200 3800 4000 5000 5200 4800 5000 5010

5100 5200 5000 4900 5050 5100 5200 5150

900 600 650 900 1200 1400 1600 1800

1900 2000 2200 2400 2500 2700 2900 3000

3000 3100 3200 3300 3500 3700 3900 4000

4010 4200 4100 3900 4000 4150 4200 4150

1000 600 700 900 1200 1600 1700 1800

1900 2000 2200 2400 2300 2500 2700 3000

3000 2800 2600 2400 2500 2300 2100 2000

2100 2200 2400 2600 2500 2700 2900 3000

600 600 900 1300 1400 1700 1800 1800

1900 2000 2100 2000 2050 1950 2000 2010

2000 1950 1900 1990 2000 1900 1850 1800

1900 2100 2300 2300 2350 2500 2700 3000

600 600 1200 1300 1350 1400 1450 1500

1500 1500 1575 1600 1700 1800 1850 1800

1900 1800 1700 1750 1850 1900 2000 1900

1900 1850 1900 1950 1900 1950 2000 2200

650 650 650 1200 1100 1200 1250 1300

1300 1325 1250 1225 1300 1250 1300 1200

1200 1250 1300 1350 1250 1200 1350 1200

1300 1400 1500 1500 1650 1700 1800 1900

650 650 650 660 640 680 675 680

800 1000 1100 1000 1150 1050 1100 1100

1050 1100 1050 1150 1100 1150 1050 1050

1100 1100 1200 1300 1500 1600 1500 1500

650 675 650 625 650 675 650 650

650 660 670 680 700 750 800 900

910 890 930 950 930 950 910 900

1000 1100 1150 1200 1250 1400 1500 1500

625 640 650 635 650 660 650 640

660 640 650 650 700 750 750 800

800 810 850 860 830 800 800 810

900 950 1000 1060 1100 1200 1300 1500

780 790 800 810 790 800 810 790

800 810 830 810 790 820 810 800

810 840 820 800 820 830 820 800

900 950 1000 1100 1200 1300 1200 1300

950 960 945 970 960 940 990 950

950 950 940 960 940 930 925 900

900 850 850 850 840 860 850 840

900 910 1000 1100 1050 1100 1150 1100

1800 1850 1800 1600 1500 1550 1300 1000

1000 950 950 950 960 950 930 900

900 910 890 920 940 950 930 920

900 950 1000 1100 1200 1300 1400 1500

2600 2300 2000 1800 1600 1500 1400 1200

1100 1000 900 900 910 890 920 930

920 910 910 920 930 920 940 950

950 1000 1200 1100 1150 1200 1300 1300

3000 2750 2500 2250 2000 1800 1600 1500

1400 1300 1200 1000 950 960 950 900

900 900 950 940 930 950 960 990

1000 1100 1300 1400 1500 1600 1800 1800

3000 2800 2600 2400 2200 2000 1900 1800

1800 1700 1600 1500 1400 1200 1000 900

900 950 1000 1050 1100 1150 1200 1250

1200 1300 1500 1500 1550 1700 1800 1900

3300 3100 3000 2800 2600 2500 2300 2000

2000 1800 1750 1700 1600 1400 1300 1200

1200 1250 1300 1350 1400 1500 1600 1800

1900 2000 2100 2150 2200 2300 2400 2500

3800 3500 3300 3000 2800 2600 2500 2500

2250 2000 1800 1700 1750 1760 1700 1500

1500 1600 1650 1700 1800 1900 2000 2000

2000 2200 2300 2400 2600 2700 2900 3000

4000 3800 3600 3400 3200 3000 3000 2800

2600 2300 2000 1800 1600 1600 1900 2000

2100 2050 1950 1800 1500 1700 1900 2100

2200 2400 2800 3000 3300 3400 3450 3500

4200 4000 3800 3600 3400 3350 3200 3000

3000 2800 2400 2000 2000 2400 2600 2800

2800 2900 2800 2500 2300 2400 2500 3000

3000 3200 3300 3400 3500 3700 3900 4000

4500 4400 4300 4000 4000 3950 4000 3950 

3800 3700 3600 3400 3500 3400 3200 3000

3100 3150 3150 3100 2600 2400 2800 3500

3600 3700 3800 3900 4000 4100 4200 4200

5000 4800 4700 4600 4500 4400 4200 4000

4000 4050 3950 4050 4000 4000 4050 4060

4060 4050 4000 3700 3500 3700 4000 4090

4100 4200 4400 4500 4600 4800 4900 5000

5200 5100 5000 4700 4500 4550 4550 4600

4500 4400 4500 4550 4650 4650 4500 4500

4500 4550 4450 4200 3800 4000 4250 4500

4600 4700 4800 4900 5000 5100 5200 5300

5500 5400 5300 5300 5200 5200 5100 5100

5050 5050 5000 5060 5050 5000 4950 5000

5050 5100 5050 4700 4500 4750 4900 5000

5100 5200 5300 5400 5500 5600 5700 5700

6000 5800 5700 5700 5750 5650 5700 5600

5600 5700 5500 5600 5700 5800 5600 5500

5600 5700 5800 5400 5000 5300 5400 5500

5600 5700 5700 5750 5800 5880 5900 6000

6500 6000 5800 5900 5950 5800 5950 5900

5950 5850 5700 5850 5900 5950 5840 5990

5990 5950 5900 5700 5500 5750 5800 5800

5900 5990 5800 5890 5990 6000 6100 6400

 

File Name: geod0101.fil

Map Name: Beqaa_Valley

Data Topic: Terrain_type

Data Source(s): Rand‑McNally_Atlas

File Initial Creation Data: June_15,_1990

Date of Last Change: January_26,_1991

Legend:

Number of categories: 7

0: No_data

1: Plains

2: Woods

3: Hills

4: Mts

5: Water

6: Urban

UTM Zone: 0 UTM Band: 0

Map top left corner, in UTM coordinates:

East‑west (meters): 0

North‑south (meters): 72000

Cell width (meters): 2000

Rows, columns: 36 68

Row format: (68I2)

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 6 6 6 6 6 6 6 6 6 6 

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 1 5 5 5 6 6 6 6 6 6 6 6 6 

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 6 6 6 6 6 6 6 6 6 

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 6 1 1 1 1 6 6 6 

6 6 6 6 6 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 1 1 1 1 1 1 1 1 

1 5 1 1 1 1 1 1 1 1 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 2 2 2 2 2 2 2 2 

1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 2 2 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 2 2 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 4 4 4 4 4 4 

1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 4 4 4 4 4 4 

1 1 1 1 2 2 2 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 

1 1 1 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 

1 1 1 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 

1 1 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 

1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 5 2 2 2 2 2 2 2 2 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 

1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 6 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 

1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 5 5 2 2 2 2 

1 1 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 2 5 5 2 2 2 2 

1 1 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 1 6 1 1 1 1 1 4 4 4 4 4 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 

1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 1 1 1 1 1 1 1 1 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 

1 1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 1 1 1 1 1 1 1 1 1 2 2 4 4 4 4 4 4 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 

1 1 1 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 4 4 4 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 

1 1 1 1 1 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 4 2 2 2 2 2 2 1 1 1 1 2 2 2 2 1 1 1 2 2 5 2 2 2 2 2 2 2 4 4 

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4  

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 4 4 4 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 6 6 6 6 1 1 1 1 1 1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 

1 1 1 1 6 6 6 6 6 6 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 4 4 4 4 4 4 4 4 4 4 

1 1 1 6 6 6 6 6 6 6 1 1 1 1 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

1 1 6 6 6 6 6 6 6 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

1 6 6 6 6 6 6 6 6 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

1 6 6 6 6 6 1 1 1 1 1 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

1 6 6 6 6 1 1 1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 

 

Appendix B. Scenarist Unit Data File (Test Deployment)

 

A. Units Used in Beqaa Valley Problem

 

Generic Unit file:genu01.fil

Specific Unit file: spec01.fil

FEBA File: feba01.fil

 

1. Define a Generic Division of Type 1

 

Name: Division1

Code: 1 1 1 1 0 0 0 0 0 0 0

Type: 1

Front/Rear boundary points: .5 .5

NFRONT: 2

NFRONT sets of (echelon,no.,type,idno): 5 1 1 0 5 2 1 0

NFRONT-1 boundary points: .5 .5

NREAR: 0

NALLAREA: 0

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 0

NPOINT: 0

 

2. Copy Generic Division of Type 1 to a Specific Division, BLUE

 

New Unit's Name: Division1

Old Code:    1 1 1 1 0 0 0 0 0 0 0

New Code:    1 1 1 1 0 0 0 0 0 0 0

Parent Code: 1 1 1 0 0 0 0 0 0 0 0

Idno,parentidno: 141 131

4 Corners: 92000 30000 96000 46000 74000 48000 72000 34000

(Note: for Spearfish, SD, map use (in file spec02.fil):

610000 4925000 590000 4927000 588000 4905000 608000 4903000)

Objective: yes (i.e., input a "1")

(Note: for Spearfish, SD, map use 0 (in file spec02.fil)

Mission type: 1

2 Corners: 124000 36000 128000 32000

No. pts on avenue of approach: 1

Coords: 112000 38000

 

3. Copy Generic Division of Type 1 to a Specific Division, RED

 

New Unit's Name: RedDivision1

Old Code:    1 1 1 1 0 0 0 0 0 0 0

New Code:    2 1 1 1 0 0 0 0 0 0 0

Parent Code: 2 1 1 0 0 0 0 0 0 0 0

Idno,parentidno: 241 231

4 Corners: 110000 44000 106000 28000 128000 30000 130000 40000

 

(Note: for Spearfish, SD, map use (in file spec02.fil):

591000 4937000 611000 4935000 613000 4955000 593000 4957000)

Objective: no (i.e., hit "enter")

 

4. Define a Generic Brigade of Type 1

 

Name: MechBde1

Code: 1 1 1 1 1 0 0 0 0 0 0

Type: 1

Front/Rear Boundary Points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 2

NALLAREA sets of Echelon,no.,type,idno: 8 1 1 0 8 2 2 0

NALLAREA sets of symbol location pts: .4 .4 .6 .55

(Note: this example is not realistic -- in reality, the

radar units are division assets, not brigade assets.)

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 0

NPOINT: 0

 

5. Copy Generic Brigade of Type 1 to a Specific Brigade (Right Front of Division), BLUE

 

Name: MechBde1

Old Code:    1 1 1 1 1 0 0 0 0 0 0

New Code:    1 1 1 1 1 0 0 0 0 0 0

Parent Code: 1 1 1 1 0 0 0 0 0 0 0

Idno,parentidno: 151 141

Objective: no

 

6. Copy Generic Brigade of Type 1 to a Specific Brigade (Left Front of Division), BLUE

 

Name: MechBde2

Old Code:    1 1 1 1 1 0 0 0 0 0 0

New Code:    1 1 1 1 2 0 0 0 0 0 0

Parent Code: 1 1 1 1 0 0 0 0 0 0 0

Idno,parentidno: 152 141

Objective: no

 

7. Define a Generic Field Artillery Battery of Type 1

 

Name: FA_Batt1

Code: 1 1 1 1 1 0 0 1 0 0 0

Type: 1

Front/Rear Boundary Points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 0

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 4

NMINORSUBAREAABS sets of (echelon,no.,type,idno):

10 1 1 0 10 2 2 0 10 3 2 0 10 4 3 0

NMINORSUBAREAABS sets of (location point x,y, radius):

.4 .4 50 .13 .4 50 .87 .4 50 .4 .75 50

NPOINT: 0

 

8. Copy Generic Field Artillery Battery of Type 1 to Specific Field Artillery Battery (in brigade MechBde1, on right front of Division1), BLUE

 

Name: FA_Batt1

Old Code:    1 1 1 1 1 0 0 1 0 0 0

New Code:    1 1 1 1 1 0 0 1 0 0 0

Parent Code: 1 1 1 1 1 0 0 0 0 0 0

Idno,parentidno: 181 151

Objective: no

 

9. Define a Generic Air Defense Artillery Battery of Type 1

 

Name: ADA_Batt1

Code: 1 1 1 1 1 0 0 2 0 0 0

Type: 2

Front/Rear Boundary Points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 0

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 4

NMINORSUBAREAABS sets of (echelon,no.,type,idno):

10 1 4 0 10 2 5 0 10 3 5 0 10 4 5 0

NMINORSUBAREAABS sets of (location point x,y, radius):

.6 .55 50 .13 .2 50 .87 .2 50 .53 .5 50

NPOINT: 0

 

10. Copy Generic Air Defense Artillery Battery of Type 1 to Specific Field Artillery Battery (in brigade MechBde1, on right front of Division1), BLUE

 

Name: ADA_Batt1

Old Code:    1 1 1 1 1 0 0 2 0 0 0

New Code:    1 1 1 1 1 0 0 2 0 0 0

Parent Code: 1 1 1 1 1 0 0 0 0 0 0

Idno,parentidno: 182 151

Objective: no

 

12. FEBA

No. of points on FEBA: 3

Points: 99000 28000 101000 37000 104000 46000

(Note: for Spearfish, SD, map use (in file feba02.fil):

585000 4932000 600000 4931000 615000 493000)

 

 

B. Units Used in TRAILBLAZER Problem

 

Generic Unit file:genu02.fil

Specific Unit file: spec02.fil

FEBA File: feba02.fil

 

1. Define a Generic Division of Type 2

(Note: this division is assigned type 2 to distinguish it from the division defined above)

 

Name: Division2

Code: 1 1 1 2 0 0 0 0 0 0 0

(Note: this division is assigned number 2 to distinguish it from the division defined above.  In order to access units, the Scenarist requires that every unit have a unique code.)

Type: 2

Front/Rear boundary points: .4 .4

NFRONT: 2

NFRONT sets of (echelon,no.,type,idno("ENTI"):5 1 2 0 5 2 2 0

NFRONT-1 boundary points: .5 .5

NREAR: 0

NALLAREA: 1

NALLAREA sets of ENTI: 7 1 1 0  (Note: this is the MI Bn)

NALLAREA sets of symbol location points: .4 .8

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 1  (Note: this is the DivHQCo)

NMINORSUBAREAABS sets of ENTI: 8 1 3 0

NMINORSUBAREAABS sets of loc pt & rad: .5 .9 200

NPOINT: 0

 

2. Copy Generic Division of Type 2 to a Specific Division, BLUE

 

New Unit's Name: Division2

Old Code:    1 1 1 2 0 0 0 0 0 0 0

New Code:    1 1 1 2 0 0 0 0 0 0 0

Parent Code: 1 1 1 0 0 0 0 0 0 0 0

Idno,parentidno: 142 131

4 Corners: 610000 4925000 590000 4927000 588000 4905000 608000 4903000

Objective: no

 

3. Define a Generic Military Intelligence (MI) Battalion of Type 1

 

Name: MIBn1

Code: 1 1 1 2 0 0 1 0 0 0 0

Type: 1

Front/Rear boundary points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 1

NALLAREA sets of ENTI: 8 1 5 0  (Note: this is the EW Co)

NALLAREA sets of symbol location points: .25 .35

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 1  (Note: this is the MIBnHQCo)

NMINORSUBAREAABS sets of ENTI: 8 2 4 0

NMINORSUBAREAABS sets of loc pt & rad: .4 .8 100

NPOINT: 0

 

4. Copy Generic MI Battalion of Type 1 to a Specific MI Battalion, BLUE

 

Name: MIBn1

Old Code: 1 1 1 2 0 0 1 0 0 0 0

New Code: 1 1 1 2 0 0 1 0 0 0

Parent Code: 1 1 1 2 0 0 0 0 0 0 0

Idno, parentidno: 171, 142

Objective: no

 

5. Define a Generic Electronic Warfare (EW) Company of Type 1

 

Name: EWCo1

Code: 1 1 1 2 0 0 1 1 0 0 0

Type: 1

Front/Rear boundary points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 1

NALLAREA sets of ENTI: 9 1 2 0  (Note: this is the SIGINT Processing Platoon (SPP))

NALLAREA sets of symbol location points: .2 .3

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 1  (Note: this is the EWHQPlt)

NMINORSUBAREAABS sets of ENTI: 9 2 1 0

NMINORSUBAREAABS sets of loc pt & rad: .25 .35 50

NPOINT: 0

 

6. Copy Generic EW Company of Type 1 to a Specific EW Company, BLUE

 

Name: EWCo1

Old Code: 1 1 1 2 0 0 1 1 0 0 0

New Code: 1 1 1 2 0 0 1 1 0 0 0

Parent Code: 1 1 1 2 0 0 1 0 0 0 0

Idno, parent idno: 181 171

Objective: no

 

7. Define a Generic SIGINT Processing Platoon (SPP) of Type 1

 

Name: SPP1

Code: 1 1 1 2 0 0 1 1 1 0 0

Type: 1

Front/Rear boundary points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 2

NALLAREA sets of ENTI: 10 1 6 0 10 2 7 0  (Note: these are the TRAILBLAZER and TEAMPACK sections)

NALLAREA sets of symbol location points: .2 .3 .3 .3

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 0

NPOINT: 0

 

8. Copy Generic SPP of Type 1 to a Specific SPP, BLUE

 

Name: SPP1

Old Code: 1 1 1 2 0 0 1 1 1 0 0

New Code: 1 1 1 2 0 0 1 1 1 0 0

Parent Code: 1 1 1 2 0 0 1 1 0 0 0

Idno, parentidno: 191 181

Objective: no

 

9. Define a Generic TRAILBLAZER Section of Type 1

 

Name: TBSec1

Code: 1 1 1 2 0 0 1 1 1 1 0

Type: 1

Front/Rear boundary points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 0

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 5 (Note: these are the five TRAILBLAZER Master Control Stations)

NMINORSUBAREAABS sets of ENTI: 11 1 1 0 11 2 1 0 11 3 1 0 11 4 1 0 11 5 1 0

NMINORSUBAREAABS sets of loc coords, radius: .1 .1 25 .3 .3 25 .5 .1 25 .7 .3 25 .9 .1 25  (Note: these coordinates correspond to the "W" configuration of the canonical TRAILBLAZER laydown)

NPOINT: 0

 

10. Copy Generic TRAILBLAZER Section of Type 1 to a Specific TRAILBLAZER Section, BLUE

 

Name: TBSec1

Old Code: 1 1 1 2 0 0 1 1 1 1 0

New Code: 1 1 1 2 0 0 1 1 1 1 0

Parent Code: 1 1 1 2 0 0 1 1 1 0 0

Idno, parentidno: 1101 191

Objective: yes

Mission type: 2

Coordinates of bounding rectangle of objective: 591000 4937000 613000 4955000

 

11. Define a Generic TEAMPACK Section of Type 2 (Note: no rules were developed for the TEAMPACK -- just the following canonical laydown.  The section type is 2 to distinguish it from the TRAILBLAZER section, which is a section of type 1.)

 

Name: TPSec1

Code: 1 1 1 2 0 0 1 1 1 2 0

Type: 2

Front/Rear boundary points: 0 0

NFRONT: 0

NREAR: 0

NALLAREA: 0

NMAJORSUBAREA: 0

NMINORSUBAREAREL: 0

NMINORSUBAREAABS: 3 (Note: these are the three TEAMPACK teams)

NMINORSUBAREAABS sets of ENTI: 11 1 2 0 11 2 2 0 11 3 2 0

NMINORSUBAREAABS sets of loc coords, radius: .1 .05 25 .4 .05 25 .6 .05 25

NPOINT: 0

 

12. Copy Generic TEAMPACK Section of Type 2 to a Specific TEAMPACK Section, BLUE

 

Name: TPSec1

Old Code: 1 1 1 2 0 0 1 1 1 2 0

New Code: 1 1 1 2 0 0 1 1 1 2 0

Parent Code: 1 1 1 2 0 0 1 1 1 0 0

Idno, parentidno: 1102 191

Objective: yes

Mission type: 2

Coordinates of bounding rectangle of objective: 591000 4937000 613000 4955000

 

13. FEBA

No. of points on FEBA: 3

Points: 585000 4932000 600000 4931000 615000 493000)

 

Code:

1: Side

2: Army

3: Corps

4: Division

5: Brigade

6: Regiment

7: Battalion

8: Company/Battery

9: Platoon

10: Section

11: Squad/Team

(12: Platform)

(13: Equipment)

 

Appendix C. Scenatist CLIPS Rule File

 

File name: CLIP0101.FIL

Application: Reposition Field Artillery Radars

 

 

(defrule initial‑location‑subunit

    (initial‑location‑subunit    ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    ?f2<‑(initial‑location‑subunit

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    (test  (and (= ?geogtyp ?Rgeogtyp)

      (= ?side     ?Rside)

      (= ?echelon ?Rechelon)

      (or (= ?type ?Rtype1) (= ?type ?Rtype2) (= ?type ?Rtype3))

      (or (> ?terrain ?Rterrain) (< ?dstFeba ?RdstFeba)

  (< ?horizon ?Rhorizlo) (> ?horizon ?Rhorizhi) ))      )

=>

;   (retract ?f2)

   (format t " . . INITIAL‑LOCATION‑SUBUNIT FIRED:  call CLIPS_return_val %n")

   (CLIPSval 0 "Init‑loc‑subunit"

                                 ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  ) )

(defrule initial‑location‑platform‑equipment

    (initial‑location‑platform‑equipment

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

     ?f3<‑(initial‑location‑platform‑equipment

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    (test  (and (= ?geogtyp ?Rgeogtyp)

      (= ?side     ?Rside)

      (= ?echelon ?Rechelon)

      (or (= ?type ?Rtype1) (= ?type ?Rtype2) (= ?type ?Rtype3))

      (or (> ?terrain ?Rterrain) (< ?dstFeba ?RdstFeba)

  (< ?horizon ?Rhorizlo) (> ?horizon ?Rhorizhi) ))    )

=>

;    (retract ?f3)

   (CLIPSval 0 "Init‑loc‑plt/eqp"

                                ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )   )

 

(defrule flood‑search‑location

    (flood‑search‑location  ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    ?f4<‑(flood‑search‑location  ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    (test  (and (= ?geogtyp ?Rgeogtyp)

      (= ?side     ?Rside)

      (= ?echelon ?Rechelon)

      (or (= ?type ?Rtype1) (= ?type ?Rtype2) (= ?type ?Rtype3))

      (or (> ?terrain ?Rterrain) (< ?dstFeba ?RdstFeba)

  (< ?horizon ?Rhorizlo) (> ?horizon ?Rhorizhi) ))    )

=>

;    (retract ?f4)

    (format t " . . FLOOD SEARCH RULE FIRED:  call CLIPS_return_val %n")

   (CLIPSval 0 "Flood‑search    "

                                ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )  )

(defrule initial‑location‑subunit2

    (initial‑location‑subunit    ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    ?f22<‑(initial‑location‑subunit

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

=>

    (format t " . . the start of initial‑location‑subunit2: " )

    (format t "%ngeogtyp: %6d%6d "     ?geogtyp  ?Rgeogtyp )

    (format t "%nside:  %6d%6d    "    ?side   ?Rside    )

    (format t "%nechelon:  %6d%6d "    ?echelon  ?Rechelon )

    (format t "%ntype:  %6d%6d%6d%6d  "     ?type   ?Rtype1   ?Rtype2  ?Rtype3 )

    (format t "%nterrain:  %6d%6d "    ?terrain  ?Rterrain )

    (format t "%ndstFeba:  %8.2f%8.2f "     ?dstFeba  ?RdstFeba )

    (format t "%nhorizon:  %8.3f%8.3f%8.3f%n "    ?horizon  ?Rhorizlo ?Rhorizhi )

    (retract ?f22) )

 

(defrule initial‑location‑platform‑equipment2

    (initial‑location‑platform‑equipment

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    ?f32<‑(initial‑location‑platform‑equipment

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

=>

    (format t " . . the start of initial‑location‑platform‑equipment2: " )

    (format t "%ngeogtyp:  %6d%6d "    ?geogtyp  ?Rgeogtyp )

    (format t "%nside:   %6d%6d   "    ?side   ?Rside    )

    (format t "%nechelon:  %6d%6d "    ?echelon  ?Rechelon )

    (format t "%ntype:   %6d%6d%6d%6d "     ?type   ?Rtype1   ?Rtype2  ?Rtype3 )

    (format t "%nterrain:  %6d%6d "    ?terrain  ?Rterrain )

    (format t "%ndstFeba:  %8.2f%8.2f "     ?dstFeba  ?RdstFeba )

    (format t "%nhorizon:  %8.3f%8.3f%8.3f%n "    ?horizon  ?Rhorizlo ?Rhorizhi )

    (retract ?f32) )

 

(defrule flood‑search‑location2

    (flood‑search‑location  ?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

    ?f42<‑(flood‑search‑location

?geogtyp  ?Rgeogtyp

?side   ?Rside

?echelon  ?Rechelon

?type   ?Rtype1     ?Rtype2 ?Rtype3

?terrain  ?Rterrain

?dstFeba  ?RdstFeba

?horizon  ?Rhorizlo   ?Rhorizhi  )

=>

    (format t " . . the start of flood‑search‑location2: " )

    (format t "%ngeogtyp:  %6d%6d "    ?geogtyp  ?Rgeogtyp )

    (format t "%nside:   %6d%6d   "    ?side   ?Rside    )

    (format t "%nechelon:  %6d%6d "    ?echelon  ?Rechelon )

    (format t "%ntype:   %6d%6d%6d%6d "     ?type   ?Rtype1   ?Rtype2  ?Rtype3 )

    (format t "%nterrain:  %6d%6d "    ?terrain  ?Rterrain )

    (format t "%ndstFeba:  %8.2f%8.2f "     ?dstFeba  ?RdstFeba )

    (format t "%nhorizon:  %8.3f%8.3f%8.3f%n "    ?horizon  ?Rhorizlo ?Rhorizhi )

    (retract ?f42) )

Appendix D. Scenarist Test Output Interface File

 

 

Formatted printout of file spec02.fil, showing organizational structure and locations

of all units in file.

 

         Index Idno       Code     Sde Ech Typ   No Echelon Name/Subitem Type

 Unit:      1    141    11110000000  1   4   1     1 Div     Division1      

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11111000000  1   5   1     1 Bde     MechBde        

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  Subunit:  2    0      11112000000  1   5   1     2 Bde     MechBde        

  Placement code: 0

  Location (coordinates of four corners):

   600000.00 4926000.00 590000.00 4927000.00 589000.00 4916000.00 599000.00 4915000.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      2    241    21110000000  2   4   1     1 Div     RedDivision1   

  Location (coordinates of four corners):

   591000.00 4937000.00 611000.00 4935000.00 613000.00 4955000.00 593000.00 4957000.00

  No. of area subordinate units = 2

  Subunit:  1    0      21111000000  2   5   1     1 Bde     Bde1           

  Placement code: 0

  Location (coordinates of four corners):

   591000.00 4937000.00 601000.00 4936000.00 602000.00 4946000.00 592000.00 4947000.00

  Subunit:  2    0      21112000000  2   5   1     2 Bde     Bde1           

  Placement code: 0

  Location (coordinates of four corners):

   601000.00 4936000.00 611000.00 4935000.00 612000.00 4945000.00 602000.00 4946000.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      3    151    11111000000  1   5   1     1 Bde     MechBde1       

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11111001000  1   8   1     1 Co/Btry FA_Batt        

  Placement code: 0

 

 Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  Subunit:  2    0      11111002000  1   8   2     2 Co/Btry ADA_Batt       

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      4    152    11112000000  1   5   1     2 Bde     MechBde2       

  Location (coordinates of four corners):

   600000.00 4926000.00 590000.00 4927000.00 589000.00 4916000.00 599000.00 4915000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11112001000  1   8   1     1 Co/Btry FA_Batt        

  Placement code: 0

  Location (coordinates of four corners):

   600000.00 4926000.00 590000.00 4927000.00 589000.00 4916000.00 599000.00 4915000.00

  Subunit:  2    0      11112002000  1   8   2     2 Co/Btry ADA_Batt       

  Placement code: 0

  Location (coordinates of four corners):

   600000.00 4926000.00 590000.00 4927000.00 589000.00 4916000.00 599000.00 4915000.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      5    181    11111001000  1   8   1     1 Co/Btry FA_Batt1       

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  No. of area subordinate units = 4

  Subunit:  1    0      11111001010  1  10   1     1 Sec     FA_HQ          

  Placement code: 0

  Location (coordinates of four corners):

   605600.00 4921000.00 605600.00 4921000.00 605600.00 4921000.00 605600.00 4921000.00

  Subunit:  2    0      11111001020  1  10   2     2 Sec     TPQ‑36         

  Placement code: 0

  Location (coordinates of four corners):

   608300.00 4920730.00 608300.00 4920730.00 608300.00 4920730.00 608300.00 4920730.00

  Subunit:  3    0      11111001030  1  10   2     3 Sec     TPQ‑36         

  Placement code: 0

  Location (coordinates of four corners):

   600900.00 4921470.00 600900.00 4921470.00 600900.00 4921470.00 600900.00 4921470.00

  Subunit:  4    0      11111001040  1  10   3     4 Sec     TPQ‑37         

  Placement code: 0

  Location (coordinates of four corners):

   605250.00 4917150.00 605250.00 4917150.00 605250.00 4917150.00 605250.00 4917150.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 Unit:      6    182    11111002000  1   8   2     2 Co/Btry ADA_Batt1      

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599000.00 4915000.00 609000.00 4914000.00

  No. of area subordinate units = 4

  Subunit:  1    0      11111002010  1  10   4     1 Sec     ADA_HQ         

  Placement code: 0

  Location (coordinates of four corners):

   603450.00 4919550.00 603450.00 4919550.00 603450.00 4919550.00 603450.00 4919550.00

  Subunit:  2    0      11111002020  1  10   5     2 Sec     FAAR           

  Placement code: 0

  Location (coordinates of four corners):

   608500.00 4922930.00 608500.00 4922930.00 608500.00 4922930.00 608500.00 4922930.00

  Subunit:  3    0      11111002030  1  10   5     3 Sec     FAAR           

  Placement code: 0

  Location (coordinates of four corners):

   601100.00 4923670.00 601100.00 4923670.00 601100.00 4923670.00 601100.00 4923670.00

  Subunit:  4    0      11111002040  1  10   5     4 Sec     FAAR           

  Placement code: 0

  Location (coordinates of four corners):

   604200.00 4920030.00 604200.00 4920030.00 604200.00 4920030.00 604200.00 4920030.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      7    142    11120000000  1   4   2     2 Div     Division2      

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 4

  Subunit:  1    0      11121000000  1   5   2     1 Bde     MechBde        

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 600000.00 4926000.00 599200.00 4917200.00 609200.00 4916200.00

  Subunit:  2    0      11122000000  1   5   2     2 Bde     MechBde        

  Placement code: 0

  Location (coordinates of four corners):

   600000.00 4926000.00 590000.00 4927000.00 589200.00 4918200.00 599200.00 4917200.00

  Subunit:  3    0      11120010000  1   7   1     1 Bn      MIBn           

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  Subunit:  4    0      11120001000  1   8   3     1 Co/Btry DivHQCo        

  Placement code: 0

  Location (coordinates of four corners):

   598200.00 4906200.00 598200.00 4906200.00 598200.00 4906200.00 598200.00 4906200.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      8    171    11120010000  1   7   1     1 Bn      MIBn1          

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11120011000  1   8   5     1 Co/Btry EWCo           

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  Subunit:  2    0      11120012000  1   8   4     2 Co/Btry MIBnHQCo       

  Placement code: 0

  Location (coordinates of four corners):

   600400.00 4908200.00 600400.00 4908200.00 600400.00 4908200.00 600400.00 4908200.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:      9    181    11120011000  1   8   1     1 Co/Btry EWCo1          

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11120011100  1   9   2     1 Plt     SPP            

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  Subunit:  2    0      11120011200  1   9   1     2 Plt     EWHQPlt        

  Placement code: 0

  Location (coordinates of four corners):

   604300.00 4917800.00 604300.00 4917800.00 604300.00 4917800.00 604300.00 4917800.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:     10    191    11120011100  1   9   1     1 Plt     SPP1           

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 2

  Subunit:  1    0      11120011110  1  10   6     1 Sec     TBMCS          

  Placement code: 0

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  Subunit:  2    0      11120011120  1  10   7     2 Sec     TPTeam         

  Placement code: 0

 

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:     11    1101   11120011110  1  10   1     1 Sec     TBSec1         

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 5

  Subunit:  1    0      11120011111  1  11   1     1 Sq      MCS            

  Placement code: 1

  Location (coordinates of four corners):

   607800.00 4923000.00 607800.00 4923000.00 607800.00 4923000.00 607800.00 4923000.00

  Subunit:  2    0      11120011112  1  11   1     2 Sq      MCS            

  Placement code: 1

  Location (coordinates of four corners):

   603400.00 4919000.00 603400.00 4919000.00 603400.00 4919000.00 603400.00 4919000.00

  Subunit:  3    0      11120011113  1  11   1     3 Sq      MCS             

  Placement code: 2

  Location (coordinates of four corners):

   599900.00 4924900.00 599900.00 4924900.00 599900.00 4924900.00 599900.00 4924900.00

  Subunit:  4    0      11120011114  1  11   1     4 Sq      MCS            

  Placement code: 2

  Location (coordinates of four corners):

   596500.00 4920800.00 596500.00 4920800.00 596500.00 4920800.00 596500.00 4920800.00

  Subunit:  5    0      11120011115  1  11   1     5 Sq      MCS            

  Placement code: 3

  Location (coordinates of four corners):

   591900.00 4925700.00 591900.00 4925700.00 591900.00 4925700.00 591900.00 4925700.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

 Unit:     12    1102   11120011120  1  10   2     2 Sec     TPSec1         

  Location (coordinates of four corners):

   610000.00 4925000.00 590000.00 4927000.00 588000.00 4905000.00 608000.00 4903000.00

  No. of area subordinate units = 3

  Subunit:  1    0      11120011121  1  11   2     1 Sq      TP             

  Placement code: 0

  Location (coordinates of four corners):

   607900.00 4924100.00 607900.00 4924100.00 607900.00 4924100.00 607900.00 4924100.00

  Subunit:  2    0      11120011122  1  11   2     2 Sq      TP             

  Placement code: 0

  Location (coordinates of four corners):

   601900.00 4924700.00 601900.00 4924700.00 601900.00 4924700.00 601900.00 4924700.00

  Subunit:  3    0      11120011123  1  11   2     3 Sq      TP             

  Placement code: 0

  Location (coordinates of four corners):

   597900.00 4925100.00 597900.00 4925100.00 597900.00 4925100.00 597900.00 4925100.00

  No. of point subordinate items (units, platforms, or equipment) = 0

 

Appendix E. Test Report for the Scenarist Automated Deployment Generation System