Changes between Version 32 and Version 33 of DSC/zdc_framework


Ignore:
Timestamp:
Nov 21, 2013, 8:30:29 PM (10 years ago)
Author:
trappe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • DSC/zdc_framework

    v32 v33  
    66== Objective ==
    77Note: 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 include instructions for code submission for the scrimmages or Final events. Information regarding code submission will be provided at a later time.
     8The 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.
    99
    1010For 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.
     
    1212Use 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.
    1313
    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.
     14The 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.
    1515
    1616== Hardware / Software Resources Used ==
    1717 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).
    1818 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.  
    2020 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.
    2121 5. The OEDL experiment script to execute the matches and perform image validation.
     
    8383* 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.
    8484
    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 ==
    9287 * To get started, first make a reservation on the [https://www.orbit-lab.org/loginService/ControlPanel Orbit Scheduler] for using the Grid.
    9388 * After logging into grid console, make sure all nodes are turned off (in the example below, turn off all the nodes in the grid):
     
    10095}}}
    10196
     97 * Image the two nodes to be used for the first team's radios (team X nodes):
     98{{{
     99username@console.grid:~$ omf load -i dsc-wbot1.ndz -t system:topo:dsc-teamX
     100}}}
     101
     102In 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{{{
     106username@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{{{
     112username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamX
     113username@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{{{
     121username@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{{{
     125username@console.grid:~$ omf stat
     126}}}
     127
    102128 * Image the two nodes to be used for the first team's radios (team A nodes):
    103129{{{
     
    112138}}}
    113139
    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):
    115141{{{
    116142username@console.grid:~$ omf load -i dsc-wbot3.ndz -t system:topo:dsc-teamB
     
    121147username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamA
    122148username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamC
    123 }}}
    124 
    125  * FOR COOPERATIVE MATCHES: turn on the third pair of nodes
    126 {{{
    127149username@console.grid:~$ omf tell -a on -t system:topo:dsc-teamB
    128150}}}
     151
    129152
    130153== Running the Validation/Experiment Script ==