Next Article in Journal
An EEG Feature Extraction Method Based on Sparse Dictionary Self-Organizing Map for Event-Related Potential Recognition
Next Article in Special Issue
Using Zigzag Persistent Homology to Detect Hopf Bifurcations in Dynamical Systems
Previous Article in Journal
Blind Quality Evaluation for Screen Content Images Based on Regionalized Structural Features
Previous Article in Special Issue
Detecting Traffic Incidents Using Persistence Diagrams
 
 
Article
Peer-Review Record

An Efficient Data Retrieval Parallel Reeb Graph Algorithm

Algorithms 2020, 13(10), 258; https://doi.org/10.3390/a13100258
by Mustafa Hajij 1,* and Paul Rosen 2
Reviewer 1: Anonymous
Reviewer 2: Anonymous
Reviewer 3: Anonymous
Algorithms 2020, 13(10), 258; https://doi.org/10.3390/a13100258
Submission received: 15 August 2020 / Revised: 22 September 2020 / Accepted: 22 September 2020 / Published: 12 October 2020
(This article belongs to the Special Issue Topological Data Analysis)

Round 1

Reviewer 1 Report

This article aims at providing a parallelized algorithm for computing Reeb graphs for scalar valued functions defined on triangulated surfaces. In this work, the authors build on a sequential algorithm based on critical values and ascending paths to propose a parallelize version which roughly divides the function range in patches, computes the Reeb graphs of each patch, and connects their extremities to produce the final global Reeb graph. The authors show that there is a clear speedup for Reeb graph computation compared to the state of the art, provided that multiple processors are available. As a byproduct, the algorithm also outputs the level sets of regular and critical points, which allows to perform various geometry processing tasks, such as decomposing surfaces with segmentations of controlled topology, produced by systems of embedded curves.

Overall, I feel positive about this work. The contribution is interesting and useful. I feel that even though it is simple, the proposed method has some value for the computational topology community. I have two major concerns though:

---The method seems a bit incremental to me: the novelty of the paper only starts at section 5. I believe sections 7 and 8 should be greatly extended to better showcase efficiency and usefulness of the method, for instance by adding more comparisons to competing approaches.

---I am also quite concerned about clarity: there are A LOT of typos in the paper, which really impedes understanding sometimes. I would recommend the authors to proofread the manuscript before submitting it. Also, the comparison in section 7, which is supposed to be one of the major advantages of the approach, is quite light: it is not even clear from the text to which method the authors compare to, which makes it difficult to understanding the true meaning of the displayed speedup.

Author Response

Dear MDPI Reviewer:

 

In this document, we provide a detailed response and revision log to our paper titled "An Efficient Data Retrieval Parallel Reeb Graph Algorithm". We have taken every provided feedback seriously, and we believe we have addressed the majority of the concerns raised.

 

Comment :The method seems a bit incremental to me: the novelty of the paper only starts at section 5. I believe sections 7 and 8 should be greatly extended to better showcase efficiency and usefulness of the method, for instance by adding more comparisons to competing approaches.

 

Response :

We made major changes to address this concern. The following changes are made to the paper. 

(1) We added more details to Section 5 and it now consists of two subsections. The first subsection has the same material that existed earlier and the new one is "Consistent Parameterization of The Edges of the Reeb Graph" where we explain in detail a method we utilized to obtained better parameterization for the method earlier described in this section. We added the background needed for this section as well as some figures (13, 14 and 15) in the new version.


(2) In section 6 we added a new dataset as well as its speedup analysis.


(3) In section 7 we added a new subsection: 7.1. Choosing Morse Scalar Functions which discuss the scalar functions that we utilized for in the Application section. We described the methods to construct these functions in detail on triangulated meshes and we provide some figures to illustrate the main idea.

 

Comment The method seems a bit incremental to me: the novelty of the paper only starts at section 5. I believe sections 7 and 8 should be greatly extended to better showcase efficiency and usefulness of the method, for instance by adding more comparisons to competing approaches.

 

response :

We went over the paper in details and we fixed all the typos that we found. We addressed the comment about section 6,7 as well.

 

 

Reviewer 2 Report

My general recommendation is to accept the paper for publication.

This paper gives an algorithm for constructing the Reeb graph of a manifold (section 5) which can also be assumed to have a boundary (later in the paper).  The main claim to novelty is really the algorithmic strategy that is open to parallelization.  There is a survey of the literature in section 1.1 but I don't have expertise to say that is a complete comparison.  The subject itself is absolutely crucial for applications of Morse theory to computational topology.  I find the paper very well written, I enjoyed reading it.  The discussion is at a good level of generality and detail. The applications are convincing and well-chosen.

Author Response

Dear MDPI reviewer,

Thank you. We have addressed the language concerns and added a few more details to section 5,6,7 to make the contribution more useful.

Author Response File: Author Response.pdf

Reviewer 3 Report

The paper presents a (seemingly) new parallel algorithm for building the Reeb graph of an embedded surface. It is convincing, interesting, well documented and with fair experimentation.

The big problem of this article is the quality of presentation: sometimes this means even mathematical inaccuracy (see below), but above all English is extremely poor. The text seems to be badly translated word-by-word. Most singular and plural nouns are not consistent with the verbs in the sentence. Repetitions, typos, incomplete reconsiderations are an evidence of the fact that the text has not been proof-read before submitting.

A list of remarks follows. It is complete for what concerns mathematics, but not for language.


p.2

l.-2
Missing reference


p.3

l.-21
of --> of a

l.-9
manifolds -> manifold


p.4

l.11
is a is a --> is a

l.15 (suggestion)
all --> the corresponding

l.22 (suggestion)
is --> denotes

l.-1
the the --> the


p.5

Figure 1 has a common drawing error: boundaries with singular points; actually, it would be much easier to draw a more plausible boundary as a tight ellipse.

l.-6
to the --> the
the vertices --> the sets of vertices

l.-3
piece-wise --> a piece-wise

l.-2
complex --> subcomplex

l.-1
belong --> belong to
ATTENTION: Lk(v) is generally defined as the set (actually subcomplex) of _simplices_ belonging to the closure of star(v) but not to star(v); not only vertices.


p.6

l.2,4
I don't understand. If [u,v] denotes the simplex with u and v as vertices, then it cannot belong to Lk(v).

l.6
The authors probably mean that u_1, u_2 are vertices of Lk(v), but this must be written explicitly.

l.9
Take (v) out of the apex.

l.15,16
The second sentence of Remark 3.1 does not make any sense to me.

l.18
In what sense can f be simplicial?

l.23
traingulated --> triangulated

l.30
keys --> key

From now on I stop correcting English and orthography. The Authors should see to it.


p.7

Lemma 4.1 is not valid if M has empty boundary.


p.8

l.4
"a maximum and minimum point" ?


p.9

l.11
f(t) --> f^{-1}(t)

l.17
What is meant by
CR_f(t) \cap f^{-1)(t)
? If it is the set of simplices in the intersection, then the assertion is true. If it is the set of points, then it's not.


p.10

l.1-4
Are L(\overbar{CR_f(t)}) and H(\overbar{CR_f(t)}) the sets depicted in red and blue respectively in Figure 7? If this is the case, then the definition of \overbar{CR_f(t)} at p. 9, l.11-12, is incomplete.

l.24
f(v) --> f(w)
v --> w


p.11

Thm. 4.4
The statement is evidently false if the range of f is [a,b]. OK if the range is [a',b'] with a'<a, b \le b'.


p.12

l.-5
points p and q --> values f(p) and f(q)

 

 

Author Response

Dear MDPI Reviewer:

We would like to thank the reviewer for valuable comments. We went over the paper in details and we tried to correct as many English typos we were able to find. We also went over the comments provided below and corrected all of them except two :

 

Figure 1 has a common drawing error: boundaries with singular points; actually, it would be much easier to draw a more plausible boundary as a tight ellipse.

 

we did not exactly understand what the reviewer meany by this comment.

 

and this comment :

p.12

l.-5
points p and q --> values f(p) and f(q)

 

Actually p and q are correct here since p and q are points in the Reeb graph R(M,f) and we are considering the map $\pi$.

 

All other comments have been addressed. We also added some more details to sections 5,6,7.

 

Round 2

Reviewer 1 Report

The article is much better. I have just a few minor comments:

p2: ref 18 is mentioned two times
p5: "by given Banchoff"
p5: "subcomplex of of"
p5-6: I think there is a problem in upper/lower link definition: since it is impossible to find some [u,v] in Lk(v) (by definition of Lk(v)), the second set in the union is always empty... Also the equation for mixed link has a typo.
p6: what does "PL simple" means? I don't think it was defined before.
p20: it would make sense to also compare to other state-of-the-art methods for computing Reeb graphs (instead of your method with just one processor).

It would also be great to make some code available.

Author Response

We thank the reviewer for the valuable comments about our paper. We did the following changes :

 

-     p2: ref 18 is mentioned two times

       Fixed 

 

  • p5: "by given Banchoff"
  • fixed

 

 

 
     p5: "subcomplex of of"

  • fixed

 

  • p5-6: I think there is a problem in upper/lower link definition: since it is impossible to find some [u,v] in Lk(v) (by definition of Lk(v)), the second set in the union is always empty... Also the equation for mixed link has a typo.
  • fixed

 

 

  • p6: what does "PL simple" means? I don't think it was defined before.
  • Fixed :We added the meaning :Piece-wise Linear in the paper.

 

  • p20: it would make sense to also compare to other state-of-the-art methods for computing Reeb graphs (instead of your method with just one processor).
  • Typically in this setting the comparirion is done against the chosen sequential method to show that there parallelism does improve performance which what we did. For instance, speedup is the ratio between the sequential algorithm time against the parallel one. 

-It would also be great to make some code available.

We are planning to put out code online. However, for now our Reeb graph project is mixed with other projects that we are currently working on and have not published yet. We are planning to release the code of these projects all together.

 

Reviewer 3 Report

Much revision work has been done by the Authors. Still, there are some issues I had raised, which have been neither corrected nor commented. I think that this is unfair; as a reviewer I expect Authors either to correct (as has been done in most cases) or to contest a remark (as for my last one, where I was wrong and for which I apologize).

p.4

Figure 1
What I mean is that the boundary is drawn here as two circle arcs, the so called "ellipse with tips"; drawing an ellipse would be easier and more correct.

p.5

l.-4
I INSIST that the expression "the smallest simplicial complex of M containing..." is meaningless; it should be a "subcomplex". Even, more precisely, a subcomplex of the complex triangulating M, but it is a normal and acceptable abuse to confuse the complex and the triangulated space.

l.-2
of of --> of


p.5 l.-1, p.6 l.2
I INSIST: [u,v] cannot belong to Lk(v).

p.6

l.4
in --> \in

L.7
I INSIST: take (v) out of the apex.


p.7

Lemma 4.1
I appreciate that a correction has been performed. Still, the correction is not sufficient. There have to be more than one boundary components, whose image under f are both endpoints of the image interval.


p.9

l.13-15
A verb is missing.

l.14
set --> the set

Caption of Fig.7, l.3
vertex --> a vertex


p.10

l.1-4
I INSIST: Are L(\overbar{CR_f(t)}) and H(\overbar{CR_f(t)}) the sets depicted in red and blue respectively in Figure 7? If this is the case, then the definition of \overbar{CR_f(t)} at p. 9, l.11-12, is incomplete.
Either you change that definition, or you specify the meaning of red and blue edges when referring to Fig.7.


