networkz


Namenetworkz JSON
Version 1.0.6 PyPI version JSON
download
home_pagehttps://github.com/ariel-research/networkz
SummaryNetworkX plus plus
upload_time2023-10-29 09:48:40
maintainer
docs_urlNone
authorAriel University
requires_python>=3.8
licenseMIT
keywords optimization graphs
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # NetworkZ

NetworkZ is a library of graph algorithms in Python. It is an extension of the [NetworkX](https://github.com/networkx/networkx). It contains (by import) everything that is in NetworkX, plus some additional algorithms that were submitted into NetworkX but not merged yet. Currently, NetworkZ contains the following additional algorithms:

* [Rank-maximal matching](networkz/algorithms/bipartite/rank_maximal_matching.py): by Oriya Alperin, Liel Vaknin and Amiel Lejzor.
* [Social-aware coalition formation](networkz/algorithms/approximation/coalition_formation.py) - by Victor Kushnir.

## Installation

```
pip install networkz
```

This installs the latest version of networkx, and the new algorithms added in networkz.


## Usage

### Rank Maximal Matching Algorithm
A rank-maximal matching is a matching that maximizes the number of agents who are matched to their 1st priority; subject to that, it maximizes the number of agents matched to their 2nd priority; and so on.

```
import networkz as nx
G = nx.Graph()
G.add_nodes_from(["agent1", "agent2"], bipartite=0)
G.add_nodes_from(["product1", "product2"], bipartite=1)
G.add_weighted_edges_from([("agent1", "product1", 1), ("agent1", "product2", 1), ("agent2", "product2", 2)])
matching = nx.rank_maximal_matching(G, rank="weight")
print(matching)
```

See [demo website](https://rmm.csariel.xyz/) for more information.

### Social-aware coalition formation

(TODO)


## Contribution

Any additions or bug-fixes to `networkx` should first be submitted there, according to the [NetworkX Contributor Guide](https://github.com/networkx/networkx/blob/main/CONTRIBUTING.rst).

If the pull-request is not handled, you are welcome to submit it here too.






            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ariel-research/networkz",
    "name": "networkz",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "optimization,graphs",
    "author": "Ariel University",
    "author_email": "networkz@csariel.xyz",
    "download_url": "https://files.pythonhosted.org/packages/3f/2b/2f7891a9d4f17c5b6e5b77d668d074cdb34d638f35bbbdbdaff922f51ec2/networkz-1.0.6.tar.gz",
    "platform": null,
    "description": "# NetworkZ\n\nNetworkZ is a library of graph algorithms in Python. It is an extension of the [NetworkX](https://github.com/networkx/networkx). It contains (by import) everything that is in NetworkX, plus some additional algorithms that were submitted into NetworkX but not merged yet. Currently, NetworkZ contains the following additional algorithms:\n\n* [Rank-maximal matching](networkz/algorithms/bipartite/rank_maximal_matching.py): by Oriya Alperin, Liel Vaknin and Amiel Lejzor.\n* [Social-aware coalition formation](networkz/algorithms/approximation/coalition_formation.py) - by Victor Kushnir.\n\n## Installation\n\n```\npip install networkz\n```\n\nThis installs the latest version of networkx, and the new algorithms added in networkz.\n\n\n## Usage\n\n### Rank Maximal Matching Algorithm\nA rank-maximal matching is a matching that maximizes the number of agents who are matched to their 1st priority; subject to that, it maximizes the number of agents matched to their 2nd priority; and so on.\n\n```\nimport networkz as nx\nG = nx.Graph()\nG.add_nodes_from([\"agent1\", \"agent2\"], bipartite=0)\nG.add_nodes_from([\"product1\", \"product2\"], bipartite=1)\nG.add_weighted_edges_from([(\"agent1\", \"product1\", 1), (\"agent1\", \"product2\", 1), (\"agent2\", \"product2\", 2)])\nmatching = nx.rank_maximal_matching(G, rank=\"weight\")\nprint(matching)\n```\n\nSee [demo website](https://rmm.csariel.xyz/) for more information.\n\n### Social-aware coalition formation\n\n(TODO)\n\n\n## Contribution\n\nAny additions or bug-fixes to `networkx` should first be submitted there, according to the [NetworkX Contributor Guide](https://github.com/networkx/networkx/blob/main/CONTRIBUTING.rst).\n\nIf the pull-request is not handled, you are welcome to submit it here too.\n\n\n\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "NetworkX plus plus",
    "version": "1.0.6",
    "project_urls": {
        "Bug Reports": "https://github.com/ariel-research/networkz/issues",
        "Homepage": "https://github.com/ariel-research/networkz",
        "Source Code": "https://github.com/ariel-research/networkz"
    },
    "split_keywords": [
        "optimization",
        "graphs"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "05103b952be9ce8795211f40aefacdf9fb8e32025b1fc0e4921dd9e086ce6a81",
                "md5": "e1cbf5390b8960912b5038f6db738802",
                "sha256": "5513fc5e3deeaafa780fdce7031c8ad6599ff35673ab7ffbda9c05d05778e598"
            },
            "downloads": -1,
            "filename": "networkz-1.0.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e1cbf5390b8960912b5038f6db738802",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 15312,
            "upload_time": "2023-10-29T09:48:37",
            "upload_time_iso_8601": "2023-10-29T09:48:37.842984Z",
            "url": "https://files.pythonhosted.org/packages/05/10/3b952be9ce8795211f40aefacdf9fb8e32025b1fc0e4921dd9e086ce6a81/networkz-1.0.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3f2b2f7891a9d4f17c5b6e5b77d668d074cdb34d638f35bbbdbdaff922f51ec2",
                "md5": "f0d5d96df07af933cc45f2300b341d8c",
                "sha256": "c87139c8a41e7c98fb06ffdabfbee16c9187c0177a8378f3cbb62d724a3f290c"
            },
            "downloads": -1,
            "filename": "networkz-1.0.6.tar.gz",
            "has_sig": false,
            "md5_digest": "f0d5d96df07af933cc45f2300b341d8c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 13438,
            "upload_time": "2023-10-29T09:48:40",
            "upload_time_iso_8601": "2023-10-29T09:48:40.226394Z",
            "url": "https://files.pythonhosted.org/packages/3f/2b/2f7891a9d4f17c5b6e5b77d668d074cdb34d638f35bbbdbdaff922f51ec2/networkz-1.0.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-29 09:48:40",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ariel-research",
    "github_project": "networkz",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "networkz"
}
        
Elapsed time: 0.52002s