wolfe-pack / wolfe

Wolfe Language and Engine
https://wolfe-pack.github.io/wolfe
Apache License 2.0
135 stars 17 forks source link

Allow default edge schedule based on order in which edges where added to graph #92

Closed riedelcastro closed 10 years ago

riedelcastro commented 10 years ago

Sometimes we want to control the message passing schedule manually. This used to be possible by just following the order in which edges are added to the factor graph, and setting schedule=false. However, currently ??? is returned for schedule=false.

rockt commented 10 years ago

I just discussed this with Luke and it seems that since we introduced directed edges for BP it is not clear anymore how to construct a schedule based on the order in which undirected edges were added to the graph. If you add f₁ -- n₁, f₁ -- n₂ and f₂ -- n₃ the direction of these edges would need to be inferred. As an alternative we thought of providing BP with a schedule (i.e. a list of directed edges). If this schedule is empty we run the scheduler.

riedelcastro commented 10 years ago

Can't you just assume that an added edge is always forward, and then add the "reverse" edges needed to reproduce the behaviour before?