Skip to main content

High-performance multi-objective community detection for complex networks, with a Rust backend.

Project description

pymocd logo

Multi-Objective Community Detection Algorithms

PyPI Publish Rust Compilation PyPI - Version PyPI - License

pymocd is a Python library, powered by a Rust backend, for performing efficient multi-objective evolutionary community detection in complex networks. This library is designed to deliver enhanced performance compared to traditional methods, making it particularly well-suited for analyzing large-scale graphs.

Navigate the Documentation for detailed guidance and usage instructions.


Community Detection

The HP-MOCD algorithm for example, identifies community structures within a graph. It proposes a solution by grouping nodes into distinct communities, as illustrated below:

![Example](res/example.gif)

Getting Started

Installing the library using pip interface:

pip install pymocd

For an easy usage:

import networkx
import pymocd

G = networkx.Graph() # Your graph
alg = pymocd.HpMocd(G)
communities = alg.run()

[!IMPORTANT] Graphs must be provided in NetworkX or Igraph compatible format.

Refer to the official Documentation for detailed instructions and more usage examples.

Contributing

We welcome contributions to pymocd! If you have ideas for new features, bug fixes, or other improvements, please feel free to open an issue or submit a pull request. This project is licensed under the GPL-3.0 or later.


Citation

If you use pymocd, PRISM or the HP-MOCD algorithm in your research, please cite the following paper:

