Gendercase

Gendercase preview image

1 collaborator

Army_coat_pix R. Wade Schuette (Author)

Tags

collaborations 

Tagged by R. Wade Schuette about 4 years ago

culture 

Tagged by R. Wade Schuette about 4 years ago

empathy 

Tagged by R. Wade Schuette about 4 years ago

humility 

Tagged by R. Wade Schuette about 4 years ago

teamwork 

Tagged by R. Wade Schuette about 4 years ago

Visible to everyone | Changeable by the author
Model was written in NetLogo 6.1.1 • Viewed 279 times • Downloaded 25 times • Run 0 times
Download the 'Gendercase' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

This model ishows one way that teamwork can overcome the limitations of individual team members. In this model two teams compete to complete ten tasks. Sometimes even if the team members are not highly skilled, the overall team can be made stronger by collaboration and out-perform teams which do not use collaboration.

The user can set different values for each team of three variables -- how hard the task is to them, how much "humility" they have, and how much "empathy" they have. Humility is measured by willingness to admit one needs help and ask for it. Empathy is measured by willingness to help someone else who has asked for help.

HOW IT WORKS

The completion of tasks is shown as a race across the screen from left to right.

Each team member starts at the left with a first task which they might complete each time step. If they complete task #1, they move on to task #2. The task numbers are at the bottom of the display. When everyone has completed ten tasks, the play stops and a summary may print at the bottom if you have that feature turned on.

There are two team names, "F" and "M", historically reflecting a more "feminine" approach to decision making and a "masculine"approach. The meaning of F and M and the nature of the culture each team's members share is up to you. The two team types are treated identically by the computer, but you can give them different attributes by using the sliders.

If they fail to complete the task they keep on trying. After a certain number of failures in a row, they get visibly larger, raise their hands and broadcast a request for help. At that point, other members of the same team may elect to respond to the request for help, or they might ignore it. If they choose to respond, they will link up to the one having the problem, and divide the work, increasing the odds that it will be completed each tick.

The odds that a task will get done by that type of team member, their willingness to admit a problem and raise their hand, and the willingness of other team members to respond and come to help are all set by sliders.

HOW TO USE IT

The "action" all takes place in the black graphics area. Frequenty used items are on the left of the screen, less frequently used ones are to the right, possibly out of sight, in which case you can use a big grey slider to move your view, or you can expand the window size to see everything at once.

The number of members of each team is controlled by a slider at the top and far right side of the screen, possibly out of sight, in which case you need to expand the window size by dragging the right edge, or to move your view using a grey slider along the bottom which shows up if the window is too small to show everything at once.

To make things happen click the buttons at the left, starting with SETUP. After SETUP runs you can advance the clock one tick, one step , by clicking STEP, but that is not required. You can STEP as many times as you like. When you are ready to, click the GO button and the clock will start running. The speed of the clock is controlled by a slider at the very top of the display. You can ignore everything else at the top of the dispay in the grey bar.

Clicking SETUP puts two teams on the board, color coded and labelled. Clicking STEP will advance the clock 1 tick, and some of the agents will complete their tasks and move one step to the right. Clicking GO ( "run/puase") will let the clock run until either all the work is done or the game hits a safety timeout and stops; the team members will migrate at different speeds across the board to the finish line.

Before starting a new round of the model, the sliders at the right can be set to desired values.

NOTE: Please set them before hitting SETUP -- the results of changing the sliders in the middle of a run are unpredictable.

Each variable ( task-difficulty, humilty, empathy) can be set by you to have one value for each team, and every member of that team will use those same values, but the other team may have different values.

THINGS TO NOTICE

Everying that happens is based on random factors, based on a roll of the dice that affects whether a task gets done, whether a team member who has humility or empathy uses it. So the results of each run with the exact same settings will be slightly different -- this is a "feature" not a "bug" of so-called "Agent-Based Models".

A team with high humility and high empathy will tend to link up and move as a group, typically faster than solo team members. The links are shown as lines. Team members who are still asking for help and haven't yet partnered-up are shown at twice the usual size. As the clock ticks and the team members move left to right, the number of players on each team who are done is shown in a small monitor window on the bottom left. The time a player last succceeded is shown in another small window, one each for the f and M teams. When every player on a team is done and to the right of the grey bar, the tick-count is the final time it took for the last team member to complete all tasks.

