Optimal In-field Routing for Full and Partial Field Coverage with Arbitrary Non-Convex Fields and Multiple Obstacle Areas
Within the context of optimising the logistics in agriculture this paper relates to optimal in-field routing for full and partial field coverage with arbitrary non-convex fields and multiple obstacle areas. It is distinguished between nine different …
Authors: Mogens Graf Plessen
Optimal In-field Routing for Full and Partial Field Co verage with Arbitrary Non-Con v ex Fields and Multiple Obstacle Areas Mogens Graf Plessen ∗ Abstract W ithin the context of optimising the logistics in agriculture this paper relates to optimal in-field routing for full and partial field cov erage with arbitrary non-con ve x fields and multiple obstacle areas. It is distinguished between nine di ff erent in-field routing tasks: two for full-field co verage, sev en for partial-field cov erage and one for shortest path planning between any two v ertices of the transition graph. It di ff erentiates between equal or di ff erent start and end vertices for a task, cov erage of only a subset of v ertices, and a subset of edges or combinations. The proposed methods are dev eloped primarily for applying sprays and fertilisers with larger operating widths and with fields where there is unique headland path. Partial field cov erage where, e.g., only a specific subset of edges has to be covered is relev ant for precision agriculture and also for optimised logistical operation of smaller -sized machinery with limited loading capacities. The result of this research is the proposition of two compatible algorithms for optimal full and partial field co verage path planning, respectiv ely . These are e v aluated on three real-w orld fields to demonstrate their characteristics and computational e ffi ciency . K eywor ds: In-field V ehicle Routing; Full Field Cov erage; Partial Field Cov erage; Shortest Paths; Obstacle Areas. 1. Introduction and Pr oblem Formulation 1.1. Motivation W ithin the context of optimising logistics in agriculture this paper addresses the research question: how to optimally solve multiple in-field routing tasks including both full and par- tial field co verage, while simultaneously accounting for non- con ve x fields, multiple obstacle areas, partitioned subfields, and compacted area minimisation? It is thus aimed at optimising in- field coverage path planning, while generalising this to di ff erent tasks and di ff erent field characteristics. 1.2. Pr oblem F ormulation and Contribution The problem addressed is to solve the following nine in-field routing tasks: (i) full field coverage with equal start and end verte x, (ii) full field coverage with di ff erent start and end ver- tex, (iii) coverage of a subset of vertices with equal start and end verte x, (iv) co verage of a subset of vertices with di ff erent start and end verte x, (v) coverage of a subset of edges with equal start and end vertex, (vi) coverage of a subset of edges with di ff erent start and end vertex, (vii) a combination of (iii) and (v), (viii) a combination of (iv) and (vi), and (ix) shortest path planning between any two v ertices. As a starting point, the fol- lowing assumptions are made: availability of a transition graph with edges connecting v ertices, a corresponding cost array with edge-costs equal to the path length of edges, a designated start and end v ertex, implementation of the task by one vehicle (in- stead of multiple in-field operating vehicles), and any of abov e in-field routing tasks (i)-(ix). ∗ mgplessen@gmail.com 1 2 ... 0 Fig. 1. Illustration of di ff erent types of field shapes and the notion of tractor tracks defining a transition graph G . Headland and interior edges are denoted by solid and dashed lines, respectiv ely . V ertices are indicated by dots and are, in general, labelled for identification such that the transition between any two vertices is unique. (Left) Uninterrupted edges when aligned in a rotated coor- dinate frame. (Right) Interruped edges due to field indents and obstacle areas that are prohibited from tresspassing by any vehicle operating in the field. For this setup, the contrib ution of this paper is to address the research question from section 1.1. 1.3. Backgr ound and Further Motivation According to Ahumada & V illalobos (2009) there are four main functional sectors for the agri-food supply chain: produc- tion, harvesting, storage and distribution. Optimising logistics and route planning plays an important role in all of the four functional areas for improved supply chain e ffi ciency . Further- more, according to Sørensen & Bochtis (2010) it can be dis- tinguished between in-field, inter-field, inter-sector and inter- regional logistics. This paper relates to the first functional area of the agri-food supply chain, i.e., production, and further to in-field optimisation of logistics. The classic vehicle routing problem (VRP) seeks total cost- minimising routes for multiple identical vehicles that all start and end at a single depot and are subject to load constraints, and where multiple vertices (customers) subject to v arious demands must be serviced exactly once by exactly one vehicle. There are many variations, see T oth & V igo (2014). The focus is on vertex -co verage. By contrast, for agricultural in-field routing typically edge -coverage is of primary importance. Often a sin- gle large machine is operating in-field, e.g., during a spraying application. Therefore, instead of VRPs, arc routing problems (ARPs) are here of more interest, see Eiselt et al. (1995a,b). For shortest path planning between two vertices (routing task (ix) according to sect. 1.2) greedy algorithms such as the algo- rithm by Dijkstra (1959) and the A ∗ -algorithm by Hart et al. (1968) are famous. Ho wev er , these are specialised algorithms that do not solve field co verage path planning problems where a set of edges needs to be covered. For ARPs according to Eiselt et al. (1995a,b), problems can be distinguished between the classes of the Chinese postman problem (CPP) and the ru- ral postman problem (RPP), where all and only a subset of all arcs of the graph need to be traversed, respectively . For the CPP it is further distinguished between undirected, directed, windy , mixed and hierarchical CPPs. Similarly , this occurs for RPPs. T o further illustrate comple xity of solution algorithms and their typical hierarchical structure, a directed RPP can be solved by first constructing a shortest spanning arborescence, then deriv- ing an Eulerian graph on top, and ultimately determining an Eu- lerian tour on the augmented graph. In general, Eulerian tours on an Eulerian graph are not unique and can di ff er substantially . Therefore, specific heuristics can be deriv ed to develop path planning behaviour . Giv en an agricultural working area, the first step is to fit a transition graph with edges and vertices as their connection points. This step requires to (i) decide on field-interior edge shapes, straight or curved, and (ii) to account for field contours and possibly also for 3D topography , see Hameed et al. (2013a). According to sect. 1.2, this paper assumes a transition graph as a giv en starting point, whereby obstacle areas prohibited from trespassing are also accounted for according to Fig. 1. Gri ff el et al. (2018) and Seyyedhasani et al. (2019) e xamined the role of field shapes on e ffi ciency of path planning. Zhou et al. (2014) discussed a hierarchical and heuristic algorithm for in-field routing with obstacle areas. It was hierarchical since it decomposed the problem into three sequential stages. It was heuristic since it decomposed the field area firstly into cells, then determined a sequence for co verage of the cells, and only then considered path plans and their linking between the di ff er- ent cells. A similar method was described in T a ¨ ıx et al. (2003). Importantly , because of these hierarchical heuristics and for transition graphs applied to arbitrary field shapes and arbitrar- ily located multiple obstacles, these methods can in general not guarantee to find a minimum cost tour covering all edges at least once. This is mentioned to explicitly stress that, by con- trast, the algorithm proposed in this paper is guaranteed to find the minimum cost tour . This is achie ved by working directly on the full Eulerian graph augmentation. Heuristic rules are deriv ed on top to guide the planning of an Eulerian tour with MAIN NOMENCLA TURE E Set of all edges of G : ( i , j ) ∈ E . E 0 Replicated edges added to G to produce G 0 . E hdl hdl , hdl Set of headland edges with vertices i , j ∈ V hdl . E hdl isl , isl Set of island headland edges with i , j ∈ V isl . E int hdl , isl Set of interior edges with i ∈ V hdl , j ∈ V isl . E int isl , isl Set of interior edges with i ∈ V isl , j ∈ V isl . G Undirected transition graph, G = ( V , E ). G 0 Eulerian graph augmentation of G . I List of indices for partial field cov erage. L V Subset of vertices for partial field co verage. L E Subset of edges for partial field cov erage. P Ordered list rele vant for partial field co verage. T abu T abu list of instances of I , rele v ant in Algorithm 2. V Set of all vertices of G . V hdl Set of headland (hdl) vertices of G . V isl Set of island (isl) vertices of G . C Accumulated cost of a vertex-sequence, (m). ∆ AB Path length sa vings w .r .t. AB-pattern, (m, %). N I , N T abu 2 scalar hyperparameters in Algorithm 2. c i , j Edge-cost (path length) for ( i , j ) ∈ E , (m). s t V ertex of a sequence { s t } T 0 at index t . { s t } T 0 Sequence of vertices for t = 0 , . . . , T . { s pfc t } T pfc 0 Sequence of vertices for partial field co verage. { s sub t } T sub 0 Subsequence of vertices for t = 0 , . . . , T sub . s start , s end Start and end verte x for a routing task. fa vourable properties for additional partial field coverage and practical implementation. Field decomposition into subfields using trapezoids as pre- sented in Oksanen & V isala (2009) is a popular method to deal with irregularly shaped fields (Mederle & Bernhardt (2017) and Santoro et al. (2017)). Bochtis & V ougioukas (2008), Bochtis et al. (2013) and Zhou et al. (2015), discussed di ff erent fieldwork patterns and head- land turning methods subject to vehicle kinematic constraints. They were typically motiv ated by the desire to minimise accu- mulated non-working path lengths at headlands. Note that these methods do not naturally account for in-field obstacles. Instead, as mentioned in the introduction of Bochtis et al. (2013), “B- patterns do not generate any subfield ar eas division but, by con- trast, the generation of the subfields (when it is needed due to e.g . physical obstacles or complex field shapes) is a pr er equi- site for applying B-patterns methodology” . As a consequence, when accounting for obstacles (such as tree islands), B-patterns are in general no longer optimal since the same limitations of aforementioned hierarchical algorithms apply . For a discussion of field experiments over three years for dif- ferent headland turning methods see Paraforos et al. (2018). In Plessen (2018) two path planning patterns for partial field cov erage were compared for conv ex field shapes. One of them was identified as particularly fav ourable when aiming for min- imal compacted area from tractor tracks while accounting for limited turning radii of agricultural machinery . Howe ver , pat- terns are in general nev er optimal for arbitrary non-con vex field shapes particularly when also considering multiple obstacle ar- 2 9 R OUTING T ASKS T1 Full field cov erage with s start == s end . T2 Full field cov erage with s start , s end . T3 Cov erage of a subset of vertices with s start == s end . T4 Cov erage of a subset of vertices with s start , s end . T5 Cov erage of a subset of edges with s start == s end . T6 Cov erage of a subset of edges with s start , s end . T7 A combination of T3 and T5. T8 A combination of T4 and T6. T9 Shortest path planning between any 2 v ertices of G . T able 1. In this paper , 9 classes of in-field routing tasks are considered. eas. Thus, the present paper is generalising and relev ant not only for full but also for partial field cov erage. Furthermore, as will be shown, algorithms are designed purposely such that the preferred pattern from Plessen (2018) is automatically recov- ered for con ve x field shapes. The remaining paper is or ganised as follows: algorithms, real-world examples, benefits and limitations, and the conclu- sion are described in sections 2-5. 2. Solution Description 2.1. High-level str ate gy to address nine di ff er ent routing tasks The nine classes of di ff erent in-field routing tasks addressed in this paper are summarised in T able 1. In practice, this num- ber is required for generality . For perspectiv e, spraying appli- cations occur multiple times throughout any crop year . De- pending on av ailable machinery , weather and varying av ailable time-windows, di ff erent routing tasks may apply , also including partial field co verage per field run. In vie w of precision agricul- ture, algorithmic solutions are therefore needed to address all of tasks, T1 to T9. In this paper , two main le vels are distinguished. At the high- est le vel, there are the full field coverage tasks T1 and T2, whereby T2 can be considered as an extension of T1. The al- gorithm proposed therefore is discussed in sect. 2.3. On the second lev el, there are the partial field coverage tasks T3 to T8. Here, tasks T3, T5 and T7, and equiv alently tasks T4, T6 and T8, exploit as their starting points the full field coverage solutions for T1 and T2, respecti vely . For the second le vel, the proposed algorithm is discussed in sect. 2.4. Finally , T9 is a special case that is discussed in sect. 2.5. 2.2. Pr eliminaries T opographical characteristics rele vant for in-field routing, data variables, and solution v ariables are discussed. For the former , these are (i) arbitrarily shaped fields (conv ex or non- con ve x), (ii) multiple obstacle areas 1 within the field, (iii) ei- ther straight or curved interior edges aligned to part of the field contour , and (iv) partitioned subfields with interior edges ori- entated di ff erently from the area-wise largest main part of the 1 The term “obstacle area” comprises all obstacles prohibited from trespass- ing by in-field operating vehicles, including tree islands, ponds and so forth. Fig. 2. Illustration of curved interior edges aligned to part of the field contour . Fig. 3. Illustration of a subfield connected to the main field. Characteristic is (i) the sharing of a path, here from vertex 17 to 24, that is coinciding for both subfield and main field, and (ii) di ff erent interior edge orientations. The partition into main field and subfields occurs in particular in case of strongly non-con vex fields, where it is worthwhile to di ff erentiate interior edge orien- tations to minimise compacted area. The annotation is added for two reasons: (i) to illustrate vertex labelling on a satellite image, (ii) to emphasise that con- nected subfields and main field are treated separately according to sect. 2.6. field. These are shown in Figs. 2 and 3. T wo more comments should be made. Firstly , curved interior edges still permit a transition graph representation that is analogous to Fig. 1. Sec- ondly , in this paper separate transition graphs are defined for all partitioned subfields and the main field. The synchronised handling of all of these is detailed in sect. 2.6. Data v ariables used for the problem description are sum- marised in the main nomenclature table. See also Fig. 1 for visualisation. Some additional comments are made. First, for ev ery undirected transition graph, G = ( V , E ), the set of ver- tices and edges can be partitioned into subsets as follows: V = V hdl ∪ V isl , (1a) E = E hdl hdl , hdl ∪ E hdl isl , isl ∪ E int hdl , isl ∪ E int isl , isl . (1b) Second, start and end verte x, s start and s end , typically denote the field entry and exit vertex. Third, a list of elements is denoted by {·} , the number of elements in a list by | · | , and an edge be- tween vertices i and j by ( i , j ). The “ + ”-operator is ov erloaded to indicate concatenation of lists as {·} + {·} . Fourth, throughout this paper, it is assumed that only forwar d motion of any in-field operating machinery is permitted. Thus, any sequence of ver - tices such as a-b-a is prohibited. For shortest path planning it 3 would imply the necessity of reverse driving, which is imprac- tical, in particular for operations with trailers and for large edge lengths. Fifth, as Fig. 1 illustrates, the number of edges inci- dent to every vertex is either two or three. Howe ver , because of the previous assumption about forw ard motion only , at ev ery verte x there are always only either one or two transition deci- sions av ailable during routing. Ultimately , there always exists a path length minimising global optimal solution to all routing tasks T1 to T9. This immediately follows from the nonne gativ- ity property of edge-costs, here defined as path lengths. Solution v ariables most rele vant in the presented algorithms are s t , { s t } T 0 , C , and variations with di ff erent superscripts. These indicate a v ertex at inde x t , a sequence of vertices, and the ac- cumulated path length, respectiv ely . 2.3. Full F ield Cover age: T1 and T2 Algorithm 1 is proposed for full field co verage path planning according to routing tasks T1 and T2. Algorithm 1 Full Field Cov erage for T1 and T2 0. Required Subfunctions (brief description): F hdl ( · ): for tracing of the headland path. F fsp ( · ): for the shortest path from s start to s end . F sub ( · ): for specific subtour computation. 1. Data Input : G 0 , E 0 , s start and s end . 2. { s t } T hdl 0 ← F hdl ( G 0 , s start , s start ). 3. { s t } T 0 ← { s t } T hdl 0 + F fsp ( G 0 , s start , s end ). 4. G 0 ← G 0 \ n { ( s t , s t + 1 ) } T hdl − 1 0 , { ( s t + 1 , s t ) } T hdl − 1 0 o , τ ← 0. 5. While τ < |{ s t } T 0 | − 1 : 6. If ( s τ , s τ + 1 ) ∈ E 0 : 7. { s sub k } T sub k = τ + 1 ← F sub ( s τ + 1 , s τ , G 0 ). 8. G 0 ← G 0 \ { ( s τ , s τ + 1 ) , ( s τ + 1 , s τ ) } . 9. { s t } T 0 ← { s k } τ 0 + { s sub k } T sub τ + 1 + { s k } T τ + 1 . 10. G 0 ← G 0 \ n { ( s sub k , s sub k + 1 ) } T sub − 1 τ + 1 , { ( s sub k + 1 , s sub k ) } T sub − 1 τ + 1 o . 11. τ ← τ + 1. 12. C ← P T − 1 t = 0 c s t , s t + 1 . 13. Output : { s t } T 0 and C . Sev eral explanatory comments are made. First, G 0 denotes the Eulerian graph augmentation of the undirected graph G . Thus, G is augmented in a total minimum cost manner such that afterwards e very verte x has an e ven degree, i.e., an ev en num- ber of incident edges, howe ver , this is subject to the constraint that all interior edges shall not be eligible as augmentation can- didates. The reason therefore is to enforce path planning with forward motion only for any in-field operating vehicle. Con- sequently , only headland edges and island headland edges are eligible. The edges replicated from G for this augmentation are denoted by E 0 . Due to the characteristic connecti vity of G with each vertex being connected to at most 3 vertices and aforemen- tioned constraint, an Eulerian graph augmentation (see Bondy et al. (1976)) can always be constructed by pairing neighbour- ing vertices in a cost-minimising manner . As a consequence, an ov erall path length minimising field co verage route for T1 with equal start end verte x is always constructed by trav ersing ev ery edge at most twice. By contrast, for T2 with s start , s end , some edges ha ve to be trav ersed three times due to the final transition to s end after completing the cov erage of all edges of G . Second, function F hdl ( · ) returns { s t } T hdl 0 , which is the con- catenation of the sequence of vertices tracing the headland path in counter clockwise (CCW) direction from s start to s start . The CCW direction is a choice, moti v ated by the desire to ultimately obtain consistent circular pattern-like path planning to be de- tailed belo w . Importantly , this choice does not compromise op- timality since tracing complies with G 0 and G 0 is not a ff ected thereby . Step 3 of Algorithm 1, i.e., a shortest path computa- tion on top of Step 2 only applies for T2 when s start di ff ers from s end . Third, in Step 4 all edges that were covered as part of Step 2 are remov ed from G 0 in both directions, whereby they are remov ed only once. Thus, edges stemming from the Eule- rian graph augmentation as well as all interior edges and island headland edges are una ff ected and remain with G 0 . Further - more, edges that stem from the shortest path contribution due to T2 and Step 3 are not removed. The general consequence of Step 4 is a reduction of edge candidates from G 0 that are a vail- able for future trav ersal in Steps 5-11. Fourth, { s t } T 0 is traced throughout Steps 5-11. As soon as an edge from the Eulerian graph augmentation is tra versed in Step 6, a subtour is computed in Step 7 starting from verte x s τ + 1 and ending at s τ . The method for subtour computation is equiv a- lent to a shortest path computation, howev er , here subject to two additional constraints plus one exploration heuristic. The two constraints are: (i) transitions along the headland path are feasible only in CCW -direction, and (ii) only forward motion and thus no a-b-a sequence of v ertices is permitted. The explo- ration heuristic is crucial. It enforces exploration of any edge as soon as that edge is element of E 0 and determined to be a feasible next transition. This exploration step is necessary to av oid making part of G 0 disconnected at Step 10 of Algorithm 1, in which case full field cov erage would become impossible afterwards. W ithout the exploration heuristic and computation of just the shortest path between s τ + 1 and s τ , the possibility of disconnection occurs in particular in case there are multiple ob- stacle areas. Fifth, Steps 8-10 of Algorithm 1 are responsible for removal of covered edges from G 0 and insertion of the subtour deter- mined in Step 7 into the main sequence of vertices, { s t } T 0 , in Step 9. Note that the length of { s t } T 0 thus changes dynamically during runtime. Consequently , there are also the number of it- erations according to Step 5 of Algorithm 1 that change during runtime. Sixth, in particular for con vex field shapes and in the absence of obstacle areas, the combination of enforcing (i) tra versal along all headland edges 2 only in CCW direction, (ii) trav er- sal of all interior edges only once, and (iii) the corresponding 2 It should be emphasised that headland edges and island headland edges 4 a b c d e Fig. 4. (Left) Sketches of the field coverage pattern naturally resulting from the application of Algorithm 1 for conv ex field shapes and in the absence of ob- stacle areas. The sequence of vertices, { a , b , c , d , e } , exemplifies the path plan- ning for coverage of two straight edges ( a , d ) and ( b , c ). (Right) Concatenation of two patterns and emphasis of two illustrati ve path transitions. Eulerian graph augmentation only along headland and island headland edges causes by design a certain circular path plan- ning pattern visualised in Fig. 4. On the one hand, this pattern is fav ourable for partial field coverage as discussed in Plessen (2018), but it is also optimal when it results from the application of Algorithm 1. This follows directly from the fact that Algo- rithm 1 works on the full Eulerian graph G 0 , which ensures a minimum cost tour . The pattern is not optimal, particularly in scenarios with multiple obstacle areas. Ho wev er , then it natu- rally does also not occur in the solution of Step 13. Examples that illustrate this further are discussed in sect. 3. Sev enth, any subtour , { s sub k } T sub τ + 1 , is inserted into the main se- quence, { s t } T 0 , at Step 9 of Algorithm 1 immediately as soon as the subtour becomes a vailable for traversal. As a consequence, interior edges are alw ays covered first before any continuation along the headland path until the next cover of interior edges oc- curs according to a next inserted subtour . Furthermore, in case patterns according to Fig. 4 are determined from Step 7 for subtours (e.g., in the absence of obstacle areas and for con vex fields), interior edges are sequentially covered in pairs to form a concatenation of multiple of these patterns. This is fa vourable for the deriv ation of Algorithm 2 for partial field cov erage. Ultimately , the output of Algorithm 2 in Step 13 summarises the total accumulated cost (path length), C , computed in Step 12, and the corresponding sequence of vertices, { s t } T 0 , of the path for full field cov erage according to T1 and T2. 2.4. P artial F ield Cover age: T3 to T8 Algorithm 2 is proposed for partial field coverage path plan- ning according to routing tasks T3 to T8. Sev eral explanatory comments are made. First, L V and L E denote the lists of vertices and edges to be covered according to any respecti ve task from T3 to T8. The coverage of specific vertices may be relev ant, for example, for refilling of spraying tanks at a mobile depot waiting at a specified vertex at the field headland, or for the picking up or dropping o ff of, e.g., fertilis- ing material. It is also included for generality . Second, Step 2 of Algorithm 2 is discussed. Function F seq ( · ) traces the output of T1 for T3, T5 and T7 or the output of T2 for T4, T6 and T8, before returning the list of edges or der ed are distinguishable according to sect. 2.2. The CCW -direction constraint only holds for headland edges, but not for island headland edges. Algorithm 2 Partial Field Co verage for T3 to T8 0. Required Subfunctions (brief description): F seq ( · ): for sequential tracing of { s t } T 0 . F csp ( · ): for concatenated shortest paths. F r2n ( · ): for randomly exchanging 2 neighbours. 0. Hyperparameters : N I , N T abu . 1. Data Input : L V , L E , G , { s t } T 0 , s start and s end . 2. P ← F seq ( { s t } T 0 , L V , L E ). 3. I ← { 0 , 1 , . . . , |P| − 1 } . 4. C pfc ,? , { s pfc ,? t } T pfc ,? 0 ← F csp ( P ( I ) , G , s start , s end ). 5. T abu ← {I} , I ? ← I , k ← 0. 6. While k < N I : 7. I ← F r2n ( I ? ), j ← 0. 8. While ( I ∈ T abu ) and ( j < N T abu ) : 9. I ← F r2n ( I ), and j ← j + 1. 10. If I < T abu : 11. T abu ← {I} + T abu 0 : min( |T abu | , N T abu − 1) . 12. C pfc , { s pfc t } T pfc 0 ← F csp ( P ( I ) , G , s start , s end ). 13. If C pfc < C pfc ,? : 14. C pfc ,? , { s pfc ,? t } T pfc ,? 0 , I ? ← C pfc , { s pfc t } T pfc 0 , I . 15. k ← k + 1. 16. Output : C pfc ,? , { s pfc ,? t } T pfc ,? 0 , I ? and P . 5 according to this tracing. Thus, this list can be written as P = {P 0 , P 1 , . . . , P |P|− 1 } , whereby each element P i = { v in i } , v out i , ∀ i = 0 , . . . , |P| − 1 , (2) defines a directed edge with unique vertex v out i for both L V and L E , but unique v in i only for L E . Thus, ( v in i , v out i ) ∈ L E and v out i ∈ L V . The notation { v in i } in (2) is used since when tracing the tour { s t } T 0 in Step 2, there may be multiple v ertices immediately preceding any v out i ∈ L V throughout that tour . All of these vertices are stored in lists denoted by { v in i } , ∀ i = 0 , . . . , |P| − 1. Thus, each list { v in i } has length 1 for all v out i ∈ L E , b ut may hav e multiple entries for v out i ∈ L V depending on the tour { s t } T 0 . Third, in Step 3 the initial ordering of P i -elements is sum- marised by index-list I . For reordered instances of index-list I throughout Steps 6-15, the corresponding reordering of P i - elements shall be denoted by P ( I ). Fourth, function F csp ( · ) returns a sequence of multiple con- catenated shortest paths, { s pfc ,? t } T pfc ,? 0 , and the corresponding ac- cumulated cost, C pfc ,? . Adding vertices, s start and s end , the fol- lowing list can first be written, n s start , { v in I 0 } , v out I 0 , { v in I 1 } , v out I 1 , . . . , { v in I |P|− 1 } , v out I |P|− 1 , s end o , (3) before pairwise shortest paths are computed, i.e., between pairs s start and { v in I 0 } , between v out I 0 and { v in I 1 } , and so forth, until be- tween v out I |P|− 1 and s end . For the case that any { v in I j } comprises more than one vertex, the shortest path between v out I j − 1 and all of their vertices is computed. The best vertex from { v in I j } is then selected such that the path length from v out I j − 1 to it plus the edge path length from it to v out I j is shortest. The return v al- ues, { s pfc ,? t } T pfc ,? 0 and C pfc ,? , represent the verte x sequence re- sulting from the concatenation of all pairwise shortest paths and the corresponding accumulated path length, whereby any edges, ( { v in I j } , v out I j ), that link the di ff erent pairwise shortest paths are also included. The shortest path computation on G is based on Dijkstra (1959), howe ver , here accounting for two additional constraints: (i) transitions along the headland path are feasible only in CCW -direction in accordance with the method from sect. 2.3 for full field coverage, (ii) directed edges ( v out I j , { v in I j } ) , ∀ j = 0 , . . . , |P| − 1 are prohibited from being on any corresponding shortest path between v out I j − 1 and { v in I j } . The latter is done to enforce paths with forward mo- tion only . Because of the special modeling technique with ( v out I j , { v in I j } ) , ∀ j = 0 , . . . , |P| − 1, plus the two v ertices s start and s end , the length of (3) will always be even such that pairwise shortest path computations are always e xactly possible. Fifth, in Step 5 of Algorithm 2 a tabu list , T abu , is initialised with inde xing list I , which indicates the sequence of edges and nodes to be covered according to Step 2 and 3. The currently best indexing list, I ? , is also initialised, before improvement iterations start from Step 6 on. Sixth, the fundamental idea of Steps 6-15 is to iterate ov er indexing list I with the purpose of improving cost C pfc ,? and the corresponding sequence of vertices, { s pfc ,? t } T pfc ,? 0 . Function F r2n ( · ) in Steps 7 and 9 randomly exchanges 2 neighbouring indices in I ? and I , respectiv ely , to produce a new candidate list I . It was found that in Step 7 attempting to exchange I ? , instead of the last I , improv ed performance. Similarly , it was found that incrementally exchanging only two neighbouring in- dices yielded faster solve times in contrast to randomly reshuf- fling the entire I -list at e very iteration. Most importantly , it was found that the emplo yment of a tab u list, T abu , significantly helped increasing the likelihood and speed of finding the global optimal C pfc ,? . This is since the e ff ect of T abu and Steps 8-10 is that exploration of di ff erent I -candidates is enforced. Accord- ing to Step 11, an I not yet in T abu is added at index 0 and all remaining elements of T abu are shifted by 1 index, thereby deleting its pre vious last element if necessary to ensure a finite maximum length of the tabu list. More aspects of the size of T abu are discussed at the end of this section and in sect. 4. Sev enth, the edges to be cov ered as a part of a routing task may be defined as undir ected edges in L E when input to Al- gorithm 2 as part of Step 1. Howe ver , after the tracing in Step 2, all edges of L E are automatically directed according to the transitions from { s t } T 0 . Since P is not changed beyond Step 2 in Algorithm 2, also the direction of edge trav ersals is not fur - ther changed. This is done on purpose. In combination with the method of concatenating shortest paths subject to 2 constraints outlined above, it is thereby ensured that all transitions between any headland edge and any interior edge are unique. This is fa vourable with respect to minimisation of the soil compacted area. If unique transitions were not enforced, then depending on a routing mission, an unconstrained shortest path compu- tation may generate a new transition between a headland and interior edge, which in practice due to limited turning radii of in-field operating tractors would cause ne wly compacted area for this transition. Consequently , the harvestable area would be destroyed and the crop lost. Furthermore, in case there are many di ff erent partial field co verage missions, the consequence may ev en be that at every transition from headland to interior and vice versa there are tractor tracks in every which direction, which would be the worst-case scenario with respect to minimi- sation of the soil compacted area. Eighth, the motiv ation for the general methodology in Al- gorithm 2 is underlined. In general, the partial field coverage problems can be considered as travelling salesman pr oblems (TSPs) subject to additional constraints. For general TSPs, the complexity increases extremely quickly with problem size. For n general entities to be visited, the number of di ff erent orders in which these can be visited is n !. For n = 5 this is n ! = 120, howe ver , for n = 10 it is already n ! = 3628800. Key notion and the main argument for the design of Algorithm 2 is that full field co verage can be considered as a special case of partial field cov erage. F or that particular case, the optimal solution is immediately recov ered from Step 2-4 due to the fact that Algo- rithm 2 starts for all partial field coverage solutions al ways from the full field coverage solution according to Algorithm 1. By contrast, for alternativ e TSP-solution methods that would start from a more general setting, no guarantee can be provided about the retriev al of the desired original optimal full field coverage plan. Similarly , Algorithm 2 is well suited for partial field cov- 6 erage applications where groups of neighbouring interior edges (pairs), or specific regions of the field are meant to be covered. This again follows from the initial tracing of the solution for full field cov erage according to Step 2. Ne vertheless, iteration steps 6-15, and in particular also the usage of the tabu list for exploration, are still required for generality of partial field cov- erage missions, for example, when multiple vertices and edges that are very distant apart need to be co vered. Ultimately , the 2 hyperparameters in Algorithm 2, N I and N T abu , are discussed. An upper bound is N T abu ≤ ( |L V | + |L E | ) !. There is no gain from a larger tabu list since in that case T abu already can accomodate all possible sequences of vertices and edges of L V and L E . Furthermore, it is sensible to bound N I ≥ N T abu since the tabu list is otherwise never filled completely . For N I > N T abu , there is a likelihood that throughout iteration Steps 6-15 the same I is added multiple times to the tabu list, which does not yield exploration progress. Therefore, it is proposed that N I = N T abu . (4) Then, there is only 1 hyperparameter in Algorithm 2, which is also easy to tune: the larger the better for exploration and find- ing of the optimal solution. In practice, N T abu may be limited by a constrained or desired maximum solve time or abo ve factorial bound for small problems. Examples of this are discussed in sect. 3.2. 2.5. Special case: T9 The last in-field routing task for shortest path planning be- tween any 2 vertices of G may become relev ant, for example, once a spraying tank is empty and it must be returned e ffi ciently to a mobile depot w aiting along the field boundary . The method for shortest path computation applied is identical to the one de- scribed in sect. 2.4, where multiple shortest paths are concate- nated. By non-ne gativity of edge weights and connectivity of G there always e xists a shortest path between any 2 vertices. 2.6. Special case: Handling of connected subfields As mentioned in sect. 2.2, separate transition graphs are de- fined for all partitioned subfields and the main field. Conse- quently , the algorithms for T1 and T2 from sect. 2.3 for full field cov erage, for T3 to T8 for partial field cov erage, and T9 as a special case are all also applied separately to each of the subfields and the main field. Howe ver , for synchronisation 1 modification is implemented. While the headland trav ersal di- rection of the main field is defined as CCW , it is now defined as CW for all subfields. This is the only di ff erence and it per- mits insertion of subfield solutions into the main field solution sequence of vertices, while ensuring consistent travel direction along the headland path segments coinciding for both the main and all connected subfields. For visualisation, see Fig. 3. Ac- cording to above rules the trav el sequence of vertices along the coinciding headland paths is { 17 , 18 , . . . , 24 } . An e ff ect of this method to handle connected subfields is that part of the path coinciding for both main field and any subfield is covered four times. Fig. 5. Field 1. A real-world field (54 ◦ 10’52.44”N, 10 ◦ 19’57.48”E) of size 13.5ha. The operating width is 36m. The vertices of G are labelled. The field entry and exit is verte x 0. 3. Illustrative Examples All methods were implemented in Python running an Intel i7-7700K CPU@4.2GHz × 8 processor with 15.6 GiB memory . 3.1. Full F ield Cover age Examples 1 to 3 Algorithm 1 was ev aluated on three real-world examples. It should be recalled that results are guaranteed to be path length optimal since it is worked directly on the full Eulerian graph augmentation as discussed in sect. 2.3. Thus, results can quan- titativ ely not be further improv ed. Nev ertheless, path length savings, ∆ AB, with respect to the in practice widespread (but suboptimal) AB-pattern are stated in T able 2 to provide a com- parison. For a detailed discussion of the disadvantages of the AB-pattern, see Plessen (2018). It is also emphasised that in addition to optimality , Algorithm 1 according to sect. 2.3 is designed purposely (i) for compatibility with partial field cov- erage, and (ii) to recover the path planning pattern from Fig. 4 whene ver possible. The benefits of this design are discussed further below . Example 1 is based on the field in Fig. 5. There are no obsta- cle areas present. The optimal sequence of vertices, { s t } T 0 , for full field cov erage according to T1 is: { 0 , 1 , 22 , 0 , 1 , 2 , 3 , 20 , 21 , 2 , 3 , 4 , 5 , 18 , 19 , 4 , 5 , 6 , 7 , 16 , 17 , 6 , 7 , 8 , 9 , 14 , 15 , 8 , 9 , 10 , 11 , 12 , 13 , 10 , 11 , 23 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 0 } , (5) whereby the first occurence of the pattern illustrated in Fig. 4, and which is naturally ev olving from the application of Algo- rithm 1, is emphasised in bold. Field size, number of vertices, 7 Fig. 6. Field 2. A real-world field (54 ◦ 13’9.65”N, 10 ◦ 21’8.08”E) of size 74.3ha. The operating width is 36m. There are 4 obstacle areas within field contours. path length and in particular computation times for Algorithm 1 are summarised in T able 2. When tracing (5), there are five of the aforementioned patterns concatenated for field cov erage. Example 2 is based on the field in Fig. 6. The optimal se- quence of vertices, { s t } T 0 , for full field cov erage according to T2 with s start = 0 and s end = 14 is: { 0 , 1 , 2 , 63 , 64 , 65 , 66 , 1 , 2 , 3 , 4 , 61 , 62 , 3 , 4 , 5 , 6 , 59 , (6a) 60 , 5 , 6 , 7 , 8 , 57 , 58 , 7 , 8 , 9 , 10 , 79 , 98 , 97 , 96 , 55 , (6b) 56 , 97 , 96 , 95 , 94 , 53 , 54 , 95 , 94 , 93 , 92 , 51 , 52 , 93 , (6c) 92 , 91 , 90 , 49 , 50 , 91 , 90 , 89 , 88 , 47 , 48 , 89 , 88 , 87 , (6d) 86 , 17 , 18 , 87 , 86 , 85 , 84 , 15 , 16 , 85 , 84 , 83 , 82 , 13 , (6e) 14 , 83 , 82 , 81 , 80 , 11 , 12 , 81 , 80 , 79 , 98 , 9 , 10 , 11 , (6f ) 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 75 , 78 , 77 , 76 , 45 , (6g) 46 , 77 , 76 , 75 , 78 , 19 , 20 , 21 , 22 , 71 , 74 , 73 , 72 , 43 , (6h) 44 , 73 , 72 , 71 , 74 , 21 , 22 , 23 , 24 , 41 , 42 , 23 , 24 , 25 , (6i) 26 , 39 , 40 , 25 , 26 , 27 , 28 , 67 , 70 , 69 , 68 , 37 , 38 , 69 , (6j) 68 , 67 , 70 , 27 , 28 , 29 , 30 , 35 , 36 , 29 , 30 , 31 , 32 , 33 , (6k) 34 , 31 , 32 , 99 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , (6l) 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , (6m) 57 , 58 , 59 , 60 , 61 , 62 , 63 , 64 , 100 , 65 , 66 , 0 , 1 , 2 , 3 , (6n) 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 } , (6o) Sev eral comments are made. First, in (6a) and (6b) multi- ple patterns can again be observed. Second, between (6b) and (6f) the cov erage of the first and largest obstacle area with ad- ditional exploring of patterns outgoing from the island can be observed. The first pattern thereof is emphasised in bold in (6b) and (6c). The e ff ect of exploring interior edges connected to the island headland edges is an immediate result from the ex- ploration heuristic as discussed in sect. 2.3. Third, in (6g)-(6h) the sequence of vertices for the covering of the second island is in shown bold for emphasis. Notably , the same method to cov er the third and fourth island can be observed in (6h)-(6i), and also in (6j)-(6k), respectively . Ho wev er, it cannot be de- duced from this that islands with four interior edges incident are always handled optimally as indicated. Here, this is merely a coincidence due to the Eulerian graph augmentation for the particular field in Fig. 6. Nevertheless, from these cases de- terministic consistency of the output from Algorithm 1 can be observed , which is desirable. Fourth, in (6k)-(6l) the last pat- tern and cov erage of the two last remaining interior edges is emphasised in bold. Afterwards, the sequence of vertices (6l)- (6o) proceeds along the headland for final coverage of not-yet cov ered headland edges. Because of the characteristic Eulerian graph augmentation and previous pattern-like co verage of inte- rior edges, ev ery second headland edge from vertex 34 up until 0 has not been cov ered to this point. Fifth and ultimately , (6o) results from the fact that s start is di ff erent from s end for this ex- ample. Example 3 is based on the field in Fig. 7. The optimal se- 8 Fig. 7. Field 3. A real-world field (53 ◦ 46’26.34”N, 11 ◦ 11’45.43”E) of size 62.9ha. The operating width is 36m. There are 6 obstacle areas within field contours. quence of vertices, { s t } T 0 , for field cov erage according to T1 is: { 0 , 1 , 2 , 59 , 60 , 1 , 2 , 3 , 4 , 57 , 58 , 3 , 4 , 5 , 6 , 55 , 56 , 5 , (7a) 6 , 7 , 8 , 53 , 54 , 7 , 8 , 9 , 10 , 63 , 64 , 11 , 12 , 49 , 50 , 75 , (7b) 76 , 77 , 78 , 61 , 62 , 63 , 64 , 61 , 62 , 77 , 78 , 75 , 76 , 51 , (7c) 52 , 9 , 10 , 11 , 12 , 13 , 14 , 80 , 81 , 67 , 66 , 65 , 70 , 17 , (7d) 18 , 43 , 44 , 65 , 70 , 69 , 68 , 15 , 16 , 69 , 68 , 67 , 66 , 45 , (7e) 46 , 82 , 79 , 80 , 81 , 82 , 79 , 47 , 48 , 13 , 14 , 15 , 16 , 17 , (7f ) 18 , 19 , 20 , 89 , 88 , 87 , 86 , 41 , 42 , 87 , 86 , 85 , 84 , 39 , (7g) 40 , 85 , 84 , 83 , 100 , 37 , 38 , 83 , 100 , 99 , 98 , 35 , 36 , (7h) 99 , 98 , 97 , 96 , 27 , 28 , 33 , 34 , 97 , 96 , 95 , 94 , 25 , 26 , (7i) 95 , 94 , 93 , 92 , 23 , 24 , 93 , 92 , 91 , 90 , 71 , 74 , 73 , 72 , (7j) 21 , 22 , 73 , 72 , 71 , 74 , 91 , 90 , 89 , 88 , 19 , 20 , 21 , 22 , (7k) 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 29 , 30 , 101 , 31 , (7l) 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , (7m) 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , (7n) 60 , 0 } , (7o) Sev eral comments are made. First, in (7a) multiple of afore- mentioned patterns can be observed. Second, the sequence of Ex. Size |V| Path length ∆ AB T solve 1 13.5ha 24 4624.5m -829m / 15% 0.0002 s 2 74.3ha 101 26026.7m -1621m / 6% 0.0015 s 3 62.9ha 102 21974.3m -2242m / 9% 0.0016 s T able 2. Full field cov erage examples. Summary of results. Examples 1-3 correspond to Fields 1-3 in Fig. 5-7. Computation runtimes for Algorithm 1 are in bold for emphasis. vertices covering both the first and second obstacle area is in bold for emphasis throughout (7b)-(7d). This sequence is not intuitiv e a priori. Edges are covered twice according to the Eu- lerian graph augmentation. Third, the coverage of the third and fourth island is described in (7d) -(7f). Fourth, the sequence of vertices covering the fifth and sixth island is in bold for em- phasis in (7g)-(7k). Similar to Example 2, the exploration of interior edges connected to the headland island edges can be observed, which again is an immediate result of the e xploration heuristic in Step 7 of Algorithm 1. 3.2. P artial F ield Cover age Examples 4 to 6 Three partial field coverage examples are discussed. The first is based on Fig. 5, while the latter two are based on Fig. 7. It is stressed that Algorithm 2 is closely linked and e xplicitly builds 9 on the solution from Algorithm 1 for full field coverage as dis- cussed in sect. 2. This is enforced in order to make full and partial field cov erage compatible for minimisation of the soil compacted area from tractor tracks when accounting for lim- ited turning radii of agricultural machinery . In absence of this compatibility , depending on the routing mission, unconstrained shortest path computation may generate new transitions be- tween headland and interior edges, which in practice due to limited turning radii of in-field operating tractors would cause newly compacted areas for these transitions. Consequently , the harvestable area would be destro yed and crop lost. This lack of compatibility and thus danger of crop loss always occurs when partial field coverage routes are planned without accounting e x- plicitly for full field coverage. As an aside, it should be noted that the proposed method of Algorithm 2 for partial field co ver - age can be built on any pro vided solution for full field cov erage. For example, instead of providing the path length optimal so- lution for full field cov erage according to Algorithm 1 as data input, alternatively , the path length suboptimal AB-pattern solu- tion could be provided as input, { s t } T 0 , in Step 1 of Algorithm 2. As a result, partial field co verage plans compatible with the full field coverage plan according to the AB-pattern could be gen- erated. In the interest of space, this section focuses on the main practical aspects and hyperparameter choices for Algorithm 2 for the path length optimal case. For Example 4, the artificial problem setup comprises L E = { (6 , 17) , (9 , 14) , (20 , 21) } . This in-field routing task classifies as T5, arguably the most relev ant class for partial field coverage. For the results in T able 3, hyperparameters were set as N I = 6 and N T abu = 6 since here |L E | ! = 6 and according to (4). The optimal sequence of vertices, { s pfc ,? t } T pfc ,? 0 , is: { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 14 , 15 , 16 , 17 , 6 , 7 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 0 } , (8) where all edges inv olving L E are in bold for emphasis. T wo comments are made. First, note that edges from L E are initially undirected. Howe ver , as a consequence of Step 2 in Algorithm 2, they become directed in the list of P . These directions are then maintained throughout as emphasised in (8). Second, note how interior edge (7 , 16) < L E is trav ersed as part of the shortest path tow ards (20 , 21) after coverage of the 2 edges (9 , 14) and (17 , 6) that are element of L E . For Example 5, the artificial problem setup comprises 3 randomly and far apart selected vertices and edges, re- spectiv ely . These are L V = { 28 , 91 , 79 } and L E = { (63 , 64) , (54 , 55) , (101 , 31) } . This in-field routing task thus classifies as T7. For the results in T able 3, hyperparameters were set as N I = 50 and N T abu = 50. The optimal sequence of vertices, { s pfc ,? t } T pfc ,? 0 , is: { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 63 , 64 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 101 , 31 , 32 , 33 , 34 , 97 , 96 , 95 , 94 , 93 , 92 , 91 , 90 , 89 , 88 , 87 , 42 , 43 , 44 , 45 , 46 , 82 , 79 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 0 } (9) where all edges in volving L V and L E are in bold for emphasis. An additional comment is made. When tracing the output of T1, { s t } T 0 , from (7) as part of Step 2 in Algorithm 2, it is deriv ed P 3 = ( { 92 , 74 } , 91 ) . (10) This implies (i) that vertex 91, which is element of L V , is en- countered at index i = 3, and further (ii) that this verte x has 2 candidate v ertices, 92 and 74, immediately preceding verte x 91 in { s t } T 0 of T1. This possibility was discussed in detail in sect. 2.4. As indicated in (9), the final optimal transition is (92 , 91). For Example 6, the problem setup comprises 8 edges to imitate a precision agriculture application where only specific edges, ho wever , spread ov er the entire field, must be cov- ered. These are L E = { (1 , 60) , (2 , 59) , (19 , 88) , (20 , 89), (27 , 96) , (97 , 34) , (28 , 33) , (29 , 32) } . For the results in T able 3, hyperparameters were set as N I = 350 and N T abu = 350. The optimal accumulated path length minimising sequence of vertices, { s pfc ,? t } T pfc ,? 0 , is: { 0 , 1 , 2 , 59 , 60 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , (11a) 14 , 15 , 16 , 17 , 18 , 19 , 20 , 89 , 88 , 19 , 20 , 21 , 22 , 23 , (11b) 24 , 25 , 26 , 27 , 28 , 33 , 34 , 97 , 96 , 27 , 28 , 29 , 30 , 31 , (11c) 32 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , (11d) 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , (11e) 56 , 57 , 58 , 59 , 60 , 0 } , (11f ) where all edges inv olving L E are in bold for emphasis. T wo comments are made. First, in this example the second con- straint discussed in sect. 2.4 for the specific shortest path com- putation to enforce forward motion only becomes active. The result is the sequence of vertices in (11c), { 28 , 29 , 30 , 31 } , pre- ceding the directed edge traveral (32 , 29) in (11d). Second, no- tice how interior edge (30 , 31) is covered twice throughout (11). The second trav ersal in (11d) is part of the shortest path back to s end = 0, after coverage of the last remaining edge from L E . For full field coverage, all interior edges were constrained to be covered only once as part of the Eulerian graph augmenta- tion in order to ensure forward motion and to encourage cir- cular pattern-like optimal path planning whenev er applicable. Howe ver , for partial field coverage, this constraint is dropped to minimise path length and soil strain due to tractor tracks. Im- portantly , all transitions between interior edges and headlands are still fully compatible with the results for full field co verage, such that no new compacted areas due to limited turning radii of in-field operating vehicles are created. Finally , hyperparameter choices and the role of the tabu list are discussed. It was observ ed that the inclusion of a tabu list, T abu , in Algorithm 2 significantly helped to retrieve the global optimal solution for partial field cov erage tasks. Furthermore, by increasing the size of the tabu list, exploration is more en- forced and the process of finding the optimum is significantly accelerated. For example, when reducing the maximum tabu list size to N T abu = 25 for both Examples 5 and 6, and to still retriev e the optimal solution, N I had to be increased to 100 and 650, respecti vely . Then, the corresponding solve times for these scenarios were 0 . 3306s and 2 . 7173s, which are roughly twice as 10 Ex. Path length T solve 4 1924.5m 0.0012 s 5 4482.9m 0.1644 s 6 7413.4m 1.3984 s T able 3. Partial field cov erage examples. Summary of results. Example 4 refers to Field 1, while Example 5 and 6 correspond to Field 3. Computation runtimes for Algorithm 2 are in bold for emphasis. Hyperparameter choices used for the 3 examples are ( N I , N T abu ) = (6 , 6), (50 , 50) and (350 , 350), re- spectiv ely . large as the results in T able 3. T o stress this more, when reduc- ing N T abu to 10 in Example 6, it had to be set N I = 3300 before recov ering the optimal solution, which resulted in T solve = 14s. T o summarise, it was found that inclusion of the tabu list in Algorithm 2 is a simple yet e ff ective method to enforce explo- ration and speed up solve times. The larger the tabu list the better the exploration throughout Algorithm 2. 4. Benefits and Limitations One benefit of the proposed methods is very small T solve , which demonstrates its computational e ffi ciency . As T able 2 demonstrates, this particularly holds for full field coverage tasks and is a consequence of starting with an Eulerian graph G 0 be- fore subsequently removing covered edges such that the set of feasible edge transitions shrinks with iterations, which fur- ther accelerates runtimes. By contrast, as T able 3 demonstrates for partial field cov erage applications, T solve is typically higher . Similar to travelling salesman problems, here with additional constraints enforcing forward motion, and traversal along the headland allo wed only in CCW -direction, the sequence to trace a subset of vertices or edges is not straightforward to compute, particularly if multiple obstacle areas are present. Another benefit of proposed methods is the total absence of hyperparameters in Algorithm 1 and the presence of only two hyperparameters in Algorithm 2; preferably just 1 according to (4). As pointed out towards the end of sect. 3.2, the larger the maximum tabu list size, N T abu , the better for enforcing explo- ration. For a very small number of vertices and edges to cov er , one can select N T abu = ( |L E | + |L V | )!, which guarantees that all possible sequences of vertices and edges to be cov ered will be tested. The main practical limitation of proposed methods is nonin- tuitiv e path planning, in particular in presence of multiple ob- stacle areas. One may argue that e ven if the returned sequence of vertices is path length optimal, it may still be not imple- mentable. As long as tractors are not fully automatically follow- ing path plans, for example, similar to the method of Plessen & Bemporad (2017), fully optimised path plans may not be prac- tical. This is because the vehicle driver has to be “glued to” a navigation screen and audio commands to follow an nonintu- itiv e path plan while simultaneously concentrating on keeping track, which may be stressful to the dri ver . Howe ver , it is em- phasised that this aspect is explicitly addressed and mitigated by the design of Algorithm 1 and 2 through the enforcement of pattern-like field coverage whenever applicable, which (i) maintains optimality since being based on G 0 , and which (ii) can fav ourably be translated to consistent rule-based driving in- structions at least for all con vex fields, such that (iii) nonintu- itiv e paths remain only for field portions with multiple obstacle areas. 5. Conclusions This paper discussed optimal in-field routing for full and par - tial field coverage with arbitrary non-con vex fields and multiple obstacle areas. It is distinguished between nine di ff erent in-field routing tasks: two for full field coverage, sev en for partial field cov erage and one for shortest path planning between any two vertices of the transition graph. There was di ff erentiation be- tween equal and di ff erent start and end vertices for a task, cov- erage of all edges (full field coverage), or coverage of only a subset of vertices, and a subset of edges or combinations (par- tial field coverage). A ke y notion is how to e ffi ciently combine the cov erage of headland and island headland edges together in combination with the cov erage of all interior edges. Starting from an Eulerian graph augmentation, proposed algorithms en- courage a particular circular-like pattern whenev er applicable without compromising optimality , such that field cov erage is consistent for con ve xly shaped fields. For arbitrary non-con vex fields and with multiple obstacle areas, the resulting path guid- ance is not any more intuitiv e, howe ver the path length is op- timal. Proposed methods are primarily de veloped for spraying and fertilising applications with larger working widths for in- field operating v ehicles. The handling of subfields connected to the main field was discussed. The proposed solution for partial field coverage starts from the solution for full field coverage to consistently comply with transitions between interior and head- land edges by accounting for limited turning radii of agricul- tural vehicles, and thereby ensuring that no new tractor tracks are generated in view of compacted area minimisation. For par- tial field coverage, the benefit of employing a tabu list in the solution algorithm for improved exploration was highlighted. Proposed methods were illustrated by means of six experiments on three real-world fields, with a focus on demonstrating low computation runtimes and the e xplicit mentioning of sequences of vertices to emphasise aspects of the presented path planning methods. References Ahumada, O., & V illalobos, J. R. (2009). Application of planning models in the agri-food supply chain: A revie w . European Journal of Operational Resear ch , 196 , 1–20. Bochtis, D., Griepentrog, H. W ., V ougioukas, S., Busato, P ., Berruto, R., & Zhou, K. (2015). Route planning for orchard operations. Computers and Electr onics in Agriculture , 113 , 51–60. Bochtis, D., & V ougioukas, S. (2008). Minimising the non-working distance trav elled by machines operating in a headland field pattern. Biosystems En- gineering , 101 , 1–12. Bochtis, D. D., Sørensen, C. G., Busato, P ., & Berruto, R. (2013). Benefits from optimal route planning based on B-patterns. Biosystems Engineering , 115 , 389–395. Bondy , J. A., Murty , U. S. R. et al. (1976). Graph theory with applications volume 290. Citeseer . 11 Dijkstra, E. W . (1959). A note on two problems in connexion with graphs. Numerische Mathematik , 1 , 269–271. Eiselt, H. A., Gendreau, M., & Laporte, G. (1995a). Arc routing problems, part i: The Chinese postman problem. Operations Resear ch , 43 , 231–242. Eiselt, H. A., Gendreau, M., & Laporte, G. (1995b). Arc routing problems, part ii: The rural postman problem. Operations Resear ch , 43 , 399–414. Gri ff el, M. L., V azhnik, V ., Hartley , D., Hansen, J. K., & Richard, T . L. (2018). Machinery maneuvering e ffi ciency and perennial crops: field shape com- plexity defines the e ffi cienc y . In 2018 ASABE Annual International Meeting (p. 1). American Society of Agricultural and Biological Engineers. Hameed, I., Bochtis, D., Sørensen, C. G., Jensen, A. L., & Larsen, R. (2013a). Optimized dri ving direction based on a three-dimensional field representa- tion. Computers and Electr onics in Agricultur e , 91 , 145–153. Hameed, I. A., Bochtis, D., & Sorensen, C. (2011). Dri ving angle and track se- quence optimization for operational path planning using genetic algorithms. Applied Engineering in Agricultur e , 27 , 1077–1086. Hameed, I. A., Bochtis, D., & Sørensen, C. A. (2013b). An optimized field coverage planning approach for navigation of agricultural robots in fields in volving obstacle areas. International J ournal of Advanced Robotic Sys- tems , 10 , 231. Hart, P . E., Nilsson, N. J., & Raphael, B. (1968). A formal basis for the heuris- tic determination of minimum cost paths. IEEE Tr ansactions on Systems Science and Cybernetics , 4 , 100–107. Jensen, M. A. F ., Bochtis, D., Sørensen, C. G., Blas, M. R., & L ykkegaard, K. L. (2012). In-field and inter-field path planning for agricultural transport units. Computers & Industrial Engineering , 63 , 1054–1061. Mederle, M., & Bernhardt, H. (2017). Analysis of influencing factors and de- cision criteria on infield-logistics of di ff erent farm types in germany . Agri- cultural Engineering International: CIGR Journal , 19 , 139–148. Oksanen, T ., & V isala, A. (2009). Coverage path planning algorithms for agri- cultural field machines. J ournal of Field Robotics , 26 , 651–668. Paraforos, D. S., H ¨ ubner , R., & Griepentrog, H. W . (2018). Automatic determi- nation of headland turning from auto-steering position data for minimising the infield non-working time. Computers and Electr onics in Agricultur e , 152 , 393–400. Plessen, M. M. G. (2018). Partial field cov erage based on two path planning patterns. Biosystems Engineering , 171 , 16–29. Plessen, M. M. G., & Bemporad, A. (2017). Reference trajectory planning un- der constraints and path tracking using linear time-v arying model predicti ve control for agricultural machines. Biosystems Engineering , 153 , 28–41. Rodias, E., Berruto, R., Busato, P ., Bochtis, D., Sørensen, C., & Zhou, K. (2017). Energy savings from optimised in-field route planning for agricul- tural machinery . Sustainability , 9 , 1956. Santoro, E., Soler , E. M., & Cherri, A. C. (2017). Route optimization in mecha- nized sugarcane harvesting. Computers and Electronics in Agricultur e , 141 , 140–146. Seyyedhasani, H., & Dvorak, J. S. (2018). Dynamic rerouting of a fleet of vehicles in agricultural operations through a dynamic multiple depot v ehicle routing problem representation. Biosystems Engineering , 171 , 63–77. Seyyedhasani, H., Dv orak, J. S., & Roemmele, E. (2019). Routing algorithm selection for field coverage planning based on field shape and fleet size. Computers and Electr onics in Agricultur e , 156 , 523–529. Sørensen, C. G., & Bochtis, D. D. (2010). Conceptual model of fleet manage- ment in agriculture. Biosystems Engineering , 105 , 41–50. T a ¨ ıx, M., Sou ` eres, P ., Frayssinet, H., & Cordesses, L. (2003). Path planning for complete coverage with agricultural machines. In Field and Service Robotics (pp. 549–558). Springer , Germany . T oth, P ., & V igo, D. (2014). V ehicle routing: pr oblems, methods, and applica- tions . SIAM. Y u, X., Roppel, T . A., & Hung, J. Y . (2015). An optimization approach for planning robotic field coverage. In IECON 2015-41st Annual Conference of the IEEE Industrial Electr onics Society (pp. 004032–004039). Zhou, K., Jensen, A. L., Bochtis, D. D., & Sørensen, C. G. (2015). Quantifying the benefits of alternative fieldwork patterns in a potato cultiv ation system. Computers and Electr onics in Agricultur e , 119 , 228–240. Zhou, K., Jensen, A. L., Sørensen, C. G., Busato, P ., & Bothtis, D. (2014). Agri- cultural operations planning in fields with multiple obstacle areas. Comput- ers and Alectr onics in Agricultur e , 109 , 12–22. 12
Original Paper
Loading high-quality paper...
Comments & Academic Discussion
Loading comments...
Leave a Comment