Skip to content
Snippets Groups Projects
Commit f6ec7268 authored by Boron, Jonathan (Capt)'s avatar Boron, Jonathan (Capt)
Browse files

README edits

parent ee3f46ff
No related branches found
No related tags found
No related merge requests found
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1"> <project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.java.j2seproject</type> <type>org.netbeans.modules.java.j2seproject</type>
<configuration> <configuration>
<data xmlns="http://www.netbeans.org/ns/j2se-project/3"> <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
<name>Networked Graphics MV3500 assignments</name> <name>Networked Graphics MV3500 assignments</name>
<explicit-platform explicit-source-supported="true"/> <source-roots>
<source-roots> <root id="src.dir"/>
<root id="src.dir"/> </source-roots>
</source-roots> <test-roots>
<test-roots> <root id="test.src.dir"/>
<root id="test.src.dir"/> </test-roots>
</test-roots> </data>
</data> <spellchecker-wordlist xmlns="http://www.netbeans.org/ns/spellchecker-wordlist/1">
<spellchecker-wordlist xmlns="http://www.netbeans.org/ns/spellchecker-wordlist/1"> <word>deliverables</word>
<word>deliverables</word> <word>https</word>
<word>https</word> <word>localhost</word>
<word>localhost</word> <word>multicast</word>
<word>multicast</word> <word>Netbeans</word>
<word>Netbeans</word> <word>README</word>
<word>README</word> <word>UML</word>
<word>UML</word> <word>wikipedia</word>
<word>wikipedia</word> <word>Wireshark</word>
<word>Wireshark</word> </spellchecker-wordlist>
</spellchecker-wordlist> </configuration>
</configuration> </project>
</project>
...@@ -41,7 +41,7 @@ public class BoronPduSender ...@@ -41,7 +41,7 @@ public class BoronPduSender
} }
} }
public void run(Pdu aPdu) public void run(Pdu aPdu) throws Exception
{ {
System.out.println("DisExamplesOpenDis7.AllPduSender started..."); System.out.println("DisExamplesOpenDis7.AllPduSender started...");
...@@ -85,7 +85,7 @@ public class BoronPduSender ...@@ -85,7 +85,7 @@ public class BoronPduSender
//container.marshallToXml("examplePdus.xml"); //container.marshallToXml("examplePdus.xml");
} }
public static void main(String args[]) public static void main(String args[]) throws Exception
{ {
BoronEntityStatePduCreator espduCreator = new BoronEntityStatePduCreator(); BoronEntityStatePduCreator espduCreator = new BoronEntityStatePduCreator();
......
1. Purpose - The purpose of this project was to incorporate Distributive 1. Purpose - The purpose of this project was to incorporate Distributive
Interactive Simulations (DIS) protocol data units (PDU) into MAJ Furr's thesis Interactive Simulations (DIS) protocol data units (PDU) into MAJ John Furr's
work. His work supports the warfighter and reveals data that will wisely inform thesis work. His project models a specific aspect of ground combat communications,
future decisions. It was a pleasure to support his work and to make his work producing data that may influence and change how ground units conduct tactical
more accessible to the Modeling & Simulations and Wargaming communities of communications while in close contact with the enemy. As such, there is great
interest. benefit to adding a networking capability to his simulation that will allow it to
interact with other combat models.
2. Background - MAJ Furr created a discrete event simulation (DES) of the 2. Background - MAJ Furr programmed a discrete event simulation (DES) of the
call for fire process from the forward observation points through battalion level call-for-fire process from the forward observation positions through battalion
fires. The DES covers multiple forms of radio frequencies and concepts. His DES level fires using java and SimKit. His simulation covers multiple forms of radio
shows how the broadcasting of conventional omni-directional frequency modulation frequencies and means of communication. Consequently, his results show how an
waveforms can be intercepted by a near peer competitor. What was lacking from enemy capable of monitoring the electromagnetic spectrum can intercept conventional
his work was the ability to integrate his work with other simulations. omni-directional frequency modulation waveforms and exploit this information to
disrupt our kill chain. What was lacking from his program was the ability to
integrate his simulation with other combat models.
3. Process - Capt Jonathan Boron and Maj Daniel Yurkovich utilized an incremental 3. Process - Capt Jonathan Boron and Maj Daniel Yurkovich utilized an incremental
model process to incorporate the DIS PDUs into MAJ Furr's DES. The approach began model process to incorporate the DIS PDUs into MAJ Furr's simulation. The approach
with understanding MAJ Furr's code and which java classes placed elements onto began with understanding MAJ Furr's code and how java classes interacted with each
the event list. With this understanding, a "PDU Constructor" class was created other and populated events onto the event list. With this understanding, a PDU
to house all of the required PDUs. At this point, the following PDUs deemed Constructor class was developed to provide a blueprint that supports the creation
necessary as a proof of concept are: CreateEntityPDU, EntityStatePDU, FirePDU, of all required PDUs. At this point, the following PDUs deemed necessary for proof
DetonationPDU, TransmitterPDU, ReceiverPDU, and SignalPDU. A major break through of concept were: CreateEntity, EntityState, Fire, Detonation, Transmitter, Receiver,
that enabled quick implementation was MAJ Furr's creation of the "SimpleMover3D" and Signal PDUs. A major breakthrough that enabled quick, seamless implementation of
class. All moving elements, both enemy and friendly, were subclassed from the PDU construction into the simulation was found in MAJ Furr's creation of the
SimpleMover3D class. Within the SimpleMover3D class we placed the PDUConstructor, SimpleMover3D class. All moving elements, both enemy and friendly, were subclassed
PDUSender, TransmitterPDU, and ReceiverPDU. With more refinement of the process, from this SimpleMover3D class. Within the SimpleMover3D class we placed the primary
the CreateEntityPDU,and EntityStatePDU should be in the SimpleMover3D class. PDUConstructor object, as well as methods that allowed Transmitter, Signal, and
Since a large focus of MAJ Furr's work was how different radio procedures Receiver PDUs to be sent. Moreover, with further refinement of the program, the
CreateEntity and EntityState PDUs were completely integrated into the SimpleMover3D
class. Since a large focus of MAJ Furr's work was how different radio procedures
influenced the battlefield, A struggle for Capt Boron and Maj Yurkovich was to influenced the battlefield, A struggle for Capt Boron and Maj Yurkovich was to
identify where radio messages were executed, broadcasted, in the DES portion of identify where radio messages were executed and broadcasted, in the DES portion of
MAJ Furr's program. MAJ Furr's program.
4. How to use - Start "PduReceiver" prior to running MAJ Furr's main program. 4. How to use - DIS was implemented in the simulation such that no other additional
files need to be explicitly run for PDUs to be constructed and sent. A PduReceiver
class was programmed, as well, in order to assist in monitoring the state of the
program and debug. Thus, to observe and track the PDUs being sent, simply run
this file prior to executing MAJ Furr's main program.
5. Future work - The web of details subordinate to the main 72 PDUs identified 5. Future work - The intricacies subordinate to the main 72 PDUs identified in
in the MOVES Institute's open-dis7-source.jar needs improvement in our implementation. the MOVES Institute's open-dis7-source.jar need improvement if a more effective
The Capt Boron and Maj Yurkovich lack the scope and time to gather the full and thorough implementation is desired. A better understanding of how the
details of enumerations for each time of radios, waveforms, and rounds being Institute of Electrical and Electronics Engineers Standard for DIS - Application
used in the simulation. A better understanding of how the Institute of Electrical Protocols (IEEE Std 1278.1-2012) and Simulation Interoperability Standards
and Electronics Engineers Standard for DIS - Application Protocols (IEEE Std Organization Reference for Enumerations for Simulation Interoperability (SISO-
1278.1-2012) and Simulation Interoperability Standards Organization Reference REF-010-2019) work together would make future work easier to complete. Moreover,
for Enumerations for Simulation Interoperability (SISO-REF-010-2019) work the simulation itself, while an effective model of the call-for-fire process,
together would make future work easier to complete. This data requires lacked certain, minute details to fully populate all parameters of the PDUs. This
refinement in each PDU. included specific information pertaining to the type of fuse and warhead in
artillery rounds and the frequency and model of radios employed. Subsequently, this
data requires refinement in each PDU. Lastly, this project showed that DIS can
seamlessly interoperate with SimKit programs. Although outside of the scope of
this project, it would be beneficial for a more thorough integration of the
PDUConstructor and PDUSender classes into the SimKit package.
6. Conclusion - With a program written in the module/component structure SimKit 6. Conclusion - The modular structure of SimKit and DES allowed for the seamless
DES style, the implementation of DIS PDUs was a relatively simple process. The implementation of DIS PDUs in MAJ Furr's call-for-fire combat simulation. The
classes taught in the first year of the MOVES curriculum, specifically Java & DES, classes taught in the first year of the MOVES curriculum, specifically Java and
establish a strong foundation for any second year MOVES student to continue to DES, establish a strong foundation for any second year MOVES student to continue
improve MAJ Furr's simulation and broaden its impact with DIS implementation in to improve MAJ Furr's simulation and broaden its impact with DIS implementation in
MV 3500. MV3500.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment