A randomized greedy algorithm for piecewise linear motion planning
aa r X i v : . [ m a t h . A T ] A ug A randomized greedy algorithm for piecewise linearmotion planning
Carlos Ortiz ∗ , Adriana Lara † and Jes´us Gonz´alezSeptember 1, 2020 Abstract
Simplicial complexity (SC) is a discretized model for Farber’s topologicalcomplexity (TC) of an autonomous system whose space of states is a polyhe-dron K . We describe a randomized algorithm that, given K , finds an explicitsystem of SC motion planners. An implementation of this algorithm revelsthat, unlike other discrete approached in the literature to Farber’s TC, theSC approach performs satisfactorily well without having to introduce costlysubdivisions of K . Keywords and phrases:
Abstract simplicial complex, barycentric subdivision, contigu-ous simplicial maps, motion planning, randomized algorithm.
Primary: 55M30, 68T40, 68W20. Sec-ondary: 55U10, 05E45.
The notion of topological complexity (TC), introduced by Michael Farber in [3], isa mathematical model measuring the continuity instabilities in the motion planningproblem in robotics. The theoretical aspects of Farber’s idea have been extensivelystudied by algebraic topologists through more than fifteen years. As a result, the con-cept has found deep and fruitful connections in homotopy theory. Nonetheless, themore computational aspects of the TC-ideas have seen limited developments, whileactual engineering-minded TC-applications seem to be inexistent. This paper focuses ∗ Supported by a Conacyt scholarship. † Partially supported by Grant SIP20201381.
1n the more applied features of Farber’s TC, taking advantage of computational topol-ogy techniques and, more importantly, using randomized algorithms to find efficientsolutions to the motion planning problem for autonomous systems. We implementour algorithms with successful and, as explained below, somehow unexpected results.We use the model developed in [6]. Here is the basic idea (details are reviewed inthe next section). Assume that the space of states of a given autonomous system isgiven by (the topological realization of) an abstract simplicial complex K where, forpractical reasons, we assume K to be finite. Taking a linear order on the vertices of K , one considers the ordered simplicial product K × K . In such a context, a piecewiselinear motion planner defined on a subcomplex J of K × K is a chain of simplicialmaps ϕ , ϕ , . . . , ϕ c : J → K ( c ≥
1) satisfying: • each ϕ i is contiguous to the subsequent map ϕ i +1 (0 ≤ i < c ), and • ϕ ( ϕ c ) is the restriction to J of the projection K × K → K onto the first(second) factor.The rationale behind such a definition is that, for any given pair ( a, b ) of initial-finalpoints in the topological realization k J k of J , the sequence of points a, k ϕ k ( a, b ) , k ϕ k ( a, b ) , . . . , k ϕ c k ( a, b ) , b flags a piecewise linear path in k K k from a to b depending continuously on a an b .A motion planner defined on the full complex K × K exists only in the (topolog-ically trivial) case that k K k is contractible. It is then natural to define SC strict ( K ),a discretized analogue of Farber’s TC, as one less than the minimal number of sub-complexes covering K × K , on each of which there is a motion planner. A centralresult in [6] (coming from the Simplicial Approximation Theorem) is that, if we wantto have a discretized invariant of K that recovers Farber’s topological complexity ofthe realization k K k , then the above constructions have to be done within a limitingprocess where K × K is allowed to be “sufficiently” subdivided, for instance, by taking b -iterated barycentric subdivisions Sd b ( K × K ). This yields the simplicial complexity (SC) of K , SC( K ) = lim b →∞ SC b strict ( K ) , where SC b strict ( K ) is defined in terms of Sd b ( K × K ) in the same way as SC strict ( K ) isdefined in terms of K × K . As shown in [6, Theorem 3.5], SC( K ) agrees with Farber’stopological complexity of k K k . Remark 1.1.
Arbitrary subdivisions ensures we can recast Farber’s invariant inthe simplicial category. However, any person familiar with computational aspectsinvolving subdivisions will immediately realize that the proposal based on barycentric2ubdivisions soon becomes prohibitive for real applications. An alternative, alreadyused in [6], is to allow for coarser/partial subdivisions. The option is however stillnot satisfactory, as there is no indication a priori of what portions of K × K shouldbe subdivided.The coarser subdivision alternative mentioned in Remark 1.1, together with hu-man geometric intuition, led to recast in [6, Section 4], in simplicial terms, the factthat the topological complexity of the circle (the natural benchmark in [6]) is 1,namely, SC b strict ( ∂ ∆ ) = 1, for b ≥
1. (1)The motivation and main goal of this paper is to set a computer implementationthat recovers (1), replacing the human geometric intuition ingredient by a heuristic-based computer search. Indeed, such an implementation would be central toward anengineering-minded usage of the TC ideas. We accomplish such a goal through arandomized algorithm.Surprisingly, the implementation we will present in this paper reports that, in thecase of the circle, the subdivision ingredient is not needed in order to recast Farber’sTC. Indeed, running on a personal laptop computer, our algorithm reports thatSC ( ∂ ∆ ) = 1 . (2)As indicated in Remark 1.1, avoiding the need of subdivisions is a key feature foreventual real-life applications, for otherwise complexity of the process is bound toget out of hands rather quickly. For instance, starting with the (single) barycentricsubdivision Sd ( ∂ ∆ × ∂ ∆ ), our implementation is able to recover (1) in about 10hours running time, even though the stronger fact in (2) is settled, directly from ∂ ∆ × ∂ ∆ and on the same laptop computer, in less than a minute running time(see the final section). Remark 1.2.
The ability to recast Farber’s TC in discrete terms without the need ofsubdivisions seems to be a convenient advantage of our SC-model over other discreteapproaches. Specifically, the discrete topological complexity introduced in [5] of asimplicial complex whose geometric realization is a circle turns out to be one unitlarger than TC( S ) [5, Theorem 5.6]. Likewise, (if no subdivisions are allowed) thevalue of Tanaka’s combinatorial complexity on the minimal finite space model of acircle is two units higher than TC( S ) ([8, Example 3.7]).3 Background
Let X and P ( X ) stand for a topological space and for the free path space on X ,respectively. The reduced version of Farber’s topological complexity of X , TC( X ),is the reduced Schwarz genus of the end-point evaluation map e : P ( X ) → X × X ,i.e., the fibration taking a free path γ ∈ P ( X ) to the pair ( γ (0) , γ (1)). In otherwords, TC( X ) + 1 is the smallest cardinality of open covers { U i } i of X × X so that e admits a continuous section σ i on each U i . Note that we use reduced terms, so that acontractible space has zero topological complexity. The open sets U i in such an opencover are called local domains , the corresponding sections σ i are called local motionplanners , and the family of pairs { ( U i , σ i ) } is called a system of local motion planners for X . A system of motion planners is said to be optimal if it has TC( X ) + 1 localdomains. In view of the continuity requirement on local rules, an optimal motionplanner minimizes the possibility of accidents in the performance of a robot movingin a noisy environment.It is standard that, when X is the realization of an abstract simplicial complex,the requirement that local domains are open can be replaced (without altering thenumerical value of TC( X )) by requiring that local domains are subcomplexes (see [6]).Furthermore, a local motion planner is really a (local) homotopy in disguise: Lemma 2.1 ([4, Lemma 4.21]) . The evaluation map e : P ( X ) → X × X admitsa section on a subset A of X × X if and only if the restrictions to A of the twoprojections to the axes X × X π i −→ X , i = 1 , , are homotopic. In this section we review the basic constructions in [6] regarding the concept of simpli-cial complexity. As explained in the introduction, the subdivision component shouldbe avoided as much as possible in actual applications. Consequently, subdivisions willin fact be neglected in what follows. Details on the topology and homotopy propertiesof the category of (abstract simplicial) complexes can be found, for instance, in [7,Chapter 3].We start by recasting the notion of contiguity of simplicial maps in a form that issuitable for the applications we have in mind.
Definition 2.2.
For a positive integer c , and a pair of simplicial maps ϕ, ϕ ′ : J → K ,1. ϕ and ϕ ′ are said to be 1-contiguous (or simply contiguous) provided ϕ ( σ ) ∪ ϕ ′ ( σ ) is a simplex of K for any facet (i.e., maximal simplex) σ of J . . ϕ and ϕ ′ are said to be c -contiguous if there is a sequence of maps ϕ , ϕ , · · · , ϕ c : J → K , with ϕ = ϕ and ϕ c = ϕ ′ , such that ϕ i − and ϕ i are contiguous foreach i ∈ { , , . . . , c } . The sequence of maps ϕ j in Definition 2.2.2 is called a contiguity chain of length c between ϕ and ϕ ′ . We write ϕ ∼ c ϕ ′ to mean that there is such a sequence, and ϕ ∼ ϕ ′ to mean ϕ ∼ c ϕ ′ for some c . This is an equivalence relation in the set ofsimplicial maps J → K . The corresponding equivalence classes are called contiguityclasses, and are denoted by [ ψ ], where ψ is any given representative. Remark 2.3.
Contiguity classes of simplicial maps is a refinement of homotopyclasses of their topological realizations. Indeed, from its bare definition, the topo-logical realizations of a pair of contiguous simplicial maps are homotopic through apiecewise linear homotopy.All (abstract simplicial) complexes we deal with are assumed to be finite andordered, and their product will be taken in the category of ordered complexes. Thehypothesis is reminiscent to the fact that the topological realization of such a productof complexes is homeomorphic to the product of the topological realizations of thefactors. See [2] for the classical details on the construction. We stress however thatmaps of complexes are not required to preserve the given orderings.A family { L i : i ∈ I } of subcomplexes of a given complex K is a cover provided K = S i ∈ I L i . In such a case the family of realizations {k L i k : i ∈ I } covers k K k . Definition 2.4.
Let K be an (ordered) complex and let c be a positive integer. The c -simplicial complexity SC c ( K ) of K is one less than the smallest cardinality of finitecovers of K × K by subcomplexes J for each of which the compositions J ֒ → K × K π −→ K and J ֒ → K × K π −→ K (3)are c -contiguous. Here π i : K × K → K , i = 1 ,
2, stand for the projections to theaxis. We set SC c ( K ) = ∞ if no such finite covering exists.In analogy to the topological situation, the subcomplexes J appearing in the coversof Definition 2.4 are called piecewise linear local domains, and the contiguity chainsconnecting the two maps in (3) are called piecewise linear local motion planners.The term “piecewise linear” comes from the fact that the geometric relaization ofcontiguous simplicial maps are homotopic through a piecewise linear homotopy (seeRemark 2.3).The simplicial complexity of K , denoted by SC( K ), is defined as the eventualconstant value of the monotonic sequenceSC ( K ) ≥ SC ( K ) ≥ SC ( K ) ≥ · · · ≥ . (4) We stress that this differs from the original definition in [6] in that here we do not take a secondlimiting process over subdivisions of K . k K k ) is bounded from above by SC( K ). In particular, it makes sense tosay that a system of piecewise linear local motion planners for K is optimal providedthe corresponding local domains covering K × K have cardinality TC( k K k ) + 1.In the rest of the paper we describe a randomized algorithm whose implementationyields reasonably close-to-optimal systems of piecewise linear local motion plannersfor general simplicial complexes K . In the case of the circle ∂ ∆ , our implementationconstructs optimal systems of piecewise linear local motion planners. We represent an (abstract simplicial) complex K by a pair ( V K , F K ), where V K is thelist of the vertices of K , and F K is the list of the facets (i.e. maximal simplices) of K .This encoding is convenient because of Definition 2.2.1 and, more importantly for ourpurposes, since a covering of a given complex (such as K × K in Definition 2.4) iscompletely determined by a covering of its facets (see the discussion at the beginningof Subsection 3.3).In what follows we assume given an algorithm, Contiguous, that checks whethertwo simplicial maps are contiguous . Such a function is available in standard mathe-matical software systems such as SageMath. In fact, our algorithms are easily imple-mentable in SageMath, where in fact there are many other convenient features for ourpurposes, such as a function for spelling out (as a list of facets) the ordered simplicialproduct of ordered complexes. Recall that, for finite abstract simplicial complexes J and K , the Simplicial Approx-imation Theorem characterizes homotopy classes of continuous maps k J k → k K k interms of contiguity classes of maps J → K through a limiting process that takesfiner and finer subdivisions of J . This classical fact is generalized in [1] by intro-ducing a certain “contiguity complex” Contig( J, K ) that approximates, as J becomessufficiently subdivided, the homotopy type of the function space of continuous maps k J k → k K k . What is relevant for us is to remark that Blumberg and Mandell proposea certain randomized algorith in order to study the rate of growth (under subdivisionof the domain) of the components of Contig( J, K ). We adapt Blumberg-Mandell’s Note that if a simplicial map f is contiguous (in the sense of Definition 2.2.1) to a vertex map g ,then g must be simplicial. In this paper we assume that Contiguous has been implemented solely onthe basis of Definition 2.2.1, so to admit any two vertex maps as input, necessarily reporting false whenever one of the input parameters is not simplicial. In fact, under these assumption,
Contiguous ( f, f ) can be used to check if a vertex map f is simplicial. LocalSearch in this section inputs a pair of simplicialmaps ϕ, ϕ ′ : J → K , a positive integer M , and a probability parameter r ( r ∈ [0 , ϕ , ϕ , · · · , ϕ c : J → K, c ≤ M, (5)satisfying the conditions in Definition 2.2.2 or, else, is empty, in case the randomizedsearch for (5) is not successful. Starting at ϕ , the search is done through a randomwalk with local steps in the space of simplicial maps J → K . Actual steps in thewalk are tried (and recorded in Ψ), at most M times on a “greedy” basis, with theprobability parameter r used to break a situation where no greedy step has beentaken after a number of consecutive tries. A greedy step is actually taken wheneverthe distance from the goal map ϕ ′ to the current position of the walk is larger thanthe distance from ϕ ′ to the potentially new position of the walk. Here, the distancebetween simplicial maps f, g : J → K is defined as d ( f, g ) = X d K ( f ( v ) , g ( v )) , where the summation runs over the vertices v of J , and d K stands for the graphdistance on the 1-skeleton of K . if Contiguous ( ϕ, ϕ ′ ) then return Ψ ← { ϕ, ϕ ′ } end Ψ ← { ϕ } ; φ ← ϕ for i ← to M do f ← φ f (cid:16) RandomVertex ( V J ) (cid:17) ← RandomVertex (cid:16) V K \ { φ ( v j ) } (cid:17) p ← RandomNumber (0 , if Contiguous ( φ, f ) and (cid:16) p < r or d ( f, ϕ ′ ) < d ( φ, ϕ ′ ) (cid:17) then Ψ ← Ψ ∪ { f } ; φ ← f if φ = ϕ ′ then return Ψ end end end return Ψ ← ∅ Algorithm 1:
LocalSearch.
Current element in Ψ is recorded by φ .7e use the following variant of LocalSearch in our actual implementation. Start bynoticing that, at each step of the iterative process (line 5), the potential new position f in the walk —a random single-vertex variant of φ — may fail to be contiguous to thecurrent position φ , thus preventing us from taking the greedy step (line 10). Theconstruction of f (lines 6 and 7) can then be replaced by a process that, first constructsa list L φ,w of all the simplicial maps that differ from φ on a single randomly chosenvertex w ∈ V J , and then chooses f randomly from L φ,w (provided L φ,w = ∅ ). Ofcourse, with this modification, the first test condition in line 9 can safely be removed. We have noted that the random walk performed by
LocalSearch has a local-step basis:any two consecutive maps ϕ i and ϕ i +1 in a sequence (5) produced by LocalSearch differ only by their values at a single vertex of J . In particular, it is usual that LocalSearch outputs a long sequence of (hundreds and even thousands of) consecutivecontiguous maps in between ϕ and ϕ ′ . This can be remedied by running a shortestpath algorithm/heuristic on the contiguity graph generated by the maps ϕ i in thesequence. However, the construction of the graph is costly for large sequences. Thesimpler alternative described in this subsection works well given the random nature of LocalSearch . The algorithm
Reduce below attempts to reduce the size of a contiguitysequence φ = ( ϕ , . . . , ϕ c ) by reporting the sequence φ ′ obtained from φ by discardingthe terms ϕ ℓ +1 , ϕ ℓ +2 , . . . , ϕ ℓ + m − in chunks ϕ ℓ , ϕ ℓ +1 , . . . , ϕ ℓ + m whenever m > ϕ ℓ and ϕ ℓ + m contiguous. φ ′ ← { ϕ } ; j ← while j = c do i ← c while not Contiguous ( ϕ j , ϕ i ) do i ← i − end φ ′ ← φ ′ ∪ { ϕ i } ; j ← i end return φ ′ Algorithm 2:
Reduce.
We approach the computational task in Definition 2.4 within a more general (butsomehow simpler) setup. Let ψ, ψ ′ : L → K be simplicial maps. A subcomplex J of L
8s said to be a c -contiguity subcomplex (for ψ and ψ ′ ), if there exists a contiguitychain (5) satisfying the conditions in Definition 2.2.2 for the restrictions ϕ = ψ | J and ϕ ′ = ψ ′| J . We say that J is a contiguity subcomplex if it is a c -contiguity subcomplexfor some c . The c -contiguity rank of ψ and ψ ′ , denoted by CR c ( ψ, ψ ′ ), is defined as oneless than the smallest cardinality of finite covers of L by c -contiguity subcomplexes J ,while the contiguity rank of ψ and ψ ′ , denoted by CR( ψ, ψ ′ ), is defined as the eventualconstant value of the monotonic sequenceCR ( ψ, ψ ′ ) ≥ CR ( ψ, ψ ′ ) ≥ CR ( ψ, ψ ′ ) ≥ · · · . Examples 3.1.
Note that the subcomplex generated by any simplex of L is a conti-guity subcomplex of any pair of simplicial maps provided (the topological realizationof) K is connected. The latter assumption will be in force from this point on. Fur-thermore, in the notation of Subsection 2.2, the relation ψ ∼ c ψ ′ can be expressedthrough the equality CR c ( ψ, ψ ′ ) = 0, while the equalitiesSC c ( K ) = CR c ( π , π ) and SC( K ) = CR( π , π )hold for the two simplicial projections π , π : K × K → K .For simplicial maps ψ, ψ ′ : L → K , the task of finding coverings of L by c -contiguity subcomplexes can be focused on facets of L . Indeed, by restricting tofacets, a covering C of L by c -contiguity subcomplexes yields (in a non-unique way)a partition P of the facets of L . In such a situation, if J P stands for the subcomplexof L generated by the facets in a given P ∈ P , then C P := { J P : P ∈ P} is a cov-ering of L by c -contiguity subcomplexes with Card( C P ) ≤ Card( C ). The definitionof CR c ( ψ, ψ ′ ) can therefore be reformulated by limiting attention to coverings C P coming from a partition P of the facets of L as above. This is the viewpoint in thealgorithms described next.A random selection of a subset of the facets of L will most likely fail to generatea contiguity subcomplex. Likewise, a random selection of a partition P of the facetsof L will most likely fail to produce a covering C P by contiguity complexes. A morecareful randomized search is needed in both cases. As a first step, we describe inthis subsection the randomized algorithm RCC ( RandomContiguitysubComplex ) thataims at constructing a maximal contiguity subcomplex for a given pair of simplicialmaps. Then, in Subsection 3.4 we describe a randomized algorithm that searchesfor partitions P of the set of facets of L that yield a covering C P by contiguitysubcomplexes. Lastly, the size of such a covering C P is optimized by the algorithm inSubsection 3.5. The latter algorithm is crucial for our purposes, as it gives us a realchance to get at systems of piecewise linear local motion planners that are optimal inthe sense of Section 2.2. 9e start with the algorithm AddFacet below, whose input is a pair of simplicialmaps ψ, ψ ′ : L → K , and a contiguity subcomplex J for ψ and ψ ′ . It is implicitlyassumed that J is generated by a set of facets of L . With this information, thealgorithm looks randomly for the first facet σ of L not in J that, together with J ,generates a contiguity subcomplex J ′ . If such a facet σ is found, AddFacet outputs J ′ ,otherwise J is reported. Each testing is done by the algorithm LocalSearch with therestricted simplicial maps ψ | J ′ and ψ ′ | J ′ as parameters. Note that AddFacet requiresin addition the two parameters M and r needed by LocalSearch . O ← { σ ∈ F L : σ / ∈ F J } while O 6 = ∅ do σ ← RandomFacet ( O ) J ′ ← SimplicialComplex ( J, σ ) φ ← LocalSearch ( ψ | J ′ , ψ ′ | J ′ ) if φ = ∅ then return J ′ end O ← O \ { σ } end return J Algorithm 3:
AddFacet.
A random σ ensures variety of results from multiple runs.The main algorithm in this subsection, RCC , is an iteration of
AddFacet . Startingwith two simplicial maps ψ, ψ ′ : L → K as input, RCC applies
AddFacet recursively,using the output of the previous application as (part of) the input for the next appli-cation ( ψ and ψ ′ are kept as the rest of the input for all iterations of AddFacet ). Theiteration starts by using the contiguity subcomplex generated by a randomly chosenfacet of L , which is a contiguity subcomplex in view of Examples 3.1. The iteration isapplied at most Card( F L ) times, and is set to stop whenever the current applicationof AddFacet is unable to add an additional facet (this will hold, for instance, if thetotal complex L has been identified as a contiguity complex for ψ and ψ ′ ).A slight generalization of RCC will also be needed in what follows. The algorithm
AddFacets is an iteration of
AddFacet on the same grounds as
RCC , except that thestarting contiguity subcomplex is a prescribed parameter.For latter use in the global algorithm, an actual implementation of both
AddFacets and
RCC should keep track of the (reduced version of the) last non-empty contiguitysequence φ constructed by AddFacet , for this provides us with an explicit contiguitychain for the restrictions of ψ and ψ ′ to the output of AddFacets RCC .10 .4 Randomized coverings by contiguity subcomplexes
For simplicial maps ψ, ψ ′ : L → K , the algorithm Covering in this subsection con-structs a partition P of F L as the one described in the paragraph following Exam-ples 3.1. The process is an iteration of RCC . Assume we have constructed a family P of pairwise disjoint subsets of F L such that each P ∈ P generates a contiguity sub-complex J P for ψ and ψ ′ ( P is empty at the start of the process). Then we execute RCC with the restricted maps ψ | I , ψ ′| I : I → K as parameters, where I is the sub-complex of L generated by the facets of L that do not lie in any P ∈ P . The set ofrelevant facets of the resulting contiguity complex is appended to P . The process isiterated until the resulting P partitions F L . A ← F L P ← ∅ while A = ∅ do I ← SimplicialComplex ( A ) J ← RCC ( ψ | I , ψ ′ | I ) P ← ( F acets ( J ) ∩ F L ) \ ( ∪ Q ∈P Q ) P ← P ∪ { P } A ← A \ P end return P Algorithm 4:
Covering.
When applied to the two simplicial projections π , π : K × K → K , the algorithm Covering in the previous subsection constructs systems of piecewise linear local motionplanners in rather short time. In addition, in some sporadic runs of
Covering on casesfor which we know the topological optimal TC( k K k )+1, the constructed systems havecardinality reasonably close to optimal. In this subsection we describe the randomizedalgorithm OptimizedCovering that addresses all other cases, i.e., those where thesystems reported by
Covering appear to have too many domains. This is achieved byusing a greedy strategy that attempts to reduce the number of piecewise linear localdomains by increasing the size of large domains. As advertised in the introduction, thecombined use of
OptimizedCovering and
Reduce leads to the explicit and unexpectedoptimal piecewise linear motion planner reported in the final section of the paper.
OptimizedCovering starts with a partition P of F L produced by Covering , andgoes into an iterative process that aims at shortening the length of P . Explicitly,11ssume that, after the i -th stage of the iteration, the original partition has evolved tobecome the partition { P , P , . . . , P p } . Then, using a control variable j (inductivelyassumed to lie in between 0 and p ), the ( i + 1)-st recursive stage of OptimizedCovering performs the following actions:(1) Order the partition so that Card( P ) ≥ Card( P ) ≥ · · · ≥ Card( P p ).(2) Use the algorithm RCC to generate a random contiguity subcomplex J P of J P j ∪ P j +1 ∪···∪ P p . Keep in P the largest set of P and P j .(3) Use the algorithm AddFacets to add as many facets of P j − ∪ P j ∪ · · · ∪ P p (6)as possible to P , so to produce a contiguity subcomplex J Q containing J P . If j = 0, part P j − is inexistent in (6). If j >
0, keep in Q the largest set between Q and P j − .The ( i + 1)-st iteration of the process then finishes by constructing the new (op-timized) partition { P , P , . . . , P j − , Q, P j − − Q, P j − Q, . . . , P p − Q } , (7)where empty parts are eliminated. If j = 0, parts P , P , . . . , P j − and P j − − Q areinexistent in (7). Lastly, in preparation for the next iteration, the control variable j is incremented by one, unless its value has to be reset to zero so to meet the inductivehypothesis on j .The rationale behind the above process is to use the best possible contiguitysubcomplex that can be built from the facets in ∪ i ≥ j P i (step (2)) to greedily improveon the cardinality of P j − (step (3)). The net effect of such a recursive process is thatnew longer portions start “bubbling up” in the most recently produced partitions,while shorter portions tend to disappear from previously constructed partitions, astheir elements get added to the longer emerging parts. As a consequence, the newpartitions tend to have fewer domains than the old partitions.For better results, the main recursive loop in the process above is meant to berepeated a large number of times (indicated by a parameter N prescribed by theuser). The pseudocode we describe uses in addition a parameter t (also determinedby the user) that breaks the recursion as soon as a partition with t elements or lessis achieved. The value of t is to be provided on the basis of getting a “short enough”partition, either because the user would be happy with the prescribed bound, orsimply because it does not make sense to insist on getting a partition of lengthsmaller that the optimal TC( k K k ) + 1 (if the latter number is known in advance, sayby theoretical but non-constructive means).12 P ←
Covering ( ψ, ψ ′ ); P ′ ← P ; i ← j ← while i < N and Card ( P ) > t do i ← i + 1 P ←
Order ( P ) D ← Card ( P ) − S k = j P k J P ← RCC ( ψ | J D , ψ ′ | J D ) P ← LargestSet ( P, P j ) D ← Card ( P ) − S k =max(0 ,j − P k J Q ← AddFacets ( J P , ψ | J D , ψ ′ | J D ) if j > then Q ← LargestSet ( Q, P j − ) end P ←
DeleteVoids ( { P , P , . . . , P j − , Q, P j − − Q, P j − Q, . . . , P p − Q } ) if Card ( P ′ ) < Card ( P ) then P ← P ′ end j ← j + 1 if j > Card ( P ) − then j ← end end return P Algorithm 5:
OptimizedCovering.
Let K := ∂ ∆ , i.e., the most efficient triangulation of the circle, with vertices labelled0 , ,
2. The (realization of the ordered) product structure on K × K is depictedin Figure 1, where opposite sides of the external square are identified as indicated.Using parameters M = 1000 and r = 0 . LocalSearch , OptimizedCovering yields,in about 57 seconds, the covering { J , J } of K × K , where J i is generated by the i -labelled triangles in Figure 1. Relevant stages in the actual process (performed by OptimizedCovering ) leading to this cover are illustrated in Figure 2. Here, at eachof the stages shown, the largest (smallest) subcomplex is highlighted in green (blue).13 ′ ′ ′ ′ ′′ ′′ ′′ ′′ ′ ′ ′ ′ ′′ ′′ ′′ ′′ Figure 1:
An optimized covering of the ordered product ∂ ∆ × ∂ ∆ . OptimizedCover finishes as soon as the blue subcomplex has been incorporated intotwo large subcomplexes. (0 ,
0) (1 ,
0) (2 ,
0) (0 , ,
1) (1 ,
1) (2 ,
1) (0 , ,
2) (1 ,
2) (2 ,
2) (0 , ,
0) (1 ,
0) (2 ,
0) (0 , (a) Output of
Covering . (0 ,
0) (1 ,
0) (2 ,
0) (0 , ,
1) (1 ,
1) (2 ,
1) (0 , ,
2) (1 ,
2) (2 ,
2) (0 , ,
0) (1 ,
0) (2 ,
0) (0 , (b) Third iteration. (0 ,
0) (1 ,
0) (2 ,
0) (0 , ,
1) (1 ,
1) (2 ,
1) (0 , ,
2) (1 ,
2) (2 ,
2) (0 , ,
0) (1 ,
0) (2 ,
0) (0 , (c) Sixth iteration. (0 ,
0) (1 ,
0) (2 ,
0) (0 , ,
1) (1 ,
1) (2 ,
1) (0 , ,
2) (1 ,
2) (2 ,
2) (0 , ,
0) (1 ,
0) (2 ,
0) (0 , (d) Seventh iteration.
Figure 2:
Main steps in
OptimizedCovering in the case of ∂ ∆ . The corresponding contiguity chains (simplified by
Reduce ) for the restricted pro-jections π | J i , π | J i : J i → K are described in Table 1 (for i = 0) and Table 2 (for i = 1). In particular, the optimal SC( ∂ ∆ ) = 1 is attained though contiguity chainsof length no more than 10, i.e., SC ( ∂ ∆ ) = 1. Remark 4.1.
Working on Sd( K × K ), OptimizedCovering generates a system of140 ,
0) (0 ,
1) (0 ,
2) (1 ,
0) (1 ,
1) (1 ,
2) (2 ,
0) (2 ,
1) (2 , ϕ = π | J ϕ ϕ ϕ ϕ ϕ ϕ = π | J Table 1:
Contiguity chain between π | J and π | J for J in Figure 1, (0 ,
0) (0 ,
1) (0 ,
2) (1 ,
0) (1 ,
1) (1 ,
2) (2 ,
1) (2 , ϕ = π | J ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ = π | J Table 2:
Contiguity chain between π | J and π | J for J in Figure 1. piecewise linear motion planners using parameters M = 20000 and r = 0 . Lo-calSearch . A detailed report of the resulting pair of piecewise linear domains andcorresponding contiguity chains can be found in the Master’s thesis of the first au-thor. Despite the computer effort needed for such calculations, the output only givesthat the optimal (1) can be attained though contiguity chains of length at most 26.Such an unsatisfactory state of matters supports the point made in the introductorysection: avoid using simplicial subdivisions in concrete applications of the TC ideas.
Consider the 1-dimensional complex K depicted in Figure 3. The geometric realiza-tion k K k has the homotopy type of a wedge of two circles, and it is well known thatTC( k K k ) = 2 . (8)15
23 1
Figure 3:
Wedge of two circles up to homotopy.
As in the case of a single circle,
OptimizedCovering recovers (8) without requiringsubdivisions. The 25-minutes calculation was accomplished using parameters r = 0 . M = 5000 for LocalSearch . The three resulting optimal piecewise linear localdomains J , J , J are generated by the following list of facets where, for simplicity, avertex ( i, j ) of the ordered product K × K is labelled as 4 i + j : J : { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } .J : { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } . J : { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } , { , , } .The corresponding contiguity chains are described in Tables 3—5.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ϕ = π | J ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ = π | J Table 3:
Contiguity chain on J .
16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ϕ = π | J ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ = π | J Table 4:
Contiguity chain on J . ϕ = π | J ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ = π | J Table 5:
Contiguity chain on J . References [1] Andrew J. Blumberg and Michael A. Mandell. Quantitative homotopy theory intopological data analysis.
Found. Comput. Math. , 13(6):885–911, 2013.[2] Samuel Eilenberg and Norman Steenrod.
Foundations of algebraic topology .Princeton University Press, Princeton, New Jersey, 1952.173] Michael Farber. Topological complexity of motion planning.
Discrete Comput.Geom. , 29(2):211–221, 2003.[4] Michael Farber.
Invitation to topological robotics . Zurich Lectures in AdvancedMathematics. European Mathematical Society (EMS), Z¨urich, 2008.[5] D. Fern´andez-Ternero, E. Mac´ıas-Virg´os, E. Minuz, and J. A. Vilches. Discretetopological complexity.
Proc. Amer. Math. Soc. , 146(10):4535–4548, 2018.[6] Jes´us Gonz´alez. Simplicial complexity: piecewise linear motion planning inrobotics.
New York J. Math. , 24:279–292, 2018.[7] Edwin H. Spanier.
Algebraic topology . McGraw-Hill Book Co., New York-Toronto,Ont.-London, 1966.[8] Kohei Tanaka. A combinatorial description of topological complexity for finitespaces.
Algebr. Geom. Topol. , 18(2):779–796, 2018.
Escuela Superior de F´ısica y Matem´aticas del Instituto Polit´ecnicoNacional. Edificio 9, Unidad Profesional Adolfo L´opez Mateos, 07300,Mexico City, Mexico. [email protected], [email protected].
Departamento de Matem´aticas, Centro de Investigaci´on y de Estu-dios Avanzados del Istituto Polit´ecnico Nacional, Av. IPN 2508, Za-catenco, M´exico City 07000, M´exico. [email protected]@math.cinvestav.mx