p.16

Caption of Fig.12, l.5
get --> gets


p.18

Caption of Fig.14, l.3
gradient --> the gradient
vary --> varies

Caption of Fig.15
triangle --> a triangle


p.19

l.7,8
M. We --> M, we

l.9
parallel --> parallel to


p.24

l.-6
surfaces --> surface


p.25

l.2
defined --> define

l.3
affect --> affects

l.16
reaon --> reason

l.19
specifically. --> specifically:

l.20
discrtization --> discretization

l.-10
Th --> The

l.-3
provided we --> provided. We

Author Response

We thank the reviewer for the valuable comments that improve our paper. 

 

*Much revision work has been done by the Authors. Still, there are some issues I had raised, which have been neither corrected nor commented. I think that this is unfair; as a reviewer I expect Authors either to correct (as has been done in most cases) or to contest a remark (as for my last one, where I was wrong and for which I apologize).

response: we apologize for missing these comments. We should have paid more attention, we had limited time to make too many changes and we forgot to address all the comments. We apologize for that and thank you for your valuable feedback.

 

p.4

Figure 1
What I mean is that the boundary is drawn here as two circle arcs, the so called "ellipse with tips"; drawing an ellipse would be easier and more correct.

 

response: We still do not understand exactly what the reviewer is meant by the comment above. We deleted the incorrect figure and replaced it with an appropriate text and kept the Morse lemma.

p.5

l.-4
I INSIST that the expression "the smallest simplicial complex of M containing..." is meaningless; it should be a "subcomplex". Even, more precisely, a subcomplex of the complex triangulating M, but it is a normal and acceptable abuse to confuse the complex and the triangulated space.

response : fixed. Thank you for the comment.

 

l.-2
of of --> of

response : fixed. 


p.5 l.-1, p.6 l.2
I INSIST: [u,v] cannot belong to Lk(v).

 

response : fixed. 

p.6

l.4
in --> \in

 

response : fixed. 

L.7
I INSIST: take (v) out of the apex.

 

response : fixed. 


p.7

Lemma 4.1
I appreciate that a correction has been performed. Still, the correction is not sufficient. There have to be more than one boundary components, whose image under f are both endpoints of the image interval.

 

response : fixed. Yes, thank you for the correction. 


p.9

l.13-15
A verb is missing.

response : fixed. 

 

l.14
set --> the set

 

response : fixed. 

Caption of Fig.7, l.3
vertex --> a vertex

response : fixed. 


p.10

l.1-4
I INSIST: Are L(\overbar{CR_f(t)}) and H(\overbar{CR_f(t)}) the sets depicted in red and blue respectively in Figure 7? If this is the case, then the definition of \overbar{CR_f(t)} at p. 9, l.11-12, is incomplete.
Either you change that definition, or you specify the meaning of red and blue edges when referring to Fig.7.

response : We changed the definition of \overbar{CR_f(t)} (we basically just took the closure).


p.16

Caption of Fig.12, l.5
get --> gets

 

response : fixed.


p.18

Caption of Fig.14, l.3
gradient --> the gradient
vary --> varies

response : fixed.

 

Caption of Fig.15
triangle --> a triangle

response : fixed.


p.19

l.7,8
M. We --> M, we

response : fixed.

l.9
parallel --> parallel to

 

response : fixed.
p.24

l.-6
surfaces --> surface

 

response : fixed.
p.25

l.2
defined --> define

response : fixed.

l.3
affect --> affects

response : fixed.

l.16
reaon --> reason

response : fixed.

l.19
specifically. --> specifically:

response : fixed.

 

l.20
discrtization --> discretization

response : fixed.

l.-10
Th --> The

response : fixed.

l.-3
provided we --> provided. We

 

response : fixed.

 

thank you again for the valuable comments. They are very much appreciated. 

Back to TopTop