Giter Club home page Giter Club logo

identity-signaling's People

Contributors

mt-digital avatar

Watchers

 avatar  avatar

identity-signaling's Issues

Sensitivity analysis for varying similarity bonus

At first a few values like {0, 0.25, 0.5, 1.0}. Continuous range if it seems like that would be interesting.

  • cluster submission script & pre-requisite model/experiment changes
  • add to analysis script

Interaction partner selection by old teacher selection algorithm

See the current version of the paper for the current teacher selection algorithm.

The interaction partner selection will use the current teacher selection algorithm (which will be replaced itself with an alternative). Partner selection will use a normalized, homophily-weighted similarity score to determine the probability agent i selects agent j as a partner: Pr(i chooses j) = (1 + w(a_ij + a_ji))/ sum_jā‰ i (1 + w(a_ij + a_ji)).

It seems we can get rid of the 1 + . This is a holdover from our calculation of the chance agents "collaborate" as I called it, which was (1 + w(a_ij + a_ji))/2.

E_cov = r / R

Instead of ditching r and R for E_cov and E_ov, keep r and R and define E_cov = r/R

Remove (or maybe merge?) delta testing branch

Currently have a rogue branch that is messing with delta. I think it can just be deleted and we can revert to the master branch since we never got to do the sensitivity checks for delta, and I was confused about how delta was being set because I did it in a confusing way.

Learning/reproduction fixes

  • Teacher selection should be random. To do this, ditch homophily for now. Add it back later to do sensitivity checks with full homophily.
  • alpha=0, beta=1 by default; use difference of teacher and learner instead of ratio
  • Agents must not switch strategies before they teach others

Tests red and green for updated social learning process

This will be the first and so far only test for social learning. The idea is we can calculate the expected number of times a particular learner agent will switch to its teacher's strategy. This should occur with a frequency equal to the update probability.

  • Red:

    • test_maybe_switch
  • Green:

    • test_maybe_switch

Double check and update README

Need to make sure that it is possible to run all .

First explain general structure that there is code for model, experiments, and analysis, plus notebooks demonstrating the code in more detail. But these are not super useful, and maybe better not included if the alternative is a messy notebook with broken code, error/warning messages, etc. Better to cleanly explain the code in one place, the README. So I will start by removing the notebooks from git tracking and writing the following.

  • Document-driven development for two scripts. One creates all necessary output directories, submits all jobs to slurm cluster. The second takes results in same directory structure and creates all figures in a new Figures/ directory. Explain how these (will) work, then implement (separate issue).

  • The rest would just note how different agent attributes, member functions in model.py and experiments in experiments.py connect to what's presented in the paper.

  • I don't think it's necessary to explain figures.py, just note that the functions used there can be inferred from usage in the script and inspecting the functions themselves.

Refactor code

  • Remove all trash comments
  • Docstrings for all functions
  • Header docs for all files

Write model sections

First write the main text modeling section. Also stubbed a Model Implementation section in the Appendix.

Sensitivity analysis for trait vector length K

A few values of K for basic results. Maybe K={3, 9, 21, 101} and make the default K=9. Re-run all experiments with K=9. Won't be too hard to do and it may make the results sharper, which would be nice.

  • cluster submission script & pre-requisite model/experiment changes
  • add to analysis script

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    šŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. šŸ“ŠšŸ“ˆšŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ā¤ļø Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.