-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow calculation of weights on the fly #85
Comments
adinapoli-mndc
added a commit
that referenced
this issue
Oct 30, 2019
Includes (squashed) commits: * Implement weighted naive algorithm * Simply naive rounds after code review * Use upstream (unreleased) graph_api crate * Fix csv importer * Fix csv importer * Try to diversify the RNG for each thread * Fix the mock generators * Fix binaries * Fix benchmarks * Rebase master * Port the code to latest graph_api
adinapoli-mndc
added a commit
that referenced
this issue
Oct 30, 2019
Includes (squashed) commits: * Implement weighted naive algorithm * Simply naive rounds after code review * Use upstream (unreleased) graph_api crate * Fix csv importer * Fix csv importer * Try to diversify the RNG for each thread * Fix the mock generators * Fix binaries * Fix benchmarks * Rebase master * Port the code to latest graph_api
adinapoli-mndc
added a commit
that referenced
this issue
Oct 31, 2019
* Fix #85 (on-the-fly weight calculation) Includes (squashed) commits: * Implement weighted naive algorithm * Simply naive rounds after code review * Use upstream (unreleased) graph_api crate * Fix csv importer * Fix csv importer * Try to diversify the RNG for each thread * Fix the mock generators * Fix binaries * Fix benchmarks * Rebase master * Port the code to latest graph_api * Use graph-api@master
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
In preparation for the incremental monte carlo algorithm, we would need a better model to work with a Graph. Currently we have this slightly artificial
Normalised
newtype wrapper which witnesses the fact we import the graph using an adjacency matrix and, as such, we normalise all the edges beforehand, and the final graph is created with a single outgoing edge for each pair of nodes(N1,N2)
.Such representation is also problematic when it comes to #83, because the trustRank phase happens inside the
GraphAlgorithm::execute
and as such we cannot mutate the inputGraph
. This means we need to be able to calculate the weight for each edge dynamically as the graph evolves. In order to do so, at the very minimum we would need to store somewhere the total contributions for an account and on the edges the number of contributions (if any).Another alternative would be to store everything in some kind of hashmap, and leave the
EdgeData
alone. More design & thinking is required.The text was updated successfully, but these errors were encountered: