sbromberger / LightGraphs.jl

An optimized graphs package for the Julia programming language
Other
672 stars 185 forks source link

gsoc 2020 #1361

Closed alimamdouh212 closed 4 years ago

alimamdouh212 commented 4 years ago

Hello, i am willing to participate in gsoc 2020 with JuliaGraphs ,till now, i have fixed the topological sort bug, and the dfs performance bug, and i am willing for more contributions. I want to support JuliaGraphs with the following : 1- till now wee don’t have min-cost-max-flow algorithm, so i want to implement the, the network simplex algorithm and cost scaling algorithm, the two considered to be the most efficient. 2- the current push-relabel algorithm implements fifio order without global relabeling, so it can be more efficient if we apply global relabling with highest label. 3- add a min-cost-max-flow algorithm for multi-commodity flow. so, i was wondering if that would make an acceptable proposal, and if so, is there is anything i can add/remove to it ?.

Thank you

abhinavmehndiratta commented 4 years ago

https://github.com/JuliaGraphs/LightGraphsFlows.jl have you checked this out ? Might be useful.

alimamdouh212 commented 4 years ago

@abhinavmehndiratta yes i have, and found it missing some algorithms that i suggest to add, if you will be mentor and have some interest in this proposal, or can help me contact some mentor that may be interested in this proposal, i would be grateful.

sbromberger commented 4 years ago

Have you looked at https://julialang.org/jsoc/gsoc/graphs/ ? Those are the topics for which we're entertaining applications this year.

alimamdouh212 commented 4 years ago

@sbromberger Yes. i have, but i feel very Enthusiastic for this proposal, will it be acceptable ?

alimamdouh212 commented 4 years ago

most graph libraries support min-cost-max-flow, it is very important algorithm, and from what i have studied , it is very fun topic to work in.

sbromberger commented 4 years ago

will it be acceptable ?

Only if we have an extra slot (after prioritizing the other two topics) and a willing mentor, each of which is unlikely in itself and even less likely in combination.

alimamdouh212 commented 4 years ago

@sbromberger why it is unlikely ?

sbromberger commented 4 years ago

Because if we get any GSOC slots at all, they will be used to prioritize those proposals that match what we're currently looking for. While the topics you're proposing might be interesting, they're not among our current priorities.

If we, by some miracle, have an extra slot after accepting proposals that are on-topic, then we'll consider other proposals. But it's more likely that we would give that extra slot to some other Julia project that needs help but didn't get enough slots.

alimamdouh212 commented 4 years ago

@sbromberger i mean you mentioned that even two slots are unlikely.

sbromberger commented 4 years ago

In the past, we've gotten anywhere from 0 - 2 slots. Even if we get a third slot, it is unlikely that we'll keep it. It's more likely that we'd give it to some other project that was underfunded.

I just want to set the expectation that we're going to prioritize proposals that address our stated needs, and that we most likely will not be entertaining any other proposals.

(The other way we might pursue proposals that don't match our two priorities is if NONE of the submissions addressed the priorities, but that's almost 0% chance because I know of at least 1 person who's planning on submitting on-topic.)

alimamdouh212 commented 4 years ago

@sbromberger could you tell me which one is that topic, co i can pursue the other, and we don’t have conflicts.

sbromberger commented 4 years ago

nope. I don't know for sure myself, and won't know until after the submission deadline. It also wouldn't be fair to the other applicants.

sbromberger commented 4 years ago

Closing this particular thread since the discussions are happening in our #graphs slack channel.