Skip to content
This repository has been archived by the owner on Oct 8, 2021. It is now read-only.

Dominating Set #1039

Merged
merged 2 commits into from
Oct 21, 2018
Merged

Dominating Set #1039

merged 2 commits into from
Oct 21, 2018

Conversation

SohamTamba
Copy link
Contributor

@SohamTamba SohamTamba commented Oct 5, 2018

Greedy heuristics for Dominating Set.

We really should consider changing the organisation of these heuristics for NP-Complete optimisation problems (vertex_cover, independent_set, dominating_set).

cc: @somil55 @sbromberger

@sbromberger
Copy link
Owner

We really should consider changing the organisation of these heuristics for NP-Complete optimisation problems.

What do you have in mind?

@SohamTamba
Copy link
Contributor Author

SohamTamba commented Oct 5, 2018

I have a few ideas but they all have flaws. Maybe we can make a combination of them

  1. Optimisation: Too broad, shortest paths also comes under this category
  2. Vertex Set: Too broad
  3. NP-Hard/Heuristic: Not very pleasant

How about Optimal Vertex Set?

@codecov
Copy link

codecov bot commented Oct 5, 2018

Codecov Report

Merging #1039 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #1039      +/-   ##
==========================================
+ Coverage   99.82%   99.82%   +<.01%     
==========================================
  Files          86       89       +3     
  Lines        2821     2847      +26     
==========================================
+ Hits         2816     2842      +26     
  Misses          5        5

@simonschoelly
Copy link
Contributor

simonschoelly commented Oct 5, 2018

What about calling it "Combinatorics" ?
If you call it NP-Hard/Heuristic, you always must find a proof for that before you can put your problem there :)

@SohamTamba
Copy link
Contributor Author

@sbromberger what do you think?

@sbromberger
Copy link
Owner

@sbromberger what do you think?

I don't have a well-formed opinion on the naming, but if this PR is ready for review, I'm game :) I'll probably want @jpfairbanks or @simonschoelly to review as well.

Copy link
Contributor

@simonschoelly simonschoelly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is DegreeDominatingSet? I think this should be explained somewhere.
Do these algorithms give some approximation guarantee such as outcome <= 2 * OPT ? Then you could mention that in the documentation.

src/Parallel/dominatingset/minimal_dom_set.jl Outdated Show resolved Hide resolved
src/dominatingset/degree_dom_set.jl Outdated Show resolved Hide resolved
src/dominatingset/minimal_dom_set.jl Show resolved Hide resolved
src/dominatingset/minimal_dom_set.jl Show resolved Hide resolved
src/dominatingset/minimal_dom_set.jl Outdated Show resolved Hide resolved
src/dominatingset/minimal_dom_set.jl Outdated Show resolved Hide resolved
src/dominatingset/degree_dom_set.jl Outdated Show resolved Hide resolved
src/dominatingset/degree_dom_set.jl Show resolved Hide resolved
@jpfairbanks
Copy link
Contributor

I agree with @simonschoelly's comments.

@SohamTamba SohamTamba force-pushed the DominatingSet branch 2 times, most recently from 7ff2625 to 498553f Compare October 13, 2018 19:58
@SohamTamba
Copy link
Contributor Author

@simonschoelly there aren't approximation factors for these algos that I'm aware of

@sbromberger
Copy link
Owner

I'm ok with it being part of this PR, but it should probably go into utils.jl.

@SohamTamba SohamTamba force-pushed the DominatingSet branch 2 times, most recently from 570823a to 8e0f9cc Compare October 19, 2018 18:03
@SohamTamba
Copy link
Contributor Author

@sbromberger I think Travis must be restarted.

Please take a look

@SohamTamba
Copy link
Contributor Author

I think this is ready

@simonschoelly
Copy link
Contributor

Isn't your algorithm the one described here: http://ac.informatik.uni-freiburg.de/teaching/ss_12/netalg/lectures/chapter7.pdf ? Then it has an approximation factor.

@SohamTamba
Copy link
Contributor Author

Yeah you're right, the approximation factor is ln(maximum(degree(g)))+2

@sbromberger sbromberger merged commit bdd1188 into sbromberger:master Oct 21, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants