Skip to content

Releases: python-graphblas/graphblas-algorithms

2023.10.0

19 Oct 02:56
43c1731
Compare
Choose a tag to compare

Enhancements

  • Support NetworkX 3.2, which made many improvements to dispatching (#68, #77, #78)
  • Add support for Python 3.12 (#79)
  • Drop support for Python 3.8 (#77)

2023.6.0

08 Jun 21:46
1f5ccb6
Compare
Choose a tag to compare

New algorithms (#67)

  • algorithms.efficiency_measures.efficiency
  • algorithms.isomorphism.isomorph.fast_could_be_isomorphic
  • algorithms.isomorphism.isomorph.faster_could_be_isomorphic
  • algorithms.lowest_common_ancestors.lowest_common_ancestor
  • algorithms.operators.unary.complement
  • algorithms.operators.unary.reverse
  • algorithms.shortest_paths.weighted.bellman_ford_path_length
  • linalg.bethehessianmatrix.bethe_hessian_matrix
  • linalg.graphmatrix.adjacency_matrix
  • linalg.laplacianmatrix.laplacian_matrix
  • linalg.laplacianmatrix.normalized_laplacian_matrix
  • linalg.modularitymatrix.directed_modularity_matrix
  • linalg.modularitymatrix.modularity_matrix

2023.5.0

04 May 18:01
7dfd65b
Compare
Choose a tag to compare

Enhancements

  • Add support for Python 3.11 (#61)
  • Add logo and benchmarks to README (#60)

New algorithms (#51, #61, #62, #64)

  • Components
    • is_connected
    • is_weakly_connected
    • node_connected_component
  • Generators
    • ego_graph
  • Link Analysis
    • google_matrix
  • Operators
    • compose
    • difference
    • disjoint_union
    • full_join
    • intersection
    • symmetric_difference
    • union
  • Shortest Paths
    • all_pairs_shortest_path_length
    • bellman_ford_path
    • floyd_warshall_numpy
    • negative_edge_cycle
    • single_source_shortest_path_length
    • single_target_shortest_path_length
  • Traversal
    • bfs_layers
    • descendants_at_distance

2023.2.1

27 Feb 19:03
6de1fd6
Compare
Choose a tag to compare

Note: this is a re-release of 2023.2.0, because 2023.2.0 didn't build and upload to PyPI

  • Add scripts to run benchmarks and download data (#39)
  • Add floyd_warshall algorithm for all-pairs shortest path (#42)
  • Add floyd_warshall_predecessor_and_distance (#43)
  • Add all_pairs_bellman_ford_path_length and single_source_bellman_ford_path_length (#44)
  • Add NodeNodeMap class and matrix_to_nodenodemap and matrix_to_vectornodemap methods (#43)
    • These can replace matrix_to_dicts
  • Add fill_value to NodeMap (#43)
  • Allow NodeMap values to be interpreted as keys (#43)
  • Add more cached properties (#44)
    • min_diagonal (and other {monoid_name}_diagonal)
    • has_negative_diagonal
    • has_negative_edges- and has_negative_edges+
    • is_iso
    • iso_value
  • Add normalize_chunksize and partition utility functions to help run algorithms chunkwise (#47)
  • Misc. maintenance (#41, #45, #46)

2023.2.1a0

27 Feb 17:50
a3dbf9b
Compare
Choose a tag to compare
2023.2.1a0 Pre-release
Pre-release

No functional changes from 2023.2.0

Pre-release to test automatic upload to PyPI, which didn't work for 2023.2.0.

2023.2.0

27 Feb 15:39
24fd2b6
Compare
Choose a tag to compare
  • Add scripts to run benchmarks and download data (#39)
  • Add floyd_warshall algorithm for all-pairs shortest path (#42)
  • Add floyd_warshall_predecessor_and_distance (#43)
  • Add all_pairs_bellman_ford_path_length and single_source_bellman_ford_path_length (#44)
  • Add NodeNodeMap class and matrix_to_nodenodemap and matrix_to_vectornodemap methods (#43)
    • These can replace matrix_to_dicts
  • Add fill_value to NodeMap (#43)
  • Allow NodeMap values to be interpreted as keys (#43)
  • Add more cached properties (#44)
    • min_diagonal (and other {monoid_name}_diagonal)
    • has_negative_diagonal
    • has_negative_edges- and has_negative_edges+
    • is_iso
    • iso_value
  • Add normalize_chunksize and partition utility functions to help run algorithms chunkwise (#47)
  • Misc. maintenance (#41, #45, #46)

2022.12.1

01 Dec 07:15
83bfa40
Compare
Choose a tag to compare
  • Update README to show installation instructions and basic usage (#34)
    • Including use as a NetworkX plugin!
  • Create Graph from Matrix as Graph(A) instead of Graph.from_graphblas(A)(#35)
  • Update more places to use to_coo and from_coo instead of to_values and from_values (#32)
  • Use faster algorithm for s_metric (#38)
  • Add environment.yml to create developer environment (#37)
  • Add DOI from Zenodo to README (#33)

2022.11.0

17 Nov 04:57
77c580c
Compare
Choose a tag to compare
  • Add plugin code to be a backend for NetworkX 3.0 to dispatch to
  • Add graphblas_algorithms.nxapi that "looks" like the NetworkX API
  • Add lots of algorithms and other nice things!

2022.4.1

27 Apr 03:05
e30c0b2
Compare
Choose a tag to compare
  • Updated to use python-graphblas instead of grblas
  • Added average_clustering, clustering, transitivity, and triangles for undirected, unweighted graphs
  • Added git pre-commit hooks
  • Added some helpful utility functions to make things easier/cleaner

2022.4.0

04 Apr 19:40
67a9e4d
Compare
Choose a tag to compare

First release!

graphblas-algorithms is just getting started. It only has PageRank:

  • graphblas_algorithms.pagerank matches NetworkX API and passes all NetworkX PageRank tests.
  • graphblas_algorithms.link_analysis.pagerank_core is a fast, GraphBLAS-only implementation that is used by the former.
    • This is the implementation to bring to benchmarking shootout.

This project is in alpha and may undergo significant changes.

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy