TermitesLog

TermitesLog preview image

This model is seeking new collaborators — would you please help?

1 collaborator

Patarakin_m Evgeny Patarakin (Author)

Tags

collaborations 

Tagged by Evgeny Patarakin about 7 years ago

Parent of 1 model: Child of TermitesLog
Model group dte | Visible to everyone | Changeable by group members (dte)
Model was written in NetLogo 5.2.0 • Viewed 667 times • Downloaded 31 times • Run 0 times
Download the 'TermitesLog' modelDownload this modelEmbed this model

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


Info tab cannot be displayed because of an encoding error

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

extensions [nw csv]

patches-own [pagenum]
turtles-own [t-pagenum]

directed-link-breed [friendbonds friendbond] ;

globals [
  wikilog ; log, куда записываются 
  pages ;; перечень созданных страниц
  ]

to setup
  clear-all
  set wikilog []
  set pages []
  set-default-shape turtles "bug"
;;    set-default-shape turtles "person"
  ;; randomly distribute wood chips
  ask patches
 
  [ 
     set pagenum 0  ;; это метка для пятна, что здесь нет палочки
     ;; А нужно ли иметь этот 0 в каждой точке 
    if random-float 100 < density
    [ set pcolor yellow ] ]
  ;; randomly distribute termites
  create-turtles number [
    set color white
    setxy random-xcor random-ycor
    set size 3  ;; easier to see
    
  ]
end 

to go  ;; turtle procedure
  if length wikilog > number_of_turns [stop] ;; ограничитель числа ходов
  search-for-chip
  find-new-pile
  put-down-chip
end 

to search-for-chip  ;; turtle procedure -- "picks up chip" by turning orange
  ifelse pcolor = yellow [ 
    ;; Если это палочка, которую не брали, то надо записать в журнал, что я создал эту новую палочку
     ifelse 0 = [pagenum] of patch-here [
       let newpage 1 + length pages set pages lput newpage pages 
       set t-pagenum newpage ;; это номер палочки, которую создал
            set wikilog lput (se [who] of self newpage "create" ) wikilog 
       ]
     [set t-pagenum [pagenum] of patch-here ;; а если палочка, которую уже кто-то создал, то я записал себе номер этой палочки
       ]
    ;;
    set pcolor black  set color orange  fd 20 ] ;; взял палочку, и с этой палочкой пошел
  ; если я стоял на палочке, то я взял палочку. 
  ; И, если такой палочки еще не было, то я присвоил палочке номер - по сути дела, я создал палочку 
  ; А что я могу записать об этом?
  ;; Мое имя + Имя_Объекта + Действие - я его взял на редакцию 
  [ wiggle     search-for-chip ]  ;; а если ты не нашел, то продолжай поиск
end 

to find-new-pile  ;; turtle procedure -- look for yellow patches
  ;; это он ищет новую палочку, как только найдет - остановится и запустится put-down-chip
  if pcolor != yellow
  [ wiggle find-new-pile ]
end 

to put-down-chip  ;; turtle procedure -- finds empty spot & drops chip
  ;;; смотри - вот я нашел место, где могу положить палочку - я сюда положил палочку и ушел. 
  ;; И записал в журнале, что я палочку положил
  ifelse pcolor = black   ;; в первой проверке это не так, потому что я только что нашел новую палочку, я теперь покручусь вокруг, найду новое пустое место и там палочку положу
  [ 
    ;; Передаю пятну номер статьи, которая тут теперь лежит
    
    ask patch-here [set pagenum [t-pagenum] of myself]
   set wikilog lput (se [who] of self [t-pagenum] of self "edit" ) wikilog 
  ;;
    set pcolor yellow
    set color white
    set t-pagenum 0
    get-away ]
  [ rt random 360
    fd 1
    put-down-chip ]
end 

to get-away  ;; turtle procedure -- escape from yellow piles
  rt random 360
  fd 20
  if pcolor != black
    [ get-away ]
end 

to wiggle ; turtle procedure
  fd 1
  rt random 50
  lt random 50
end 

to logs_to_sociogram
ask patches [set pcolor 0]
  ;; пока связи идут только от редакторов к автору статьи
  foreach edits [
    let friend1 item 0 ?
    let p1 item 1 ?
    let friend2 first first filter [(p1 = item 1 ?) and ("create" = item 2 ?)] wikilog 
    if friend1 != friend2 [
    ask turtle friend1 [ create-friendbond-to turtle friend2 ]
    ]
    
    ]

  repeat 8 [layout-spring  turtles links 1 5 7 ]
end 

to-report edits
report filter ["edit" = item 2 ?] wikilog
end 

; Copyright 1997 Uri Wilensky.
; See Info tab for full copyright and license.

There are 2 versions of this model.

Uploaded by When Description Download
Evgeny Patarakin over 7 years ago Information about the model is added Download this version
Evgeny Patarakin over 7 years ago Initial upload Download this version

Attached files

File Type Description Last updated
TermitesLog.png preview Preview for 'TermitesLog' over 7 years ago, by Evgeny Patarakin Download

This model does not have any ancestors.

Children:

Graph of models related to 'TermitesLog'