Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

minor changes in paper and bib #2

Closed
wants to merge 15 commits into from
Prev Previous commit
Next Next commit
add ORCID; minor edits
  • Loading branch information
lucasmccabe committed Oct 3, 2022
commit 59b2f55580eab465d2cd21abdd78c684df1769d5
7 changes: 4 additions & 3 deletions paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ tags:
- information theory
authors:
- name: Lucas H. McCabe
orcid: 0000-0002-7383-2823
affiliation: "1, 2"
affiliations:
- name: Digital and Analytic Solutions, Logistics Management Institute
Expand Down Expand Up @@ -41,7 +42,7 @@ Since then, source inference algorithms have been developed across subject areas

# Background

Given an undirected graph $G=(V, E)$ with vertex set $V$ and edge set $E$, a diffusion process begins with a source set $S \subseteq V$ and spreads along the edges according to some (usually stochastic) propagation function. It is common for diffusion processes to invoke formalizations from epidemiology, such as the Susceptible-Infected (SI) model, which can represent information spread, or the Susceptible-Infected-Recovered (SIR) model, which can represent dynamics more invocative of viral epidemics. Even when describing metaphorical contagion, such as rumors, it is standard to refer to vertices affected by the spreading process as "infected."
Given an undirected graph $G=(V, E)$ with vertex set $V$ and edge set $E$, a diffusion process begins with a source set $S \subseteq V$ and spreads along the edges according to some (usually stochastic) propagation function. It is common for diffusion processes to invoke formalizations from epidemiology, such as the Susceptible-Infected (SI) model, which can represent information spread, or the Susceptible-Infected-Recovered (SIR) model, which can represent dynamics more evocative of viral epidemics. Even when describing metaphorical contagion, such as rumors, it is standard to refer to vertices affected by the spreading process as "infected."

The infection subgraph $I_t$ is the subgraph of $G$ induced by the infected vertices at time $t$. In the single-source SI model, $I_t$ is guaranteed to be connected. A common setting for source localization is to infer $S$ from some $I_t$. More recently, some techniques have incorporated information from a small set of observers, who record the time at which they become infected [@zhu2016locating].

Expand All @@ -53,7 +54,7 @@ Broadly speaking, source estimators fall into one of two categories: message-pas

``cosasi`` is available under the [MIT License](https://choosealicense.com/licenses/mit/). The package may be cloned from the [GitHub repository](https://github.com/lmiconsulting/cosasi) or via [PyPI](https://pypi.org/project/cosasi/): ``pip install cosasi``.

Documentation is provided via [Read the Docs](https://cosasi.readthedocs.io/), including a [tutorial](https://cosasi.readthedocs.io/en/latest/tutorial.html) introducing major functionality and a detailed [API reference](https://cosasi.readthedocs.io/en/latest/apiref.html). Extensive unit testing is employed throughout the libary, with ~97% code coverage.
Documentation is provided via [Read the Docs](https://cosasi.readthedocs.io/), including a [tutorial](https://cosasi.readthedocs.io/en/latest/tutorial.html) introducing major functionality and a detailed [API reference](https://cosasi.readthedocs.io/en/latest/apiref.html). Extensive unit testing is employed throughout the library, with ~97% code coverage.


# Similar Software
Expand All @@ -62,7 +63,7 @@ To the author's knowledge, the only comparable and active source localization so
- **Presentation**: `RPaSDT` is a GUI toolkit. `cosasi` is an importable package, with extensive documentation and unit testing.
- **Benchmarking**: `RPaSDT` does not provide automatic benchmarking, whereas this is a core feature of `cosasi`.
- **Multi-Source Capabilities**: Multi-source inference in `RPaSDT` is generally performed by partitioning the infection subgraph and applying single-source algorithms to each partition. `cosasi` implements this strategy, as well, but also supports "natural" multi-source inference that does not require repurposing single-source techniques.
- **Estimator Utilities**: When extending single-source algorithms to the multi-source regime (as described above), it is generally necessary to specify the number of clusters into which we partition the infection subgraph - that is, the hypothesized number of infection sources. `cosasi` provides a handful of relevant techniques for estimating this quantity, including the Eigengap heuristic [@von2007tutorial] and Minimum Description Length [@prakash2012spotting].
- **Estimator Utilities**: When extending single-source algorithms to the multi-source regime (as described above), it is generally necessary to specify the number of clusters into which we partition the infection subgraph - that is, the hypothesized number of infection sources. `cosasi` provides a handful of relevant techniques for estimating this quantity, including the *Eigengap* heuristic [@von2007tutorial] and *Minimum Description Length* [@prakash2012spotting].
- **Multiple Information Types**: Some source inference algorithms require information other than an infection subgraph. For instance, *Earliest Infection First* relies on a collection of observers, who report the time at which they become infected [@zhu2016locating]. `cosasi` provides multiple methods for providing state information to the source inference modules, enabling a wider array of potential localization algorithms.

[`Whisper`](http://temigo.github.io/projects/whisper-app/) was an earlier, thematically similar web application. The project has been inactive since 2016, the web interface is no longer online, and the underlying library is less feature-rich than `cosasi` or `RPaSDT`.
Expand Down