R プログラミングを使用して、複雑なネットワークで影響力のあるノードを見つけることに取り組んでいます。ノードがグラフ内に持つ隣接ノードの数を意味する次数中心性を使用したいと考えています。グラフと各ノードの次数中心性があります。ここで、各ノードからウイルスを拡散し始めたときに、指定された時間内に感染するノードの数を知りたいと考えています。私の研究によると、「igraph」パッケージで見つけたSIR(感受性、感染、回復)流行モデルを使用する必要がありますが、問題は開始ノードを指定できないことです。この関数は、SIR 方程式に基づいて機能するようです。
s'= -(beta)SI
I' = (beta)SI - (gamma)I
R' = (gamma)I
ここで、ベータは感染パラメータ、ガンマは回復パラメータです。igraph SIR コードは次のとおりです。
function (graph, beta, gamma, no.sim = 100)
{
if (!is_igraph(graph)) {
stop("Not a graph object")
}
beta <- as.numeric(beta)
gamma <- as.numeric(gamma)
no.sim <- as.integer(no.sim)
on.exit(.Call("R_igraph_finalizer", PACKAGE = "igraph"))
res <- .Call("R_igraph_sir", graph, beta, gamma, no.sim,
PACKAGE = "igraph")
class(res) <- "sir"
res
}
It seems that most of the work is being done in "R_igraph_sir" but I cant find such a function in that package. Is there any way to set the starting node?