If you turn on the switch on the far right to DISPLAY_BELOW the settings of the switches and the results are shown in text at the very bottom in the control center. This can be shut off if is annoying or distracting. When it is turned on it allows you to record what settings produced an interesting result for trying again later or discussing.

THINGS TO TRY

If you set difficulty low for both teams, and set both empathy and humility to their lowest levels, both teams should commplete the ten tasks in ten ticks of the clock.

REMEMBER if things happen too fast when you click the GO button, you can use the slider at the very top in the grey bar area to controls the speed that the clock rolls forward, very very slowly at the left, faster and faster as you move it further to the right.

If you want to examine behavnior more slowly, instead of hitting the RUN/PAUSE button you can hit the STEP button and examine the results.

Try setting the difficulty for both teams at 0.5, the empathy and humility maximum for the F team and zero for the M team, and running the model. There should be a slight improvement in time for the cooperating team. Then click the difficulty up one notch and run it again, click it up ane more notch and run it again, and notice that theharder the work becomes, the more collaboration improves the outcomes.

Then set the difficulty for the F team, say, to 0.7, and for the M team to 0.5. This represents tasks which the F players have a harder time with than the M players. Notice that maximizing colloaboration overcomes that hurdle and the F team still wins.

As always this very simple model doesn't "prove" anything, it simply lets you get some intution about how things might work.

EXTENDING THE MODEL

These extensions require some programming experience and require that you have downloaded the model to your mac or windows computer. No one else will see your changes unless you then upload your changed model back to the Modeling Commons. How to do that is beyond these instructions.

Color assignemtns to the team is made in a single line near the top of the SETUP section. If you don't like pink and blue, some other colros are predefined like red, blue, green, yellow, etc.

In the current version, the member giving assistance is not penalized and continues completing their own tasks. As an extension you might explore changing that.

Right now only one team member can help one member who needs help, they stop helping once they have finished their own tasks and they ae not slowed down by helping one another.All those could be changed.

You can explore the impact of adding up to two more team members on each team by changing the value of PEEPS, also found at the top of the SETUP section, from 5 to 7. Beyond that you will need to expand the window which is beyond this instruction set.

NETLOGO FEATURES

No unusual NetLogo features were used.

RELATED MODELS

This model is standalone at this time ( 1-Novemer-2020 ). There are no related models.

CREDITS AND REFERENCES

A video demonstrating use of this model may be available shortly in the author's YouTube videos, available at https://www.youtube.com/user/wadediscovery .

(c) copyright 2020 by R. Wade Schuette, Shewnexti LLC ( see https://shewnexti.com )

; This program is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 3 of the License, or ; (at your option) any later version. ; ; This program is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with this program. If not, see https://www.gnu.org/licenses/.

Comments and Questions

You need to do the free registration to comment, please do!

I'd love to have a discussion here! Registration is free and they don't send annoying advertisements - which makes sense for a free product. :) Anyway, please comment !

Posted about 4 years ago

Click to Run Model

