The military's requirements for training and mission rehearsal have undergone a recent transformation. Increasingly the focus is on accommodating small groups of trainees in urban environments with adversaries that are less identifiable than ever. This often means that there are fewer training support personnel available, and though they may be knowledgeable about techniques, tactics, and procedures, they may not be experts in operating the equipment and software necessary to provide the training.
There must be an effective way to provide small synthetic teams of opposing forces, supporting forces, or neutral forces that can perform coordinated, realistic actions. Current solutions either provide limited capabilities to a single instructor or provide richer capabilities but require multiple instructors.
We are working on a solution that enables a single instructor to control complex, coordinated actions of a small synthetic team. To accomplish this, we characterize their actions as a set of behavioral scripts, or plays, by analogy with sports simulation games. To author the plays, we have extended concepts from the OneSAF Behavior Composer using the computer science idea of a thread, which is a portion of a computer program that can run independently from other portions. By analogy, a behavioral thread is a portion of a behavioral script that can run independently from other portions.
In this paper, we discuss correspondences between computer science threads and behavioral threads, with special attention to thread coordination mechanisms, thread visualization, debugging, and performance. We describe a behavioral-threads-based play executing in a modern training environment, and conclude by speculating on how the science of teams might contribute to threads in computer science.