wiki:DSC/zf_validation

Image Validation Procedure (Preliminary Torunament)

  1. Decide on the image name (e.g. team-image-name.ndz) and store it in /.orbit-image
  2. Run prepare.sh and let the node shut down
  3. Run "omf save" and save the image
          omf save -n node2-1.grid.obit-lab.org 
    
  4. ssh into repository1 and rename the image
      ssh repository1 
      cd /export/omf/omf-images
      mv expf-id-based-image-name.ndz team-image-name.ndz
    
  5. go back to the grid console and load the image onto one pair of match nodes, i.e.:
      omf load -i team-image-name.ndz -t system:topo:dsc-teamA
    
  6. turn the imaged nodes on
      omf tell -a on -t system:topo:dsc-teamA
    
  7. Execute a competitive match and receive at least one packet successfully
      omf exec system:exp:dsc-match -- --mode COMP
    
  8. Execute a cooperative match and receive at least one packet successfully
      omf exec system:exp:dsc-match -- --mode COOP
    
  9. Do not alter the image in any way (including renaming it). The image you want to used in the final competition must exactly match the one that you validate and tell us to use. Alteration of anything (filename, changing code slightly) will yield a hash that will not match our records!
  10. If you have multiple images that were scored, tell the ORBIT team which one you want to be used, otherwise the last one that was successfully verified for your team will be used.

Image Validation Procedure (Final Tournament)

Please note that, in order for a submitted image to be accepted for the final tournament, it has to be validated for BOTH competitive and cooperative matches

  1. Decide on the image name (e.g. team-image-name.ndz) and store it in /.orbit-image
  2. Run prepare.sh and let the node shut down
  3. Run "omf save" and save the image
          omf save -n node2-1.grid.obit-lab.org 
    
  4. ssh into repository1 and rename the image
      ssh repository1 
      cd /export/omf/omf-images
      mv expf-id-based-image-name.ndz team-image-name.ndz
    

A successful validation involves receiving an email from the scoring server containing image name, corresponding MD5 sum, and a number of received packets greater than 0 (for your image) for both Competitive and Cooperative matches. The opponent can be any of the bots that were provided for practicing. You can use either the Basic script or Tournament script for validation. While we encourage teams to run a full duration match, please note that rules only require one successful packet delivery and hence shorter validation runs will be accepted (e.g. 20 seconds).

Validate With Basic Script

Validate Competitive Match

  1. On the grid console load the saved image into one pair of the competitive match nodes and load one of the bots into the other pair, i.e.:
      omf load -i team-image-name.ndz -t system:topo:dsc-teamXp
      omf load -i dsc-bot1.ndz -t system:topo:dsc-teamYp
    
  2. Execute a competitive match and receive at least one packet successfully (note the 20 second match duration option)
      omf exec system:exp:dsc-match -- --mode COMP --arena PRI --runtime 20
    

Validate Cooperative Match

  1. On the grid console load the saved image into one pair of cooperative match nodes and load two other bots into the other two sets of cooperative match nodes i.e.:
      omf load -i team-image-name.ndz -t system:topo:dsc-teamAp
      omf load -i dsc-bot6.ndz -t system:topo:dsc-teamBp
      omf load -i dsc-bot5.ndz -t system:topo:dsc-teamCp
    
  2. Execute a cooperative match and receive at least one packet successfully
      omf exec system:exp:dsc-match -- --mode COOP --arena PRI --runtime 20
    
  3. After each successful validation, you should receive a confirmation email with the score. Note that you can validate multiple images.
  4. Do not alter the image in any way (including renaming it) once you have received validation emails for the image you want to be used in the final competition.
  5. Fill in the submission form with the image name that was successfully validated (you have to choose one image out of the set that passed the validation procedure) and submit it by email.

Validate With Tournament Scripts

  1. To prepare the extended framework create the three configuration files in current working directory:

teams.yaml

comp_matches.yaml

coop_matches.yaml

T0:
  name: Team Name
  image: team-image-name.ndz
T1:
  name: ORBIT team 1
  image: dsc-bot1.ndz
T2:
  name: ORBIT team 2
  image: dsc-bot2.ndz 
T3:
  name: ORBIT team 3
  image: dsc-bot3.ndz
T4:
  name: ORBIT team 1
  image: dsc-bot4.ndz
T5:
  name: ORBIT team 2
  image: dsc-bot5.ndz
T6:
  name: ORBIT team 3
  image: dsc-bot6.ndz
G1:
   1: T0
   2: T2
G1:
   1: T0
   2: T6
   3: T5
  1. For competitive validation, in the same directory execute:
      dsc-comp 1 A
    
  2. For cooperative validation, in the same directory execute:
      dsc-coop 1 
    
  3. After every successful validation, you should receive confirmation email with the score. Note that you can validate multiple images.
  4. Do not alter the image in any way (including renaming it) once you have received validation emails for the image you want to use for the final competition.
  5. Fill in the submission form with the image name that was successfully validated (you have to choose one image out of the set that passed the validation procedure) and submit it over email.

Additional Arena Testing

  1. We strongly encourage teams to play at least one match in all possible arenas with all possible topology configurations (each run takes between 4 and 8 minutes depending on the image sizes and match duration) for a total of 6 matches. To exercise your image in all 6 combinations, for example with 20 second matches, run (assuming you are using Tournament scripts):
      /usr/local/bin/dsc-comp -r 20 1 A
      /usr/local/bin/dsc-comp -r 20 1 B
      /usr/local/bin/dsc-comp -r 20 -s 1 A
      /usr/local/bin/dsc-comp -r 20 -s 1 B
      /usr/local/bin/dsc-coop -r 20 1
      /usr/local/bin/dsc-coop -r 20 -s 1
    
  2. If time is absolutely critical, you can try it in parallel e.g. in the same directory, with two ssh sessions, execute:

ssh session 1

ssh session 2

/usr/local/bin/dsc-comp -e load 1 A
/usr/local/bin/dsc-comp -e match -r 20 1 A
/usr/local/bin/dsc-comp -e load 1 B
/usr/local/bin/dsc-comp -e match -r 20 1 B
/usr/local/bin/dsc-coop -e load 1 
/usr/local/bin/dsc-coop -e match -r 20 1
-
-
/usr/local/bin/dsc-comp -e load -s 1 A
/usr/local/bin/dsc-comp -e match -s -r 20 1 A
/usr/local/bin/dsc-comp -e load -s 1 B
/usr/local/bin/dsc-comp -e match -s -r 20 1 B
/usr/local/bin/dsc-coop -e load -s 1 
/usr/local/bin/dsc-coop -e match -s -r 20 1 
Last modified 3 years ago Last modified on 03/10/14 13:47:28