Динамическая социограмма (Netlogo)

Материал из Letopisi.Ru — «Время вернуться домой»
Перейти к: навигация, поиск

Это средство для анализа данных о действиях, которые совершают участнники проектов совместной деятельности на площадках WikiVote, на страницах проекта Letopisi, в школьных доменах GoogleApps и т.д. На входе программа получает историю из журнала проекта и агенты NetLogo преобразуют эту историю в визуальное представление на поле проекта


Содержание

Необходимые расширения:

extensions [nw csv]


Породы (breeds)

breed [users user] ;
breed [pages page] ;
undirected-link-breed  [bonds bond] ;
undirected-link-breed [votebonds votebond] ;
undirected-link-breed [comments comment] ;
users-own [agentname gender pages_list votes_list comments_list Su Wu Ru CVu ] ;
pages-own [pagename my_author http votes_for votes_against comments_list Si Wi Ri] ;
bonds-own [edits] ;
votebonds-own [mark] ;


undirected-link-breed [unsselinks unsselink] ; - связи, основанные на том, что оценивал или комментировал объект другого автора
;; undirected-link-breed [unssvlinks unssvlink] ; - связи, основанные на том, что посмотрел на  объект другого автора
unsselinks-own [colpages]
;; unssvlinks-own [colpages]
globals [wikihistory  male female expert_list step] ;



Startup

to startup
clear-all ;
set-default-shape users "person" ;
 set-default-shape pages "square" ;
 set-default-shape votebonds "vote" ;
set-default-shape comments "comment" ;
file-close;
 set wikihistory [] ;
 if (file-exists? "go_ban3.gif" ) [import-drawing "go_ban3.gif" ] ;; если нам нужна доска 
 set expert_list [2 19 33 53 57 83 126 652 658 ] ;; если у нас есть перечень экспертов
  end

Типы внешних данных

История вики из категории

История страниц и голосов в WikiVote!

Школьные сообщества

Данные по школе 777

  • и загружались они в последовательности от последних к первым (не забыть изменить)
user , id doc, type of action, type of document
t.a.vedeshenkova,12relOz7VG8kAL6y9HQCNqEwTPGbm1DT3HMoAkkGWukQ,view,document
e.l.dekhtyareva,1i7p1G_yScEUYvh0KnlMewYmmLIS5f4bpvPHDvYoThzE,view,document
a.v.potapova,1_zoCvsJDlY2Wx2qBt1sMfvM1tBB0_OmmjQHeEhvOd0I,view,spreadsheet
a.v.potapova,1_zoCvsJDlY2Wx2qBt1sMfvM1tBB0_OmmjQHeEhvOd0I,edit,spreadsheet

Дополнительная информация - профессиональная принадлежность:

  • n.a.tikhonova,Librarian
  • s.a.maksimova,bookkeeper


  • e.a.savina,admin,Director,S1
  • n.g.dolidze,admin,foreign_languages,S4
  • m.a.smirnova,admin,info,S3
  • m.v.lebedev,admin,chemistry,S1

Данные Таллинна

ID , type of object , user , type of action , creator
1FTp-JO1CShWAsruLQVlwtghOXnECD40l33Lv4mX8eEY,document,anna.seslova,Visited,natalja.votina
1FTp-JO1CShWAsruLQVlwtghOXnECD40l33Lv4mX8eEY,document,raina.ventsli,Visited,natalja.votina

Galaxy

Загрузка дополнительных данных

Загрузка истории

csv:from-string

to load_file
  file-open user-file
          while [ not file-at-end? ]     [ 
            set wikihistory se wikihistory csv:from-string  file-read-line 
           ]
            file-close
            

end


csv:from-row

to load_file2
  file-open user-file
          while [ not file-at-end? ]     [ 
      ;; fput потому что в другом порядке
            set wikihistory  fput   csv:from-row file-read-line  wikihistory
           ]
            file-close
            
end


Работа со списком данных

Тут самое интересное - запись видео (в принципе у нас может быть какой-то датчик, который бы показывал какому моменту времени соответствует происходящее на экране)

to present

 reset-ticks
 set step max-pxcor /  (length  remove-duplicates map [first ?] wikihistory)
 foreach  wikihistory 
[
   visual ?
 layout-spring  turtles links 0.2 0.7 0.1 
 rating;
 tick 
 if 0 = (ticks mod  5)  [  ;; установили через сколько тиков делать запись с экрана
   
   if Video = true [export-view word ticks ".png" ]  ]
]
   
end

Представление

Персональные инструменты
Инструменты