Skip to content

[Discussion] Replace the randomnet horrorscape #139

@dglmoore

Description

@dglmoore

This is a discussion question. Please comment with any thoughts you may have.

Using the randomnet submodule to produce random networks is kind of a nightmare. In an ideal world, what would the perfect API look like to you? Give an example of how you'd like to be able to perform the the following (vague) tasks:

  1. Generate a random boolean network (RBN) of a particular size.
  2. Generate an RBN with a particular mean degree.
  3. Generate a random network with the same size and mean degree as another network.
  4. Generate a random network with the same size, mean in-degree and number of canalyzing edges as another network.

Note: we aren't looking for implementations, just suggested API. For example, one possible response to 1 is

>>> net = WTNetwork.random(size=5)

or maybe

>>> from neet.boolean.conv import logic_to_wt
>>> logic_net = randomnet.rand(size=5)
>>> net = logic_to_wt(logic_net)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions