Changes between Version 32 and Version 33 of DSC/zdc_framework
- Timestamp:
- Nov 21, 2013, 8:30:29 PM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
DSC/zdc_framework
v32 v33 6 6 == Objective == 7 7 Note: This document represents an intermediate framework that can be used by teams to test their code. There are several notable changes that will occur in the future, but require further development. Specifically: (1) The framework consists of one diagonal of nodes, providing one competitive or one cooperative arena. 8 The Final event will involve two separate diagonals running in pipeline, and the two diagonals will essentially be identical. Currently, only one diagonal is available. (2) The current set of nodes being used is a slightly older generation of ORBIT node than was used during the Preliminary event. An improved generation of nodes is being constructed and will be installed on ORBIT at a later time, replacing the current diagonal and populating the second diagonal. (3) The framework does not in clude instructions for code submission for the scrimmages or Final events. Information regarding code submission will be provided at a later time.8 The Final event will involve two separate diagonals running in pipeline, and the two diagonals will essentially be identical. Currently, only one diagonal is available. (2) The current set of nodes being used is a slightly older generation of ORBIT node than was used during the Preliminary event. An improved generation of nodes is being constructed and will be installed on ORBIT at a later time, replacing the current diagonal and populating the second diagonal. (3) The framework does not involve any validation of code for submission for the scrimmages or Final events. As a result, emails describing results of matches will not be sent to users, and users should directly look at screen output to see their scores. Information regarding code submission will be provided at a later time. 9 9 10 10 For the most part, the framework instructions adhere to the previous framework instructions, with the major change being the inclusion of new topologies for running competitive tournaments. … … 12 12 Use an OEDL script to execute either a competitive-style or cooperative-style game for both Preliminary matches of the DARPA Spectrum Challenge. Even though the use of the framework is illustrated by using 2 house bots (or 3 in the case of a cooperative game), in the actual competition, the teams will use their own radio implementations. An additional purpose of the framework is to provide validation to the images that teams submit for the Preliminary matches: teams must use the script in this framework to validate their '''image''' before submission. Validation is required for both competitive and cooperative style matches. 13 13 14 The OEDL script uses three pairs of nodes: dsc-teamA, dsc-teamB, dsc-teamC (the actual topology descriptions are '''system:topo:dsc-team{A,B,C}'''). The competitive matches will use teamA and teamC nodes, while cooperative matches will use teamA, teamB and teamC nodes (contestant radios will be only on teamA nodes for image validation, while house bots will be using teamB and teamC nodes); configurations should be considered to be fixed and will be changed only in the case of hardware failures.14 The OEDL script uses five pairs of nodes: dsc-teamA, dsc-teamB, dsc-teamC, dsc-teamX, and dsc-teamY (the actual topology descriptions are '''system:topo:dsc-team{A,B,C,X,Y}'''). For this version of the framework, the competitive matches will use teamX and teamY nodes, while cooperative matches will use teamA, teamB and teamC nodes. 15 15 16 16 == Hardware / Software Resources Used == 17 17 1. Four grid nodes with USRP N210s (two for each team) for competitive match and six nodes with USRP N210s for cooperative match (two for each team). 18 18 2. ''dsc-wbot1.ndz,dsc-wbot2.ndz,dsc-wbot3.ndz'': house bot disk images with the prerequisite software to configure the USRPs and execute a house radio bot. 19 3. ''team-image.ndz'': disk image that contains the team's radio. Please note that it is this image file that will be validated, and that once the image has been loaded for validation, no modification to the radio designs within the image prior to completion of the validation process are allowed.19 3. ''team-image.ndz'': disk image that contains the team's radio. 20 20 4. Scoring packet server: This is the server that resides on the infrastructure machine and is used as the source of data packets as well as the sink for teams to submit received packets for scoring. 21 21 5. The OEDL experiment script to execute the matches and perform image validation. … … 83 83 * a control interface used by the experiment script to prepare the packet server for a match by setting its mode, duration, etc., and to send a start signal so the packet source can send packets to the teams. 84 84 85 == Image Validation and Submission == 86 87 For the image to be considered for the tournament it must be successfully validated in ''both'' the Competitive and Cooperative modes. Different images for different tournament modes will not be accepted. Successful execution of the system:exp:dsc-match script (i.e. with at least one error-free packet received by the scoring server) is considered validation of the image for that match type. Please note that the email sent by the scoring server to contestants (as well as the ORBIT team) contains all the information about images that were used for the match. '''It is essential that teams validate their final image without any modifications'''. The best way to ensure that is to simply save the final image, re-image the nodes and execute the scripts (without any further login/access to the nodes). This guarantees that the image checksum will be the same as what gets reported in the validation email. You may run the validation script as often as desired and on multiple images. If the team successfully validates multiple images, the ORBIT team needs to be informed of the actual image to be used, otherwise the last successfully validated image (i.e. passing both types of matches) will be used. 88 89 Each team is also advised that the file /.orbit_image should contain the final image name (or team name) in order to facilitate proper reporting by the framework. 90 91 == Setting Up the Arena == 85 86 == Setting Up the Arena for COMPETITIVE == 92 87 * To get started, first make a reservation on the [https://www.orbit-lab.org/loginService/ControlPanel Orbit Scheduler] for using the Grid. 93 88 * After logging into grid console, make sure all nodes are turned off (in the example below, turn off all the nodes in the grid): … … 100 95 }}} 101 96 97 * Image the two nodes to be used for the first team's radios (team X nodes): 98 {{{ 99 username@console.grid:~$ omf load -i dsc-wbot1.ndz -t system:topo:dsc-teamX 100 }}} 101 102 In the case of the validation matches these two nodes will receive the competitor's image (and hence replace the house bot image name with the team's image name). 103 104 * Image the two nodes to be used for the second team's radios (in this case team Y nodes): 105 {{{ 106 username@console.grid:~$ omf load -i dsc-wbot2.ndz -t system:topo:dsc-teamY 107 }}} 108 109 110 * Turn nodes back on and verify they are in POWERON state 111 {{{ 112 username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamX 113 username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamY 114 }}} 115 116 117 == Setting Up the Arena for COOPERATIVE == 118 * To get started, first make a reservation on the [https://www.orbit-lab.org/loginService/ControlPanel Orbit Scheduler] for using the Grid. 119 * After logging into grid console, make sure all nodes are turned off (in the example below, turn off all the nodes in the grid): 120 {{{ 121 username@console.grid:~$ omf tell -a offh -t system:topo:all 122 }}} 123 * Verify state of node before continuing. Make sure nodes are in the POWEROFF state. 124 {{{ 125 username@console.grid:~$ omf stat 126 }}} 127 102 128 * Image the two nodes to be used for the first team's radios (team A nodes): 103 129 {{{ … … 112 138 }}} 113 139 114 * FOR COOPERATIVE MATCHES: image the third pair of nodes to be used for the third team's radios (in this case team B nodes):140 * Image the third pair of nodes to be used for the third team's radios (in this case team B nodes): 115 141 {{{ 116 142 username@console.grid:~$ omf load -i dsc-wbot3.ndz -t system:topo:dsc-teamB … … 121 147 username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamA 122 148 username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamC 123 }}}124 125 * FOR COOPERATIVE MATCHES: turn on the third pair of nodes126 {{{127 149 username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamB 128 150 }}} 151 129 152 130 153 == Running the Validation/Experiment Script ==