[BUG] Eigenvector centrality for disconnected graphs
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Iniziate dal punto di ingresso eigenvector_centrality(g) e riproducete ripetutamente l’esempio disconnesso a sei nodi riportato nell’issue. Esaminate le alternative elencate e il comportamento di Matlab a cui si fa riferimento; una modifica completa richiede un risultato concordato e una copertura che mostri una gestione stabile dei grafi disconnessi, ma attualmente l’issue non specifica quale comportamento implementare.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description of bug
In a disconnected graph, eigenvector_centrality sometimes delivers random results.
g = SimpleGraph(6)
add_edge!.(Ref(g), 1:3, (1:3)')
add_edge!.(Ref(g), 4:6, (4:6)')
eigenvector_centrality(g)
Run this multiple times, the numbers are always different.
Strictly speaking,
Eigenvector centrality is not well-defined for disconnected graphs since the centrality scores of the individual components are independent of each other
Here's what Matlab does
[...] If there are several disconnected components, then the algorithm computes the eigenvector centrality individually for each component, then scales the scores according to the percentage of graph nodes in that component. The centrality score of disconnected nodes is 1/numnodes(G).
https://de.mathworks.com/help/matlab/ref/graph.centrality.html
Potential fixes
- add a warning to the documentation
- check if a graph is connected and warn/error if it isn't
- emulate Matlab's behavior
- Lingua principale
- Julia
- Stelle
- 540
- Fork
- 130
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaGraphs/Graphs.jl
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
JuliaGraphs/Graphs.jl#521 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 42/100
JuliaGraphs/Graphs.jl#504 · 4 commenti ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 55/100
JuliaGraphs/Graphs.jl#498 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
JuliaGraphs/Graphs.jl#497 · 1 commento ·
-
good first issue
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
JuliaGraphs/Graphs.jl#483 · 3 commenti ·
Tutte le issue di JuliaGraphs/Graphs.jl
Issue simili
-
`AMSGrad` state starts at `epsilon` instead of zero, so zero gradients move parameters and small gradients are dampedForse già presa @parth-patel010 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
FluxML/Optimisers.jl#247 · 1 commento ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
OpenFUSIONToolkit/GPEC#644 ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
SciML/DataDrivenDiffEq.jl#694 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
JuliaLang/LinearAlgebra.jl#1834 ·
I maintainer di solito rispondono entro 1 giorno