;;  Model name:   "GenderRace"   version 1.0
;;  Author: R. Wade Schuette
;;  Copyright (c) 2020
;;  by Shewnexti LLC
;;  ( http://shewnexti.com )
;;
;  This program is free software: you can redistribute it and/or modify
;    it under the terms of the GNU General Public License as published by
;    the Free Software Foundation, either version 3 of the License, or
;    (at your option) any later version.
;
;    This program is distributed in the hope that it will be useful,
;    but WITHOUT ANY WARRANTY; without even the implied warranty of
;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;    GNU General Public License for more details.
;
;    You should have received a copy of the GNU General Public License
;    along with this program.  If not, see .
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; purpose:  To illustrate that a culture of asking for and giving help overcomes individual disadvantages,
;;           resulting in superior team performance. See the INFO section for more details.
;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;  this was written and tested using NetLogo 6.1.1 for Windows 10 for development
;;  and NetLogo Web 2.8.1
;;  see http://ccl.northwestern.edu/netlogo/
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

globals [

  ;; VERBOSE           ;  true if we want to fire the debugging print commands, false otherwise, set in a slider
  STOPFLAG          ;  set this to true to stop the run from deep inside a loop
                    ;  because a simple "stop" command only breaks out of that loop

  MAXTICKS          ;  set to prevent infinite running
  myCounter         ;  utility counter for testing and debugging;

  MDoneCount      ;
  MDoneTick       ;
  FDoneCount    ;
  FDoneTick     ;
  failsBeforeAsking ;
  totalTryCount     ;

  ;; the following are set by sliders

  ;; hurdleM ;    How hard a task is this for a m working alone
  ;; hurdleF;   How hard a task is this for a f working alone

  ;; humilityM and humilityF ;; How willing is a person to admit they are stuck and ask for help?
  ;; empathyM  and empathyF  ;; How willing is a person to stop and go back to help someone else?

  masculineColor;   you can reset this in setup below
  feminineColor;    you can reset this in setup below
  GENDERXX ;;  parameter passed to subroutines, will be either "F" or "M""
  HOTAGENT  ;; the turtle being analyzed within the STILLWORking worklist
 ;; PEEPS     ;; number of members of each team, set by slider at the far right of the screen

 ];

turtles-own ;; PROPERTIES / ATTRIBUTES of individuals
[
   gender;     M or F,   feminine or masculine spirit
   task  ;     #1 to 10, which step of today's work are they on?

  ;; personal difficulty completing their task alone?
  hurdle;

  ;; How many times have they tried and failedd with this task
  ;; since startup or since the last time they succeeded?
  failCount;

  ;; Has the program's bookkeeper noted this person's state?
  tallied;

  ;; "character" traits
  oddsGiveHelp    ;   Likelihood that will give help if someone asks
  oddsAskForHelp  ;   Likelihood that they will ask for help themselves if they are stuck

  failCountTrigger;   inverse of humility,  how many times must they fail before they ask for help?

  ;; utility bookkeeping variables
  isMyHandRaised;  Have I asked for help?

  didHelpArrive;   Did someone offer to help?
  whoIsMyHelper;   Who offered to help?   ( draw a link to that person )

  amIHelpingOut;   Am I already occupied helping someone else?
  whoAmIHelping;   Who am I helping?

]

to setup
  clear-all;       clear all variables
  print "\nStarting a new run...";

  ;; set variables for testint and debugging here
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;set VERBOSE true;    set in a slider to true to use extra print commands
  set myCounter 0;

  ;; set universal run parameters
  set MAXTICKS 500;   to prevent the program from running forever
  set feminineColor  pink;
  set masculineColor green;

 ;; no-display;   shut off the screen display while updating so it runs faster, turned back on below
 ;;  no-display is not compatible with NETLOGO WEB which is why it is commented out here.

  ;; SET the initial values for this run
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  set totalTryCount 0;
  let numpeeps  PEEPS;
  set  failsBeforeAsking 10;


  ;; draw a grey vertical finish line;
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    let LINECOLOR grey;
    let y -13;
    let x   7;
    repeat 25 [ set y (y + 1)  ask patch x y [ set pcolor LINECOLOR ]];



  ;;; Create people of feminine gender and place them on the board
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  set x   -12;
  set y    0;
  repeat numpeeps ;; make #numpeeps people on the upper half of the board
  [
    set y (y + 2);
    create-turtles 1 [  setxy x y  set gender "F"   ];
    ask patch (x - 2) y [ set plabel "F" set plabel-color feminineColor ]

  ]

  ;;  add "f" traits read from the sliders for the F group
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  ask turtles with [ gender = "F" ]
  [
   set color feminineColor;
   set hurdle hurdleF;
   set oddsAskForHelp humilityF;
   set oddsGiveHelp empathyF;
  ]

  ;; create people with masculine gender on the bottom half of the board
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;

  set x -12;
  set y   0;
  repeat numpeeps
  [
    set y   (y - 2);
    create-turtles 1 [ setxy x y set gender "M"  ];
    ask patch (x - 2) y [ set plabel "M" set plabel-color masculineColor ]
  ]

  ;; add masculine traits read from the sliders for the M group
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  ask turtles with [ gender = "M" ]
  [
   set color masculineColor;
   set hurdle hurdleM;
   set oddsAskForHelp humilityM;
   set oddsGiveHelp empathyM;
  ]

  ;;  put bottom task-numbeers on the picture
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  let zx -14;  what patch on the horizontal grid
  let zn 0  ;  what number task
  repeat 10
  [ set zx (zx + 2);
    set zn (zn + 1);
    ask patch zx -14
       [
          set plabel zn;
          set plabel-color red ;
       ]
  ]

  ;; Set heading, size, shape, and numeric varible to their initial values
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  ;; convert the slider value into a better numeric value for using in calculations and prevent divide-by-zero error
  ask turtles [    set failCountTrigger  ( 3 /( oddsAskForHelp + 0.01)) ]  ;

  ask turtles
  [
    set tallied 0
    set heading 90
    set size 1.5
    set shape "person"
    set task 1
    set failCount 0

    set isMyHandRaised 0

    set didHelpArrive 0
    ;;set whoIsMyHelper  will be set later

    set amIHelpingOut 0
   ;; whoAmIHelping will be set later

    ;;  for calculations we will map the humility slider values in the [0,1] range
    ;;  into a fail-count number in the [300, 2.99] range
    ;;  which is rather arbitrary but accomplishes what we want and lets the sliders all be similar
    ;;  so the user interface looks a little bit tidier.
    ;;
    ;;  There is no magic to the "3", just replace 3 with the smallest number we'd ever user.
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    set failCountTrigger  ( 3 /( oddsAskForHelp + 0.01));

  ]

 ;; display;  not a valid NETLOGO WEB command
  reset-ticks;
  tick;   so we start at one not zero for new users comfort

          ;; start clock at time two tick instead of zero for convenience in programming below.
           ;; otherwise has no impact on the outcome.
end ; ;; of the SETUP step

 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; note - excatly the same code runs for "go" or "step", it's just that for "go"
;; it automtically loops and keeps on going,  but for "step" it makes one pass and pauses
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

to go

  if (STOPFLAG = true) [ stop ] ;; stpp if this flag was set by some prior loop

  let tickcount ticks;     ( I pulled this out up front so i don't inadvertently change it below )

  set totalTryCount ( totalTryCount + 1 )     ;   keep track of how many times this loop has been run
                                              ;   because it might be useful later in testing or debugging

  let StillWorking turtles with [ task < 11 ] ;   Similarly, pull out a fixed set of agents ( "turtles")
                                              ;   up front so there's no chance I accidentally change that
                                              ;   list in the code below.

                                              ;   in our case, a randomly ordered set of all the people
                                              ;   who are not yet over the finish line.

  ask StillWorking ;; this is an agentset, initially 2*PEEPS agents in it
  [
       set myCounter ( myCounter + 1 )

       set HOTAGENT who;  print (word "looking at agent " HOTAGENT);
       ;; if ( VERBOSE = true ) [ print ( word "current agent being considered is " HOTAGENT ); ];


       ;; BEFORE I do anything else, see if someone needs help who hasn't received it;
       ;;        in case I am willing to let that change my plans
       ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
       ;; if there are any fs with hands raised and not being helped at this instant
       ;; AND if I am f and I am not currently helping someone else out
       ;; THEN

       ;;  FFF only link to FFF,  MMM only link to MMM, so we need to write this code twice?

       set GENDERXX "F";
       if (( 0 < count  other turtles with [ gender = GENDERXX and isMyHandRaised = 1 and didHelpArrive = 0]  )
              and (gender = GENDERXX and amIHelpingOut = 0))
       ;; THEN ...
       ;;      pick any one waiting for help
       ;;      create a link with it
       ;;      ask it to record thathelp has in fact now arrived from me
       ;;      note in my own record that I am now helping out so I won't pick up another one to help
       ;;      and finally note who it is I'm helping out. ( They already linked to me )

       [
           let needy one-of other turtles with [ gender = GENDERXX and isMyHandRaised = 1 and didHelpArrive = 0]

          ;; now,  they may be asking but am I the answering type?
          let diceroll2 random-float 1.0;
          if (diceroll2 < empathyF)
          [
             create-link-to needy;
             ask needy
                [
                   set didHelpArrive 1
                   set whoIsMyHelper needy
                   set isMyHandRaised 0 ;
                   set size 1.5         ;
                   set failCount 0;
                ]
             set amIHelpingOut 1
             set whoAmIHelping needy;
          ]
       ]

      set GENDERXX "M"
       if (( 0 < count  other turtles with [ gender = GENDERXX and isMyHandRaised = 1 and didHelpArrive = 0]  )
              and (gender = GENDERXX and amIHelpingOut = 0))
       ;; THEN ...
       ;;      pick any one waiting for help
       ;;      create a link with it
       ;;      ask it to record thathelp has in fact now arrived from me
       ;;      note in my own record that I am now helping out so I won't pick up another one to help
       ;;      and finally note who it is I'm helping out. ( They already linked to me )
       [
           let needy one-of other turtles with [ gender = GENDERXX and isMyHandRaised = 1 and didHelpArrive = 0]

          ;; now,  they may be asking but am I the answering type?
          let diceroll2 random-float 1.0;
          if (diceroll2 < empathyM)
          [
             create-link-to needy;
             ask needy
                [
                   set didHelpArrive 1
                   set whoIsMyHelper needy
                   set isMyHandRaised 0 ;
                   set size 1.5         ;
                   set failCount 0;
                ]
             set amIHelpingOut 1
             set whoAmIHelping needy;
          ]
       ]





       ;;;;;;;;;;;;;;;;;; ok,  we may have linked to someone to help, in which case "amIHelpingOut = 1"

       let rolldice random-float 1.0;    make one attempt to do my current task

       ;; TEST FOR SUCCESS but first,  divide the HURDLE size ( task difficulty ) by the number in my tiny workgroup
       ;;   other mappings could be used but this seems like an easy first cut. with 2 people the task will be half as hard.

       ;;   ifelse (rolldice >= hurdle )

       let pairsize 1;                     this is a new variable saying whether I'm a "pair" of size 1 or 2 or 3 etc.
       if (didHelpArrive = 1)  [ Set pairsize 2];    ;; if help arrived ASSUME it will never leave again.

       ifelse ( rolldice >=  ( hurdle / pairsize ))  ;; I or possibly WE SUCCEDED!
       [

          set task (task + 1)  ;;   advance to next assignment
          forward 2;           ;;   move my marker on the board
          set failCount 0;    ;;   reset count of how many fails since last success or starting.


          ;; Now it's possible that the "forward 2" command got the guy past the finish line
          ;;   also known as task now working on is #11
          ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          if ((task >= 11) and (tallied = 0))   ;; if over the line and not yet TALLIED as "done" , update statistcs
          [
            if (gender = "M")  [ set MDoneCount   (MDoneCount   + 1)  set MDoneTick   tickcount set tallied 1 set size 2]
            if (gender = "F")  [ set FDoneCount (FDoneCount + 1)  set FDoneTick tickcount set tallied 1 set size 2]

            if ( task >= 11) [   set size 2  ]  ;; make it more obvious who is done
          ] ;; end of what to do when I cross the finish line

       ]

       ;;;;;;;;;;;;;;;;;;;;;;;;;; end of success , the ELSE clause deals with what if I did NOT accomplish this task on this try

       ;; ... ELSE ...
       [  ;; begin activities if FAILED this current task, possibly even with help

        set failCount (failCount + 1)  ;;  record one more failure

        ;;if (failCount > totalTryCount)  [ print ( word "tickcount " tickcount who " gender " gender ",  tries " totalTryCount ",  fails: " failCount ) ]

        ;; now combine # of times failed with humilty setting to determine if raise hand or not
        ;; need some equation that captures that

        if ( failCount > failCountTrigger)
          [
              set size 3  set isMyHandRaised 1
          ]

      ] ;; end activities if FAILED yet one more time


    ] ;; end of one pass thrugh the stillworking list



 ;; stopping condition for the simulation
 ;; if there are no turtles left that have not had success tallied
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 if (0 = count turtles with [ tallied = 0 ] )
  [
      set STOPFLAG true;

      if (display_Below = true )
      [
        print (word "\n\nNormal completion: " PEEPS " people per team, and everyone is done.");
        print (word "You set:   Hurdle: "  hurdleM "-" hurdleF ", Humility: " humilityM "-" humilityF ", Empathy: " empathyM "-" empathyF
        "\n   and got this result: MMM:" " count "  MDoneCount   " at time " MDoneTick     " ; " "FFF: count " FDoneCount " at time " FDoneTick   );
      ]

  ]

 ;; We didn't just stop so the overall run is not yet complete, but check to see if we are out of time.
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    if ( ticks >= MAXTICKS ) [ print (word "Maximum time of " MAXTICKS " was hit, so I stopped the run.") set STOPFLAG true ]

 ;; We're not done, and we're not outof time, so advance the clock and go around again!
    ;;if (STOPFLAG = false ) [tick];
  tick;
end ; ;; of the GO step

;;;;;;;;;;;  UTILITY routines -- factored out from above to make the above code easier to read and understand

There are 2 versions of this model.

Uploaded by When Description Download
R. Wade Schuette about 4 years ago revision removed "no-display" command Download this version
R. Wade Schuette about 4 years ago Initial upload Download this version

Attached files

File Type Description Last updated
Gendercase.png preview Preview for 'Gendercase' about 4 years ago, by R. Wade Schuette Download

This model does not have any ancestors.

This model does not have any descendants.