open-life-science / ols-4

Creative Commons Attribution Share Alike 4.0 International
3 stars 6 forks source link

Developing a library in Python for applying measures of emergence and complexity #13

Open nadinespy opened 3 years ago

nadinespy commented 3 years ago

Project Lead: Nadine Spychala

Mentor:

Welcome to OLS-4! This issue will be used to track your project and progress during the program. Please use this checklist over the next few weeks as you start Open Life Science program :tada:.


Week 1 (week starting 13 September 2021): Meet your mentor!

Before Week 2 (week starting 20 September 2021): Cohort Call (Welcome to Open Life Science!)

Before Week 3 (week starting 27 September 2021): Meet your mentor!

Before Week 4: Cohort Call (Tooling and roadmapping for Open projects)

Week 5 and later

This issue is here to help you keep track of work as you start Open Life Science program. Please refer to the OLS-4 Syllabus for more detailed weekly notes and assignments past week 4.

Week 6

Week 7

Week 8

Week 9

Week 10

Week 11

Week 12

Week 13

Week 14

Week 15

nadinespy commented 3 years ago

Vision Statement

I aim to develop a Python library which allows to call and apply several measures of emergence and complexity to either empirical or simulated time-series data, and provide guidance for comparisons among and conclusions about different measures. Measures of complexity operationalize the idea that a system of interconnected parts is both segregated (i.e., parts act independently), and integrated (i.e., parts show unified behaviour). Emergence, on the other hand, is a phenomenon in which a property occurs only in a collection of elements, but not in the individual elements themselves. Both emergence and complexity are promising concepts in the study of the brain (with a close relationship between the two).

Quantifications thereof can take on very different flavours, and there is no one-size-fits-all way to do it. While a plethora of complexity measures have been investigated quite substantially in the last couple of decades, quantifying emergence is completely new territory. A few measures exist (see, e. g., https://arxiv.org/pdf/2106.06511.pdf, or https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1008289), but they are not readily implementable - they are scattered over different github repositories (or people, if repositories are not existent), and programming languages (including Matlab which is not open source).

A way to easily use & compare a set of state of the art emergence and complexity measures - in an educated way, using only a few lines of code - is thus missing. This is the gap that I’d like to fill.

This library will be useful for anyone interested in micro-macro relationships using time-series data. Potential collaborators are people with software engineering/coding skills, and/or knowledge in information theory & complex systems, and/or a general interest in mathematical/formal micro-macro relationships, and/or a combination of the things mentioned.

arentkievits commented 3 years ago

Vision Statement

I aim to develop a Python library which allows to call and apply several measures of emergence and complexity to either empirical or simulated data, and provide guidance for comparisons among and conclusions about different measures. Measures of complexity operationalize the idea that a system of interconnected parts is both segregated (i.e., parts act independently), and integrated (i.e., parts show unified behaviour). Emergence, on the other hand, is a phenomenon in which a property occurs only in a collection of elements, but not in the individual elements themselves. Both emergence and complexity are promising concepts in the study of the brain (with a close relationship between the two).

Quantifications thereof can take on very different flavours, and there is no one-size-fits-all way to do it. While a plethora of complexity measures have been investigated quite substantially in the last couple of decades, quantifying emergence is completely new territory. A few measures exist (see, e. g., https://arxiv.org/pdf/2106.06511.pdf, or https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1008289), but they are not readily implementable - they are scattered over different github repositories (or people, if repositories are not existent), and programming languages (including Matlab which is not open source).

A way to easily use & compare a set of state of the art emergence and complexity measures by using a few lines of code is thus missing – this is the gap that I’d like to fill.

Hey @nadinespy, nice idea! I think the goal of your project is clear, but I was wondering with whom you would like to collaborate (if this applies) and how other people can use your Python package?

sayalaruano commented 3 years ago

Vision Statement

I aim to develop a Python library which allows to call and apply several measures of emergence and complexity to either empirical or simulated data, and provide guidance for comparisons among and conclusions about different measures. Measures of complexity operationalize the idea that a system of interconnected parts is both segregated (i.e., parts act independently), and integrated (i.e., parts show unified behaviour). Emergence, on the other hand, is a phenomenon in which a property occurs only in a collection of elements, but not in the individual elements themselves. Both emergence and complexity are promising concepts in the study of the brain (with a close relationship between the two).

Quantifications thereof can take on very different flavours, and there is no one-size-fits-all way to do it. While a plethora of complexity measures have been investigated quite substantially in the last couple of decades, quantifying emergence is completely new territory. A few measures exist (see, e. g., https://arxiv.org/pdf/2106.06511.pdf, or https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1008289), but they are not readily implementable - they are scattered over different github repositories (or people, if repositories are not existent), and programming languages (including Matlab which is not open source).

A way to easily use & compare a set of state of the art emergence and complexity measures by using a few lines of code is thus missing – this is the gap that I’d like to fill.

Hi @nadinespy, I love this project. I started to learn about complexity and network science the last year, and I am interested in pursuing my postgraduate studies in this field. In all the books and courses I have revised, emergence is presented as a key attribute of complex systems, but its quantification and proper measurement is something I have not read about in any resource. So, I think that this project could be a valuable contribution. I have the same question as @arentkievits about how you will manage the development of this Python package. Will it be developed only by yourself or with the help of other people?

nadinespy commented 3 years ago

Hi @arentkievits, thanks a lot for your feedback! You pose a good question - I didn't think of mentioning potential collaborators/contributors at all in the vision statement! Yet I assume a vision statement is better off, if it makes other ppl envision possible contributions. ;) I guess the people I primarily would like to collaborate with are people with software engineering/coding skills, and/or knowledge in information theory & complex systems, and/or a general interest in mathematical/formal micro-macro relationships, or a combination of the things mentioned. The package can be used by anyone interested in - broadly speaking - micro-macro relationships using time-series data. Will modify the vision statement and include these things as well.

nadinespy commented 3 years ago

Hi @sayalaruano, thank you so much for your feedback! In addition to what I've been replying to Arent (he had questions similar to yours), I'd say that I plan to finish a first version of the library on my own (just because I think that no one would be that invested as me in working on it from scratch - if there was another person, I'd be more than happy to collaborate! -, also, it's not a requirement to collaborate with others to get a first version done), and to include others later on to improve it.

Happy to hear you're interested in complexity/network science! :) You're right in saying that emergence is often presented as a key attribute of complex systems (so both the degree of complexity & the degree of emergence will be highly related), and yes, it makes sense you didn't come across formal quantifications thereof, as this is absolutely new territory! I recommend checking out the papers I've cited above, if you're more interested in that. ;)