swaRm
Description: swaRm
is a R package meant to standardize and accelerate the processing of data describing the movements of animal and human groups (e.g. fish schools, bird flocks).
Source code and installation instructions: Click here
trackR
Description: trackR
is an object tracker for R based on OpenCV. It provides an easy-to-use (or so we think) graphical interface allowing users to perform basic multi-object video tracking in a range of conditions while maintaining individual identities.
Source code and installation instructions: Click here
Rvision
Description: Rvision
is a - small but growing - computer vision library for R. It is based on the powerful OpenCV library for C/C++, the state-of-the-art for computer vision in the open source world.
The ultimate goal of Rvision
is to provide R users with all the necessary functions to read and manipulate images, videos and camera streams, with an emphasis on speed (thanks to OpenCV). In this respect, it is different from all the other image manipulations packages for R that either can not quickly and directly access frames from videos or camera streams or are limited in their processing speed and/or volume.
Source code and installation instructions: Click here
ROpenCVLite
Description: ROpenCVLite
is a utility package that installs OpenCV within R for use by other packages. This package is not a wrapper around OpenCV (it does not provide access to OpenCV functions in R), not is it a computer vision package for R. All it does is compiling and installing OpenCV within your R installation so that other packages can easily find it and compile against it.
Source code and installation instructions: Click here
viridis(Lite)
Description: viridis
is a color palette designed in such a way that it will analytically be perfectly perceptually-uniform, both in regular form and also when converted to black-and-white. It is also designed to be perceived by readers with the most common form of color blindness.
viridis
was originally created by Stéfan van der Walt and Nathaniel Smith to become the new default palette of the popular Python Matplotlib library. This R package makes viridis
available to R users as well.
If you want to know more about the science behind the creation of viridis
, you can watch this presentation of viridis
by its authors at SciPy 2015.
Source code and installation instructions: viridis; viridisLite (viridis
without ggplot2
bindings).
teachR
Description: teachR
is a convenience R package that makes it easy to install and run all our educational Shiny apps on your computer. It also contains a function to export self-contained versions of our apps for installing them on your personal Shiny Server, ShinyProxy Server, or on your shinyapps.io account.
We are also welcoming contributions to teachR
. If you would like your Shiny educational app to be included in teachR
, just fork our GitHub repository, add your app to your copy of teachR
, and submit a pull request. Make sure to include an info
file following the model included in each of teachR
's apps.
Source code and installation instructions: Click here
Description: This app will let you play an Axelrod-like tournament on your computer.
Demo: Click here
Source code: Click here
Description: This app lets you explore a simple model of the spreading and competition between types of opinions.
Demo: Click here
Source code: Click here
Description: This app let's you explore a model of collective nest selection in honeybees presented in Seeley et al. (2012).
Demo: Click here
Source code: Click here
Description: This app let's you explore a model of collective decision-making in ants. This model combines ideas from Goss et al. (1989) and Beckers et al. (1990).
Demo: Click here
Source code: Click here
We investigate the mechanisms by which army ants of the genus Eciton form dynamical structures out of their own bodies, by attaching to each other using special morphological adaptations. These collective "living" constructions allow them to create temporary nests and support structures along their densely populated foraging and migratory trails.
Success in the constantly evolving fields of biology and medicine necessitates staying current in scientific literature. This requires competency in skills such as analysis of primary sources, synthesis of information from multiple sources, and oral and written communication skills. This course focuses on these competencies. Students will develop skills needed to read and analyze scientific literature, and to communicate science through the making of short educational movies, scientific podcasts, and popular science articles.
Course webpage
Latest syllabus
Description: This app lets you explore a simple model of aggregation and segregation between two types of particles.
Demo: Click here
Source code: Click here
The R programming language is one of the most popular languages for data processing and visualization. It is widely used in academia and industry, and its open-source nature has created a large community of users and contributors around the world. At the Swarm Lab, R is our favorite data processing and visualization tool (though we also like Python, Matlab, Java, C/C++), and from time to time we develop and release new libraries for R.
You can find a complete portfolio of our R packages by clicking here.
You can also check out our GitHub repos.
The slime mold Physarum polycephalum is probably one of the most bizarre living organism. This giant (it can be easily observed with the naked eye), multi-nucleated cell is capable of solving convoluted labyrinth mazes, challenging optimization problems and even construct transport networks that have similar efficiency to those designed by human engineers. At the Swarm Lab we study how these incredible performances emerge from the dynamics of this brainless creature.
Understanding collective intelligence is one of the main challenges of contemporary science. Social dynamics are essential for the organization of gregarious and social organisms, and they are an important part of many human activities including the selection of social and industrial norms, the growing use of crowd-sourcing and viral marketing in social networks, and the influence of media and entourage on the outcome of democratic processes. This course will provide an overview of the fundamental principles underlying the organization of animal societies. It will include detailed consideration of the behavioral, social and physical processes that are responsible for the coordination of activities in large animal and human groups.
Latest syllabus
Robots are fun, even the dumb ones - maybe especially the dumb ones. At the Swarm Lab we use swarms of miniature robots with limited processing and movement capabilities to test bio-inspired coordination algorithms. We also create educational tools using our robots to demonstrate the functioning of social insect colonies.
Shiny is a library for the R programming language with which one can build interactive web applications. It is developed by the terrific team behind the RStudio IDE. We use this framework in class to showcase classic models of collective behaviors and swarm intelligence. The students can manipulate the parameters of these models using simple sliders and buttons, and observe directly the consequences on the models’ predictions. This is a fantastic way to design interactive assignments to complement the content of a lecture or to prepare the students for the next one.
You can find a complete portfolio of our webapps by clicking here.
You can also check out our GitHub repository.