@article{Santos2025,
  author    = {Santos, Guilherme O. and Vieira, Lucas S. and Rossetti, Giulio and Ferreira, Carlos H. G. and Moreira, Gladston J. P.},
  title     = {A high-performance evolutionary multiobjective community detection algorithm},
  journal   = {Social Network Analysis and Mining},
  year      = {2025},
  volume    = {15},
  number    = {1},
  pages     = {110},
  doi       = {10.1007/s13278-025-01519-7},
  url       = {https://doi.org/10.1007/s13278-025-01519-7},
  issn      = {1869-5469},
  date      = {2025-11-18}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymocd-4.0.0.tar.gz (1.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pymocd-4.0.0-cp313-cp313-win_amd64.whl (429.8 kB view details)

Uploaded CPython 3.13Windows x86-64

pymocd-4.0.0-cp313-cp313-manylinux_2_34_x86_64.whl (543.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

pymocd-4.0.0-cp313-cp313-macosx_11_0_arm64.whl (473.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pymocd-4.0.0-cp312-cp312-win_amd64.whl (429.9 kB view details)

Uploaded CPython 3.12Windows x86-64

pymocd-4.0.0-cp312-cp312-manylinux_2_34_x86_64.whl (544.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

pymocd-4.0.0-cp312-cp312-macosx_11_0_arm64.whl (473.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pymocd-4.0.0-cp311-cp311-win_amd64.whl (431.3 kB view details)

Uploaded CPython 3.11Windows x86-64

pymocd-4.0.0-cp311-cp311-manylinux_2_34_x86_64.whl (548.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

pymocd-4.0.0-cp311-cp311-macosx_11_0_arm64.whl (476.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pymocd-4.0.0-cp310-cp310-win_amd64.whl (429.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pymocd-4.0.0-cp310-cp310-manylinux_2_34_x86_64.whl (549.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

pymocd-4.0.0-cp310-cp310-macosx_11_0_arm64.whl (476.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file pymocd-4.0.0.tar.gz.

File metadata

  • Download URL: pymocd-4.0.0.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pymocd-4.0.0.tar.gz
Algorithm Hash digest
SHA256 32680b37c3d2300333bfe5ff740c5b00ec8f56c215852319c200a6c671995812
MD5 dbd73801214c2a0eff76e1c9f15fcb18
BLAKE2b-256 f977db8d4dd5574702bd650c48a44998250b6fd3c6ce2628a3478eddf62bbf0e

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pymocd-4.0.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 429.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pymocd-4.0.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1c8c27beb00aaef1f491652a7339692be0be353cfefb9a94e7617f7e4b085246
MD5 1a46f5249fe8ab36cf00a10e9d287566
BLAKE2b-256 c310b40f275227f9eb873915ffd9dc56f121e5ad9b49da88aac727cd1ea72768

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 c55823e4963a136ad48c7ee960e3e244320da2280e5a110d50ed0c3c1130b70b
MD5 945b2dde50177b8846f213e9935ca067
BLAKE2b-256 8afcd14dcdf56cff4be41eb1f3ea44233f226d247a884ade299bdaadecb05610

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c9462d87088cfdcabfe63382f1cd1a27399a4e5ed76117b61aeee2d8c0cadd62
MD5 d53145cc982f4c728df130d480703cc1
BLAKE2b-256 be0143e6b8b565c8c7ea8450585ed86bc87c61a6307ca6bc52552fc03454ac6d

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pymocd-4.0.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 429.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pymocd-4.0.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b75a5366cc6396bbecf40b46b152f125251c7c5cdd341d425663df4c85af8023
MD5 37f0e56d1800f42a79c9b6898e47fabe
BLAKE2b-256 1ef5d3bdb9f2922949b0690e55646847338648730028e1528317b70944190990

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 55b7df94b25f8abbbc10c97a65258251e132e59e8e58a34cdb50393d0207f07c
MD5 90d24f1ac70995c2f4d3a1a69070e8bc
BLAKE2b-256 6824dfa6b682fcb334b4fa3823a25f31099573d1921b73d3e043c27c3b8e6aca

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2911c6636c7a134dd7b296137723841014ddd8069aaf98dbd990bf26152b6dca
MD5 34a58c641cc951f1818b44f5974db3d2
BLAKE2b-256 8e1512a475d2f1c6659401be4a5aa12fb17a2af6dd676b898af43299bc261edb

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pymocd-4.0.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 431.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pymocd-4.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2976a4532cbbbeba9713df84433a79d5297085304b41342474ff5daa73bb4267
MD5 ceda5d88770afd18b452b3af80831fe5
BLAKE2b-256 d6247528061d00b2cbe03117a1ff1985251add492cced22358ae1d00e4807b94

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 282974df0025589c7c58890edc501d4086d244de06fcfd9db504c80ddf914917
MD5 e1c6934aa11ffd2cd48d2e7a456cb3f4
BLAKE2b-256 b8d1fceb6ec39069ee4c2704a69a6be39540fd7a4c8a975e475e0bad19743b72

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d677df796a1153d08cf0de7482b42b679f77212b52977a6fb39af97bebd820e7
MD5 bf145fc394de0daf9a3a96777c6148a7
BLAKE2b-256 2bcb112f282d713b3a93cf9669675d4f9bfd358b16ee96280c7a6bff7d9f1c25

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pymocd-4.0.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 429.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pymocd-4.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0900f7c8226cc4ab0230f83eb09dd0cb3dad338bfee35dbb6f62006f55e822c0
MD5 a9d2491ddf6b2103dc33d1142889d036
BLAKE2b-256 2b9fc8f08e9e5a9b2a2719d01e009efec026cb90909bcbd4bd075c2d2b314717

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 e28752878ca3027d9f01e39f03c99becd27d0064cda3a57281b4b747547dc312
MD5 280e22aa422c11144185ed1aedcc8063
BLAKE2b-256 69c387f16f9bdf7235d8cad8bea4e87752a5fee98b6d1ff43779fc6aa5e60029

See more details on using hashes here.

File details

Details for the file pymocd-4.0.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymocd-4.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99a6891a753542a4a629ef3694033daabd65159f43046abec6f3df405e538150
MD5 00d7cfa224778e1b121412b84b15e320
BLAKE2b-256 4415ea664b2c14f0677f3710fa8f57ca562b48f79a7c878e7deba216f63466e1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page