Optimisation of surveillance camera site locations and viewing angles using a novel multi-attribute, multi-objective genetic algorithm: A day/night anti-poaching application

The optimisation of surveillance and detection systems comprised of specialised cameras is a well-known problem in the operations research literature. In these problems, the aim is to locate optimal camera sites so that their combined coverage with respect to some area of interest – called a cover zone – is maximised. The standard approach is to maximise cover with respect to a single cover zone, and to consider either cameras providing rotational (360 ◦ ) cover, or cameras fixed to a specific direction and with visibility limited to within the camera ’ s field-of-view. The Rhino Pride Foundation in South Africa required the optimisation of a camera surveillance system for a new protected area. Their coverage requirements were, however, beyond what has been previously encountered in the literature. Four covering objectives over three separate cover zones were to be maximised, while the system was to be optimised for rotational cover during the day, and some cameras would be required to be fixed towards a high-risk zone at night and limited to their field-of-view. A novel multi-attribute genetic algorithm based on the popular NSGA-II was developed for this purpose. Various solutions were provided to and considered by the Rhino Pride Foundation, and the final selected solution resulted in camera site locations providing high-quality cover with respect to all the covering objectives, while requiring fewer cameras than initially expected – resulting in significant cost savings and reduced future maintenance and upgrade requirements. The solution approach presented here may be applied to other site-selection problems with similar coverage requirements, including military radar and weapon systems, and wildfire detection systems.


Introduction
The illegal poaching of wildlife is a global concern and presents significant challenges to conservation and management practitioners (Kamminga, Ayele, Meratnia, & Havinga, 2018; UN Office on Drugs and Crime, 2016). South Africa is one of the most heavily affected countries, primarily a result of its significant rhino numbersthe largest population in the world (Eikelboom et al., 2020;Kamminga et al., 2018;Lunstrum, 2014; UN Office on Drugs and Crime, 2016). An increase in the need for anti-poaching solutions along with a rapidly advancing technological landscape have resulted that numerous devices and approaches exist for the detection and/or prevention of poaching (Eikelboom et al., 2020;Kamminga, Ayele, Meratnia, & Havinga, 2018;Lunstrum, 2014;Mukwazvure & Magadza, 2014), along with more traditional manned patrols and lookouts (Astaras et al., 2020;Plumptre et al., 2014). Popular sensor types include radar, acoustic, optical (including infra-red and thermal), seismic, or combinations. The focus in this paper is on optical sensor systemsmore specifically, cameras with infra-red (IR) capability for improved night-time detection.
Early in 2020 the Rhino Pride Foundation (RPF) (www.rhinopridefo undation.org) in South Africa required optimal site locations for a new camera security system, with the main purpose of providing perimeter surveillance and detection for a rhino protection project. The requirements included objectives that were more complex than typically encountered in the surveillance and covering location literature. For example, the system was to be configured with consideration given to the visibility cover that it could achieve with respect to three separate areas of interest requiring surveillance coveragecalled Cover Zones (CZs) (Heyns, du Plessis, Kosch, & Hough, 2019;Heyns & van Vuuren, 2018). In the related literature, the consideration of more than one CZ is rare and a recent paradigm shift (Feng & Murray, 2018;Heyns, du Plessis, Kosch, & Hough, 2019). Furthermore, the problem posed by RPF required the optimisation of a system with simultaneous consideration given to two types of camera functionalities; rotational, offering 360 • cover (Bao, Xiao, Lai, Zhang, & Kim, 2015;Heyns, du Plessis, Kosch, & Hough, 2019), or fixed towards a specified direction with coverage limited to the camera's field-of-view (FOV) (Han et al., 2019;Morsly, Aouf, Djouadi, & Richardson, 2012;Xu, Lei, & Hendriks, 2011). Site planning with consideration of both modalities is a requirement that has not been previously investigated in the literature and required a novel solution approach to be developed. Further exacerbating the challenge, RPF desired candidate solutions within two weeksto be presented as maps with unique site location combinations and estimated coverage mapsdue to deadlines for stakeholder/donor briefings and installation contract negotiations.
A novel multi-attribute variation of the widely used Non-dominated Sorting Genetic Algorithm-II (NSGA-II) (Deb, Pratap, Agarwal, & Meyarivan, 2002) was developed specifically for this problem, and it was possible to rapidly determine a large number of high-quality potential camera-system layouts for RPF. Those that performed best with respect to RPF's specific requirements and objectives were presented for final comparison and decision-making. Most importantly, the solutions provided RPF with various trade-offs to consider in their selection process, e.g. the cover achieved with respect to the CZs and areas where rhinos are considered to be more active, and the proposed locations of the sites in relation to each other (their symmetry), and the physical terrain at and around the proposed sites. At the time of writing, the on-site installation of the layout that was selected according to these preferences was nearing completion.
The purpose of this paper is to present the genetic algorithm (GA) solution approach that was developed specifically for this problem, and to present the work in such a manner that the actual collaborative efforts and decision-making processes are elucidated. Due to the sensitive nature of the rhino poaching problem and for confidentiality purposes, neither the actual area for which the system was optimised nor the precise specifications of the cameras that were used are revealed or discussed here. A suitable alternative study region was identified for the purpose of this paper, exhibiting similar topographical characteristics and logistical/decision-making challenges that were encountered in the actual problem. Furthermore, typical camera specifications (similar to those that were used in the actual system) are used here, and the same solution process is followed anew.
The main contributions of the work presented here are summarised below.
• Camera coverage is maximised with respect to three separate CZs. This is a new milestone in covering location problems. • The solution approach that was developed maximises the camera system's coverage with respect to three maximal covering objectives (Church & ReVelle, 1974), in addition to one backup (overlapping) covering objective (Hogan & Revelle, 1986) -totalling four covering objectives altogether. The standard number of covering objectives simultaneously considered in location problems in the literature is usually limited to two; when backup cover is considered as an additional objective to maximal cover, with respect to one CZ. • Cameras are placed for a combination of conditions; some cameras are rotational 24 h, while some cameras are rotational during the day and then fixed to a specific viewing direction at night. The simultaneous optimisation of day/night coverage and a combination of rotational and fixed camera coverage is another first. • A mathematical model is formulated for the Angled Maximal Covering Location Problem (AMCLP).
• The solution approach implemented here may be similarly beneficial to other site-selection problems in which coverage depends on lineof-sight (LOS) for systems with varying equipment capabilitiesmilitary defence systems comprising radars and weapons are prime examples (Heyns & van Vuuren, 2018;Tanergüclü, Maraş, Gencer, & Aygüneş, 2010).
The remainder of the paper is organised as follows. In Section 2, background information on relevant previous work is provided. Section 3 describes the data and methods applied in this paper, including the example study area and the problem specification, and the processes followed to develop the new GA. Section 4 provides numerical and visual results of the GA applied to the example problem instance, while in Section 5 the results are analysed according to heuristic performance, practical considerations, and opportunities for future work. The paper closes with a brief conclusion in Section 6.
Camera systems are planned with consideration given to either 360 • cover (Bao et al., 2015;Heyns, du Plessis, Kosch, & Hough, 2019), or cover achieved when fixed to a specified orientation and limited to within the camera's FOV (Han et al., 2019;Morsly et al., 2012;Xu et al., 2011) -but not both. A camera's FOV can be considered in the horizontal or vertical planes (Bouyagoub et al., 2010;Conci & Lizzi, 2009;Kritter et al., 2019), although it is standard practice to consider the horizontal FOV only (Han et al., 2019;Heyns, du Plessis, Kosch, & Hough, 2019;Xu et al., 2011). This is because the vertical FOV has a negligible impact on medium-to far-field visibility and only truly influences near-field visibilitywhich explains why it is mainly considered in indoor and constrained urban environments. As a result, vertical FOV was not considered in the work presented here and is not discussed in the remainder of this paper.
Estimating a system's detection cover is often determined using binary values. That is, an object is visible and a positive detection value of 1 is achieved if the LOS between the observer and object is not obstructed by terrain or obstacles and the object is within the observer's effective range (Bresenham, 1965). Otherwise, a negative result with a value of 0 is returned. Positive detection can alternatively be measured as a signal strength level ranging between 1 and 0, deteriorating in strength with an increase in distance from the observertransmitter signal strength is one example (Minciardi, Sacile, & Siccardi, 2003). Nonetheless, it remains standard practice in surveillance/visibility applications to use a binary representation (Bao et al., 2015;Heyns et al., 2021;Kim, Murray, & Xiao, 2008;Kim, Rana, & Wise, 2004;Murray, Kim, Davis, Machiraju, & Parent, 2007). These include large-scale outdoor visibility coverage problems where the detection range is well beyond what was used in the RPF probleme.g. 8 km used by Heyns, du Plessis, Kosch, and Hough (2019) for wildfire detection versus a 300 m range used hereand the binary approach was followed.

Calculating coverage
Raster data is a digital representation of the real-world environment and is often used for solving site location problems with LOS-based coverage requirements (Heyns, du Plessis, Kosch, & Hough, 2019;Kim et al., 2004;Kwong et al., 2014). Fig. 1(a) provides an example of a hilly section of terrain, while the actual raster points from which the digital elevation model is created and visualised are shown on the surfaceeach point corresponds to an elevation value measured at uniformlyspaced intervals across longitude and latitude.
When using the highest resolution of satellite-sampled elevation data that are freely available to the public, the distance between neighbouring points is approximately 30 m. The raster points within an area that is considered suitable for facility placement are used as candidate sites and are collectively called the Placement Zone (PZ). The PZ is typically reduced to candidate sites that satisfy certain placement requirements, such as lying within allowable geographical and administrative/municipal boundaries, or those that exhibit terrain characteristics which are suitable for the placement of equipment (Eugenio et al., 2016;Heyns et al., 2021a;Kim, Rana, & Wise, 2004;Yu et al., 2016). Similarly, the raster points that lie within the boundaries of separate CZs are used as respective demand point sets (Heyns, 2020).
Determining if a point in a CZ is visible from an observer is achieved by determining whether the terrain raster-points interfere with (obstruct) the LOS between the observer and point in question (Bresenham, 1965;Heyns & van Vuuren, 2013). The viewshed of an observer is the collection of all points that are visible within its detection range (Floriani & Magillo, 2003;Kim et al., 2004;Nagy, 1994) and a system viewshed is then determined by merging the separate viewsheds of all cameras in the system. Fig. 1(b) provides an example of a system viewshed achieved by three observers placed on the terrain surface from Fig. 1(a). The red points are visible from only one observer, while the blue points are visible from twowhich is the visibility criterion required for backup coverage discussed in more detail in the next section. The observation height of the observer plays an important role in viewshed computations, since higher observation heights lets the observer see over more obstacles (Lee, 1991).
The number of demand points in each separate CZ that are visible from a specific camera system layout is used to calculate an estimation of the CZ's cover percentage achieved by the system. Backup cover is similarly estimated, as the percentage of points in a CZ that are visible from at least two cameras.

Covering location problems
Finding the optimal site locations for a fixed number of cameras so that their combined visibility coverage over a CZ is maximised is an application of the Maximal Covering Location Problem (MCLP) (Church & ReVelle, 1974). The MCLP has been implemented in a number of realworld studies related to the placement of facilities such as transmission devices (Gencer, Aydogan, & Celik, 2008;Krzanowski & Raper, 1999;Marianov & Eiselt, 2012;Mathar & Niessen, 2000;Shillington & Tong, 2011), weather radar (Minciardi, Sacile, & Siccardi, 2003), and surveillance/detection devices (Bao et al., 2015;Cervilla, Tabik, & Romero, 2015;Heyns, du Plessis, Kosch, & Hough, 2019;Kim et al., 2004). The Backup Covering Location Problem (BCLP) (Hogan & Revelle, 1986) is often considered in addition to the MCLP and serves the purpose of maximising overlapping cover. This is for failsafe (more robust) design, so that the loss of cover that may be experienced in the event of an observer's failure is compensated for by the complementary cover achieved by one or more other observersi.e. minimising the area that becomes "invisible" in the event of the loss of an observer (Heyns & van Vuuren, 2016;Kim, Murray, & Xiao, 2008).
The research in the covering literature normally considers only one CZincluding problem instances that consider multiple covering objectives in the form of MCLP and BCLP applied to the same CZ (Curtin, Hayslett-McCall, & Qiu, 2010;Grubesic & Murray, 2002). Rare exceptions in which more than one CZ is considered include a recent street light sighting problem (Feng & Murray, 2018), in which cover is provided to two CZs comprising 1) intersections, and 2) street segments, while Heyns, du Plessis, Kosch, and Hough (2019) determined maximal Each raster point contains a latitude/longitude coordinate and its corresponding elevation, from which a representation of the terrain surface may be visualised and terrain-based computations can be performed. (b) An example of a viewshed that may be determined for a system of three observers placed on the terrain surface from (a). Points are visible from one observer (red), or from more than one (blue)this provides backup cover opportunities. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

Fig. 2.
A Pareto front in multi-objective function space, which is sought for decision-making purposes. cover with respect to smoke layers at different heights above the terrain surface for the purpose of wildfire detection.

Covering problem solution approaches
More than one covering objective evaluated with respect to more than one CZ is considered in this paper and a multi-objective (MO) optimisation solution approach is therefore followed. The aim in MO optimisation problems is to obtain a set of solutions that is commonly known in the literature as the Pareto front of non-dominated solutions (Zitzler, Laumanns, & Bleuler, 2004). An example of a Pareto front is displayed in Fig. 2 by the black markers, for a problem with two covering objectives determined with respect to two CZs. In the figure, each solution represents a unique candidate facility layout and its location on the graph reflects its coverage percentage achieved with respect to the points contained within each CZ.
Decision-makers will typically analyse only Pareto optimal solutions because they outperform the others in terms of their trade-offs in cover achieved with respect to the CZs. A final layout is chosen from theseaccording to the subjective importance they associate with each CZ and its expected coverage, while the final proposed sites and their location and geometry with respect to the terrain and each other also play a role. For example, suppose either one of CZ1 or CZ2 is considered significantly more important than the other, then decision-makers may choose one of the solutions named "CZ1 optimal" or "CZ2 optimal", or an alternative solution nearby one of these. Other solutions provide additional trade-off alternativese.g. solutions that perform well with respect to both CZs for a more "balanced" outcome. The figure shows solutions evaluated with respect to two covering objectives; however, the same principles apply for three or more objectives, but is more difficult to visualise.
Determining the exact (true) front of all Pareto-optimal solutions is a complex challenge which is often not possible of being solved in realistic computation times (Bao et al., 2015;Current, Daskin, & Schilling, 2002;Nagy, 1994). Instead, a standard approach is to approximate solutions along the Pareto front using methods such as integer-linear programming (ILP) (Bao et al., 2015;Heyns, 2020;Murray et al., 2007) and heuristics (Bao et al., 2015;Kim et al., 2004;Kim, Murray, & Xiao, 2008;Raisanen & Whitaker, 2005;Tong, Murray, & Xiao, 2009). ILP solvers return a single solution per run and may determine numerous solutions in different regions along the Pareto front by directing the search with relative importance weights assigned to each CZ and executed in multiple runs (Cohon, 1978;Marler & Arora, 2010;Yao, Zhang, & Murray, 2018). The main disadvantages of using ILP solvers are that they are limited to the computational complexity that they can process successfully, and assigning suitable weight-combinations is a notoriously sensitive and laborious exercise (Stanimirovic, Zlatanovic, & Petkovic, 2011). Heuristics, on the other hand, can attempt to find solutions no matter the size of the problem and are often used when the problem complexity is well beyond an ILP-solver's range. Heuristics may nevertheless require significant computation times to arrive at a Pareto front approximation and there is no guarantee that the heuristic-obtained solutions are on or near to the true Pareto front.
The problem considered here requires the consideration of multiple CZs and systems comprised of cameras with 360 • and FOV-limited cover and this would have required a novel mathematical formulation if an ILP approach were to be followed, while there was also no guarantee that an ILP solver would have been able to find solutions. With a short time-frame of two weeks to determine solutions for RPF, a suitable heuristic was therefore chosen insteadits selection is motivated in more detail and a brief overview of its processes is described next. A mathematical problem formulation has nevertheless been derived and appears in the Appendixand could be used with ILP solvers in future problems.

Genetic algorithms
The heuristic employed in this paper is a variant of the NSGA-II (Deb et al., 2002), which is categorised as a GA (Tamaki, Kita, & Kobayashi, 1996). GAs represent solutions as chromosomes, and a candidate camera layout is represented as a chromosome string of candidate site numbers. Take Fig. 3 for example, in which a number of candidate sites on the terrain surface are enveloped within some example PZ boundary. If each candidate site is assigned a unique number, a candidate solution is represented by a chromosome string of these site numbersthe string [35,60,87,125,143] in the figure therefore represents a layout with sites 35, 60, 87, 125 and 143 selected for camera placement.
GAs approximate the Pareto front by iteratively evolving an initial, randomly generated population of such chromosome-string candidate solutions over multiple generations. The algorithm terminates when it ceases to show significant improvement in the solution quality of successive generations or after a specified maximum number of generations has been reached (Deb et al., 2002;Heyns, 2016). The NSGA-II employs two chromosome modification processes to generate new solutions: crossover and mutation. Crossovers (swaps) between selected "parent" chromosomes create new "offspring" solutions by exchanging subsections along the parent chromosomes with each other (Deb et al., 2002). Mutation stochastically introduces new, unexplored candidate sites into the chromosomesthereby promoting the diversity of candidate sites in the chromosomes, and the population in general.
The NSGA-II was implemented in this project for three reasons. First, it has been used extensively in the literature for solving MO optimisation problems, including applications that consider covering objectives similar to the ones encountered in this paper (Heyns, du Plessis, Kosch, & Hough, 2019;Heyns & van Vuuren, 2018;Kim et al., 2004;Kim, Murray, & Xiao, 2008;Kwong et al., 2014;Raisanen & Whitaker, 2005). Second, the structure of the NSGA-II's solution representation scheme (as described in Fig. 3) is perfectly suited to the site location problem. More importantly, a straightforward approach could be followed to implement night-time camera orientation angles as an added attribute to the chromosome structure, after which it remained compatible with the traditional operations of GAs. Finally, numerous potential layouts were required within a short time-frame of two weeks only. Original and custom versions of the NSGA-II were readily available from the author's previous research applied to LOS-based covering location problems (Heyns, 2016;Heyns, du Plessis, Kosch, & Hough, 2019;Heyns & van Vuuren, 2016;Heyns & van Vuuren, 2018), including site location optimisation of an actual camera-based wildfire detection system in South Africa (Heyns et al., 2021).
The NSGA-II's traditional mutation process was replaced by a new approach in this problem, while crossovers remained the same. A new process was added to the general NSGA-II framework to search for optimal night-time camera viewing anglesthese are discussed in detail later. Fig. 3. An illustration of a chromosome representation of a candidate solution comprising five sites, selected from the sites enveloped within an example PZ boundary.

Study area
Due to confidentiality and data sensitivity concerns associated with the protection of rhino in the actual project area, it was necessary to identify an alternative section of terrain for the purposes of this paper. The alternative region is illustrated in elevation in Fig. 4(a), along with a manually created perimeter. The area protected within this perimeter measures approximately 1.7 km 2 , and exhibits similar topographical characteristics and logistical/decision-making challenges that were encountered in the actual problem.
The perimeter is secured by an electrified fence and monitored and patrolled by specially trained security personnel. Along with the camera system, poachers should not be allowed to find a way of entry across the perimeter, day or night. The focus is on early detection of activity outside the perimeter, followed by intervention if necessary. Any entry to within the secured perimeter is considered a failureeven if the culprits are apprehended, the loss of the life of a rhino is nevertheless possible if intrusion was successful.
Under RPF's guidance, a high-risk section of the perimeter was identifieda similar approach was followed here and the selected section is visible in red in Fig. 4(a). A perimeter section is considered highrisk when it is exposed to regions from where human access is more likely and is therefore associated with a higher risk of poaching attempts. Other factors taken into consideration when identifying the high-risk zone included ease of exit in case of poacher entry (poachers will want to be able to evacuate rapidly on foot or with vehicles), terrain conditions and vegetation cover (hiding capability), while the security of neighbouring properties also plays a role. For example, if there are other neighbouring properties with their own security systems, it would be less likely for poachers to approach through these as this would require intrusion and possible detection from those systems before even reaching RPF's protected area.

Cover zones and placement zone
Three CZs were considered and are illustrated in Fig. 4(b), in the shape of the raster points that fall within the specified areas described below.
• Full-perimeter CZ: all terrain 60 m beyond the full perimeter (therefore a combination of all points outside the regular and highrisk section of the fence). • High-risk CZ: all terrain 60 m beyond the high-risk section of the perimeter. This area requires comprehensive monitoring at night. • Interior CZ: the interior area within the perimeter. Monitoring this area is required for general surveillance, e.g. monitoring rhinos, and staff and project activity.
The distances between raster data points were halved from the publicly available 30 m Shuttle Radar Topography Mission elevation data (https://dwtkns.com/srtm30m/), to be spaced at approximately 15 m along the rows and columns as in Fig. 4(b). The higher resolution data were obtained using the resampling tool in ArcGIS 10.5.1 (bilinear interpolation between the points was used).
Resampling to 15 m was performed for practical reasons. First, a finer resolution provides a more visually appealing and "complete" picture of the coverage achieved, which is easier for decision-makers to interpret and analyse (Polidori & El Hage, 2020). Second, spacings of 30 m may be adequately precise for covering problems spanning vast regions (especially when considered relative to the size of the study terrain) (Heyns, du Plessis, Kosch, & Hough, 2019). Inversely, reducing these spacing distances in smaller areas provides decision-makers with more specificity to their site suggestionswhen a distance of 30 m may be too coarse a resolution relative to the size of the terrain. Additionally, the 15 m resolution was deemed suitable since the literature suggests that increased resolution (also referred to as granularity) improves the accuracy of coverage estimation with respect to the CZs (Wei, 2016; Yin  , 2015). This may well be because the discretised model of the terrain approaches the true continuous surface as the resolution is increased. Increasing the resolution, however, also increases the complexity of the search process, since an increase in the number of candidate sites also results in an increase in the number of potential site location combinationsa larger solution space for the heuristic to explore in the search for non-dominated solutions. Readers interested in sampling strategies for covering location problems and their effects on solution quality and computational complexity are referred to Murray and O'Kelly (2002), Tong and Wei (2017), Heyns (2020) and Wei (2016) for good starting discussion points and references to various applicable research.
Practical considerations for the placement of cameras included existing structures and the surrounding vegetation. One old house existed inside the perimeter and was to be renovated and expanded. Raster points within this building expansion area were removed as candidate sites from the feasible PZ since camera sites were not desired or possible here. The underlying terrain in this area was raised by 5 m, where applicable, to simulate expected visibility obstruction caused by structures. This step is not replicated in the problem instance presented in this paper and it is assumed that no structures exist. In terms of vegetation, the terrain is mostly covered by grass (which the rhinos graze to near-surface height) and sparsely covered by trees. The grass therefore did not pose any visibility interference concerns, while RPF assured that any trees with significant visibility interference could either be cut down, or relocated 1 within the perimeter to preserve shading for the rhinos (some trees are protected species and may not be cut down). It was therefore possible to determine cover without considering vegetation interferencethis approach is replicated here. Finally, while the terrain in the actual problem area is rocky in some areas, it is generally rolling and smooth and there are no significant boulders or similar objects/terrain features that may cause interference with LOSthere was therefore no need to consider this in the actual problem instance, nor is it considered in the example problem instance presented in this paper.
It was agreed with RPF that the cameras could be placed anywhere inside the perimeter. The PZ therefore envelops the interior points in Fig. 4(b), totalling 8302 sites at the 15 m resampled resolution. This is a manageable number, since the physical size of the area considered here is small compared to other significantly larger areas in related studies in which the number of candidate sites totalled over 45,000 and over 700,000 in two separate problems (Heyns et al., 2021). Regarding the CZs, the number of points within each (after resampling) totalled 1523 for the full-perimeter CZ, 634 for the high-risk CZ, and 8302 for the interior CZ, respectively.

Camera specifications and covering objectives
At night, the cameras are limited to their IR capability. All planning and optimisation were performed taking only the cameras' shorter night-time IR range into consideration. This not only ensures that the optimisation-proposed results offer suitable night-time surveillance, it also indirectly leads to more comprehensive daytime visibility coverwhen the cameras can operate well beyond their IR-limited rangewhile simultaneously serving as a means to mitigate for reduced visibility capability during unfavourable weather conditions (e.g. mist). Parameters that are typical among the type of IR cameras that were selected for use in the actual system are used for the computations in this paper. Assume that the cameras are placed on poles 5 m above the ground and have an IR range of 300 m, and a horizontal FOV of 70 • .
The covering objectives that were provided as input to the GA are summarised below.
• Objective 1: The rotational (360 • ) cover with respect to the fullperimeter CZ is to be maximised. This would be for day-and nighttime surveillance. It was agreed that a minimum coverage percentage of 80% should be achieved (this percentage and those stated below were modified from the actual values used in the real study area). • Objective 2: At night, cameras that are within the 300 m detection range of the high-risk section of the perimeter are to be fixed in their viewing direction towards the high-risk CZ (i.e. not rotating and limited to their FOV), and this coverage is to be maximised. The other cameras would remain rotational, albeit mostly directed to the perimeter (controlled by software or manually by control room operators). At least 90% cover was desired for this objective. These fixed cameras could still be rotated at night if required, thus remaining capable of contributing 360 • cover with respect to the first objective. • Objective 3: Maximise rotational cover of all the cameras with respect to the interior CZ, for both day and night-time cover (during the night, cameras fixed towards the high-risk CZ can nevertheless be rotated if required, thus remaining capable of contributing 360 • cover to this objective). The minimum cover desired was 70%. • Objective 4: Maximise backup cover that may be achieved by the cameras fixed towards the high-risk CZ. Full rotational cover was considered for this objective, since the cameras would require rotations to fill the "gaps" in coverage, should one of these cameras go out of operation. A minimum backup coverage of 70% was desired (i. e. at least 70% of the high-risk CZ points should be visible from two or more cameras).

Heuristic design
3.4.1. Chromosome representation A novel chromosome representation scheme was required for this problem instance because of the added requirement for certain cameras to be fixed in viewing direction towards the high-risk CZ at night. The standard chromosome representation of a candidate solution is represented as a string combination of candidate site locations (as previously illustrated in Fig. 3) here, these site numbers are called an attribute of each entry. Now, an additional attribute is introduced to certain entries in the chromosome: that of the orientation angle of the camera, measured counter-clockwise from east in the horizontal plane. This attribute is only added to those entries with site locations within the visible range from a CZ with angled coverage requirementsthe highrisk CZ in this paper. This chromosome scheme is illustrated graphically in Fig. 5, for the same hypothetical solution introduced in Fig. 3. As may be seen in the figure, angle attributes are only added to those sites from which angled cover can be obtained. These angles accompany and progress together with the candidate sites as multi-attribute entries during the optimisation process.
It is possible that a specific candidate site may be present in multiple candidate solutions, but with different accompanying angles in each solution. The optimal angle attributed to a site within a specific candidate solution depends on the angled coverage achieved by its counterparts in the solution, and the heuristic presented in this paper also performs angle modifications (mutations) on each angled covering contribution in the solution, in the pursuit of optimised combined angled cover that may be achieved. This angle mutation process is elucidated later.
When the GA initiates, it generates a starting population of solutions (a characteristic of its population-based nature discussed in Section 2.5). In standard GA applications, the chromosome strings would be assigned candidate site numbers only (as per Fig. 3). The addition of the angle attribute introduces the requirement of assigning a starting angle to each entry with angled coverage requirements. Stochastically assigning angles is one possibility, but may result in a camera initially facing away from the area requiring angled cover. This is not a major obstacle, since the heuristic is expected to modify these angles during the solution process and eventually arrive at more suitable angles. However, this would require increased computational effort from the heuristic, compared to the actual approach that was followed. Instead, suitable "starting" angles were pre-determined for each candidate site and, upon the stochastic selection and assignment of a site to a chromosome entry, accompanies the selected site. These starting angles were determined using ArcGIS's Euclidean direction tool for each site within detection range from the high-risk CZ. The angle determined for each site is measured counter-clockwise between east and a line drawn from the site to the nearest point on the high-risk CZ (i.e. the euclidean direction). The angles that were determined in this manner for affected sites are provided in Fig. 6.

Crossover
As earlier described in Section 2.5, the purpose of crossover is to generate new offspring solutions by exchanging sub-sections along the parent chromosomes. There are various strategies that may be employed, as discussed and investigated in various publications (De Jong & Spears, 1992;Eshelman, Caruana, & Schaffer, 1989;Soon, Guan, On, Alfred, & Anthony, 2013;Syswerda, 1989;Ting, Lee, Chang, & Wu, 2009). In fixed-point crossover, one or more points (typically up to two) are chosen along two parent chromosomes and the sub-strings are swapped (De Jong & Spears, 1992). In uniform crossover, each entry along one parent chromosome is swapped an entry from the second parent chromosome, subject to a swapping probability which is typically 0.5 (Syswerda, 1989).
The suitability of different crossover techniques and the quality of their resulting optimisation results may vary significantly depending on specific problem characteristics and application, and problem complexity and sizethere is generally no best approach and each problem requires an in-depth analysis to determine the best one (Eshelman et al., 1989). Such an analysis is certainly important to consider in future applications of the work presented here, but is well outside the scope of this paper. For the purposes of the research presented here, three-point crossover was used in the actual site selection problem and again in the hypothetical problem instance presented in this paper. This is because various publications allude to uniform and kpoint crossover (where k > 2) being superior to one-and two-point crossover (De Jong & Spears, 1992;Eshelman et al., 1989;Soon et al., 2013;Ting et al., 2009) -which is related to the amount of 'disruption' caused by the crossover (De Jong & Spears, 1992), where more disruption is generally better and typically observed more regularly with k-point and uniform crossover.
After following a non-arbitrary process to select two parents which are destined for crossover (the selection process is described later in the overview of the heuristic process), the location of the crossover points are randomly chosen and each of the parent strings are "cut" at these crossover points. The resulting sub-strings are then interchanged alternately between the crossover points, resulting in two new offspring chromosomes as illustrated in Fig. 7 for a three-point crossover operation. The angles in the figure are displayed graphically instead of using numbers, for visual simplicity, and this is done for related figures in the remainder of the paper. Any angles associated with relevant sites are crossed over together with the site number. This type of crossover creates new site (and angle) combinations as solutions, but does not alter the constituent sites and angles of the parents. The parents that are selected for crossover typically perform well with respect to the objective functions, resulting that the offspring solutions inherit some of the strong properties of their parents (strong sites and angles), but at the same time new solution combinations are explored.
Crossovers may, however, lead to infeasible solutionsfor example, a specific site that is present in both parents may be duplicate in an Fig. 6. Starting angles were determined for sites within the 300 m detection range from the high-risk CZ, assigned during the creation of the initial population of candidate solutions. The angles are determined to face directly towards the nearest section of the high-risk zone and fine-tuned during optimisation. Fig. 7. Illustration of the three-point crossover process used in this paper. The process results in two offspring solutions (from two parents), and follows the standard procedure of interchanging sections along the chromosome between the crossover pointsnow also with accompanying angle attributes, where present. offspring, which is infeasible (a site can only be selected once in a solution). Such constraint violations can be addressed by penalty functions or repair functions to reflect the undesirability of an infeasible solution or to attempt modifications that result in feasibility (see Bennett, Xiao, & Armstrong, 2004;Coello, 2002;Coello & Montes, 2002;Kramer, 2010;Mezura-Montes & Coello Coello, 2011). An alternative approach has been followed here, namely the rejection method (Kramer, 2010). This method simply discards any infeasible solutions encountered during the search process. It may, however, be difficult to establish feasible offspring with this method and often results in premature convergence. To address this shortcoming, the crossover approach used herealso followed by Heyns and van Vuuren (2016) and Heyns and van Vuuren (2018) -employs multiple crossover attempts between two parents, with new crossover points being randomly generated for each attempt). The attempts are repeated until the crossover succeeds in finding two feasible offspring from the two parents. Alternatively, if a maximum number of crossover attempts have occurred, the crossover process between the two parents is abandoned and then resumed with two newly selected parents. A limit of ten attempts per parent pair were used in this paper.

Site mutation
The mutation process that was followed in this paper is inspired by a multi-objective modification to the classic Teitz-Bart algorithm (TBA) (Teitz & Bart, 1968). The modified process was first investigated for integration with the NSGA-II for geospatial facility location problems by Heyns (2016), and has most recently been implemented for the purpose of optimal rural roads construction planning in Nepal (Heyns et al., 2021b). On its own, the TBA is a single-solution, single-objective algorithm, and starts by randomly generating a single starting solution which is improved repetitively with multiple swaps. In the context of site-selection, the standard approach would be to first identify all the candidate sites that are not included in a randomly generated starting solution. One site from this set is randomly selected and consecutively swapped with each entry in the starting solution (Teitz & Bart, 1968). Therefore, if a chromosome comprises ten candidate sites, one iteration of the TBA results in ten offspring solutionseach offspring solution differing from the parent in the single swap performed at each entry. The offspring solution that results in the best improvement in the objective function value is accepted as the new current solution, and the site that was introduced into the current solution is removed from the set of Fig. 8. The mutation process followed in this paper. Each entry in the chromosome is swapped with one arbitrarily selected site that is not in the chromosome, and each swap that is performed results in a new offspring. Any offspring showing improvement in any of the objective function values proceed to the next stage of the heuristic. remaining candidate sites. This procedure is then repeated, relative to the continually updated current solution and until all remaining candidate sites have been swapped. The current solution after all candidate sites have been swapped is accepted as the final, best solution.
The TBA-inspired mutation process followed here utilises a similar swap procedure to that implemented by the TBA, illustrated in Fig. 8. For each solution that is subjected to mutation (the parent in the figure), a site and its starting angle (if the site is considered for angled cover) is arbitrarily selected from those that are not in the chromosome and is swapped consecutively with each entryeach swap resulting in a new offspring solution. In contrast to the standard TBA processin which candidate solutions are evaluated with respect to a single objectivenew chromosomes in our problem are evaluated with respect to multiple objectives. Whereas the TBA selects the single solution resulting from the swaps that result in the best improvement (if any improvement is found), the MO approach followed here is to accept all offspring strings emanating from mutation that exhibit improvements over the parent with respect to any of the objective functions. The swaps are only performed for one round, i.e. only one site that is not in the chromosome is consecutively swapped, as opposed to swapping all the remaining candidate sites. This approach returned impressive results for large geospatial optimisation problems when integrated within the NSGA-II framework and outperformed the traditional NSGA-II in the test problems of Heyns (2016) -albeit being computationally more expensive, and without the consideration of angle attributes.
Pseudocode for this site mutation process is provided in Algorithm 3.1.

Angle mutation
In order to search for optimal viewing angles for the cameras at each Fig. 9. The novel angle mutation process, illustrated for the first angled entry in an example parent chromosome. Each angled entry in the chromosome undergoes a number of rotations to either side of its current angle. Two rotations (one large and one small) to either side were performed in this paper, resulting in four offspring solutions per angled entry. Only one of each angled entry's four offspring is acceptedthe one resulting in the largest angled cover objective function value improvement, if any.
site within a solution, a similar approach to the candidate site mutation process discussed above was followed. When undergoing this novel angle mutation process, each angled entry along the chromosome is "rotated" in order to evaluate its effects on angled cover and to potentially accept the modification as an improvement to the population. The process is illustrated in more detail in Fig. 9 for the first angled entry in a parent solution, and the same mutations are repeated for each angled entry along the chromosome. As observed in Fig. 9, an angled entry is modified by performing two rotations to either direction from its current angle. These are a larger rotation to each side, and a smaller one to each sidetherefore exploring the effects of the rotations at different magnitudes. This results in a total of four offspring solutions for each angled entry, differing from the parent only in the angle associated with the site in the parent chromosome. From each site's four offspring solutions, the one that results in the largest improvement with respect to the angled covering objective (if any) is accepted and proceeds to the following stage in the heuristic. The process then proceeds to the other angled entries in the chromosomeresulting in four offspring for each and only accepting the one resulting in the largest improvement. A pseudocode description of this angled site mutation process is provided in Algorithm 3.2.

Heuristic overview
The solution modification operators introduced above are now described within the unified heuristic from start to convergence, which is illustrated in Fig. 10 and for which pseudocode is provided in Algorithm 3.3. First, a population of N feasible candidate solutions is stochastically generatedassigning candidate site numbers to the entries, and accompanied by pre-determined starting angles if applicable. These N solutions become the first "current" population. Crossovers are then performed on parents selected from the current populationparents are selected from a "mating pool" of solutions that are selected from the current population by a tournament comparison process (Deb et al., 2002). In brief, this process favours the selection of solutions which perform well with respect to the objective functions (compared to the rest of the population), resulting that the offspring solutions inherit some strong properties from their parents. The crossover process repeatedly performs crossover between two parents randomly selected from the mating pool, as depicted in Fig. 7 each crossover resulting in two offspringuntil N feasible offspring are discovered. The N offspring solutions are combined with the current population, and this combined population of size 2N is reduced back to size N through the Fast Nondominated Sorting Algorithm (FNSA) -detailed descriptions and pseudocode are available in the literature (Deb, Pratap, Agarwal, & Meyarivan, 2002;Heyns, 2016). Briefly, the FNSA compares the solutions to each other with respect to their objective function values in order to establish quality ranks. In case the FNSA is unable to suitably distinguish between solutions in terms of their perceived quality with respect to the objective function valuesin other words the solutions are tied according to the principles of non-domination and selecting solutions according to rank is not possiblea crowding distance value is employed. The crowding distance classifies solutions according to their "spread" along the Pareto front, with the aim of determining solutions that are distributed as evenly as possible along the front to filter populations down to the specified size N (Deb et al., 2002). Detailed descriptions and pseudocode for determining crowding distance are available in the literature (Deb et al., 2002;Heyns, 2016). The N best post-crossover solutions then proceed to the site mutation stage. The process that was previously described and illustrated in Fig. 8 is performed on each solution, and all new offspring that show improvements with respect to any of the objective functions are accepted and are added to the post-crossover population. The FNSA and crowding distances are then again employed to reduce the size of this combined post-site mutation population to N solutions. Angle mutations are then performed on each solution from the post-site mutation population during the final solution modification stage of the heuristic, as previously described and illustrated in Fig. 9. The resulting accepted solutions are then combined with the post-site mutation population and once more reduced to size N by the FNSA and crowding distances. The resulting N best solutions form the new current population, and the algorithm terminates if the solution quality of successive generations shows no significant improvement in solution quality, or when a Fig. 10. An overview of the custom heuristic process followed in this paper, implemented within the NSGA-II framework of Deb et al. (2002). The approach integrates solution search methodologies from Teitz and Bart (1968) and Heyns (2016). maximum number of generations have been reached. The Pareto front approximation of the final population is returned for analysis.

Optimisation setup
The optimisation setup described below was for the hypothetical study area, and is similar to the process followed for the actual RPF study area. The optimisation process was repeated for systems comprising different numbers of cameras. This was done so that RPF could consider varying total camera installation costs in addition to the cover that may be achieved (more cameras results in better coverage, but increased costs, and vice versa). Heuristic optimisation results for the problem instance presented here were first determined for systems comprising fifteen cameras (the number was arbitrarily chosen) -in order to provide an indication of suitable camera numbers to consider. Based on the results obtained for fifteen cameras, twelve to sixteen cameras were finally investigated for the problem instance considered in this paper (other numbers were considered in the actual problem faced by RPF).
Twenty runs of the GA above was performed for each instance of camera numbers to consider heretotalling one hundred approximation runs. Multiple runs are performed because of the stochastic nature of the Pareto front approximation process of the NSGA-II (and this variation), which results that the solutions returned by different optimisation runs generally vary in quality. By repeating the process multiple times and then combining all the results, a final attainment front may be identified (Knowles, Thiele, & Zitzler, 2006) (this is essentially a Pareto front of all the combined Pareto front approximations). While performing as many runs as possible in a real-world scenario is always advisable, this depends on time and resources available. Twenty runs were used per each camera number in the actual RPF problem due to time constraints, and is again used here to replicate real-world challenges. Twenty is not an unusual number of runs to use in the literature (Heyns & van Vuuren, 2016;Heyns & van Vuuren, 2018) and for similar real-world applied research in which the number of runs that could be performed were also constrained by time limitations (Heyns et al., 2021). In some instances forty runs have been used (Heyns, du Plessis, Kosch, & Hough, 2019;Heyns et al., 2021b), while in some instances a single run only is used per problem instance (Bao et al., 2015;Xiao, Bennett, & Armstrong, 2002). On average, the computation time per single approximation run for systems comprised of 12, 13, 14, 15 and 16 cameras each terminated Fig. 11. Objective function values for the global Pareto front approximations for each respective camera number instance, with respect to objectives one and two (full-perimeter CZ rotational cover, and high-risk CZ angled cover). Solutions in black are those that satisfied the minimum desired objective function values, namely 85% and 90% with respect to the perimeter and (angled) high-risk CZs, respectively. Selected solutions are pointed out for the comparison of layouts and coverage maps.  Fig. 11, now plotted with respect to objectives three and four (interior CZ rotational cover, and high-risk CZ rotational backup cover). Solutions in black are those which achieved the minimum desired objective function value of 70% with respect to both the interior and (backup, rotational) high-risk CZs. Selected solutions are pointed out for the comparison of layouts and coverage maps.
in 82, 90, 104, 110 and 115 min, respectivelythus exhibiting an increase in the computation time per run as the number of cameras to place increases. By executing all one hundred runs in parallel on the same machine (Dell 7820 Precision desktop PC, running Windows 10 Pro with an Intel Xeon Silver 4110 processor and 64 GB memory), starting at the same time, a total practical computation time of slightly under 37 h was achieved.
The author's personal optimisation code was used and executed in MATLAB. For readers familiar with GAs and interested in the specific algorithm parameters used here, the populations sizes were 900 for systems with 12 and 13 cameras, while this size was increased to 1000 for 14 to 16 cameras. The crossover probability was set to 0.9, threepoint crossover was used, and all runs were terminated after 120 generations. In terms of the magnitude of rotation for angle mutations (such as those illustrated in Fig. 9), these were performed 30 and 10 to either sidethe former to explore the effects of relatively large rotations, while the latter was used for "fine-tuning" purposes. Mutation probabilitya standard NSGA-II parameteris not used here, because of the custom site mutation process previously discussed in Section 3.4.3.

Results
The solutions obtained by the GA are presented in this section. In Fig. 11, the objective function values for the non-dominated attainment solution sets for each respective camera number instance are presented with respect to objectives one and two (which were introduced in detail in Section 3.3). The same solution sets are plotted with respect to objectives three and four in Fig. 12. It should be noted that the solutions presented for each camera number instance are the same in both figures although all solutions were determined with consideration given to the four objectives, they are plotted against separate axes because plotting them in this manner is easier to visualise. In fact, during the actual decision-making process objectives one and two were considered to be slightly more important than objectives three and four, and plotting them in this manner also helped to visualise and investigate the solutions according to priority.
In each if the plots in Figs. 11 and 12, a number of solutions in black are observed. These solutions are those which satisfied the minimum objective function values desired, viz. 85%, 90%, 70% and 70% for objectives one to four. It is clear how an increase in the number of cameras improve the objective function values obtained by the attainment solution sets, while also increasing the number and quality of the solutions that achieve minimum objective function requirements. The total number of solutions in the attainment fronts equal 1813, 1639, 1589, 1724, and 1537 for camera numbers 12 to 16. The number of acceptable solutions (in black in Figs. 11 and 12) for each cameranumber instance equals 6, 45, 122, 267 and 421 for camera numbers 12 to 16. This introduced the possibility of increasing the minimum acceptable objective function values as the camera numbers increase (as performed in the actual process), simultaneously improving overall solution quality and reducing the number of acceptable solutions to consider to a more manageable numbertoo many acceptable solutions (such as the large number obtained for 16 cameras in Figs. 11(e) and 12 (e)) creates a daunting and laborious task for comparison and selection

procedures.
Three individual solutions from systems with 12, 14, and 16 cameras were selected for further visualisation purposes here, to illustrate the nature of the information and visualisations that were presented to and analysed by decision-makers during the actual solution selection and comparison process. The three solutions are pointed out in the objective function value plots in (a), (c) and (e) in each of Figs. 11 and 12. The corresponding viewsheds achieved with respect to the four CZs are presented in Figs. 13-15 for each respective solution.

Heuristic evaluation
The GA presented here is a new approach to surveillance monitoring and its effectiveness requires further analysis to gauge its performance. An ILP formulation of the mathematical model is presented in the Appendix but remains to be implemented. Investigating the solutions that may be obtained using this formulation with ILP software (if possible) will provide solutions with respect to which the quality of the heuristicdetermined solutions may be compared. Such an analysis may be performed in future work with RPFand has been similarly performed by (Heyns et al., 2021) to gauge the quality of heuristic-determined solutions that were determined for a real-world wildfire detection site location problem.
To evaluate the improvement in solution quality achieved over the algorithm's multiple generations, a new run was performed for the 12-camera problem instance and the population at each generation saved. After this, the Pareto front at specific generations could be determined, and is displayed in Fig. 16 with respect to objectives one and two, and in Figs. 17 with respect to objectives three and four. In both of Figs. 16 and 17, drastic improvement in the Pareto front is observed between generations 1 and 5, followed by a steady improvement between generations 5 and 10. The rate of improvement slows significantly between generations 10 to 20 and even more so from 20 to 30. Within the larger generation gap observed between generations 30 and 110 there is still a marked improvement, while the Pareto front clearly exhibits minimal improvement in solution quality during the final ten generationsindicating convergence.
The simultaneous optimisation of angled camera cover as an added modality to the more standard rotational cover is one of the main outcomes of the work presented here. However, the effectiveness of the heuristic's angle mutation process requires more in-depth analysis. An example analysis to provide an indication that the process is indeed successful, is to compare the angled cover of the heuristic-determined solutions to the angled cover of the same solutions evaluated with their original starting angles (i.e. without angle mutations performed), which were introduced in Section 3.4.1 and Fig. 6. Take Fig. 18 for example, in which the angled cover from the 12-camera solution from Fig. 13 is again displayed on the left, compared to the cover achieved with the same cameras rotated to the initial starting angles, displayed on the right. As observed in the figure, it is clear that the heuristic angle modification processes followed during the optimisation runs are indeed effectivethe final result returns heuristic-angled cover of 91.2%, an increase of 29.1% from the 62.0% achieved with starting angles. When the same comparison process was followed for all the individual solutions in the attainment fronts presented in Figs. 11 and 12, the increases averaged 31.6%, 32.7%, 34.5%, 34.3%, and 34.7%, for the systems comprising 12 to 16 cameras, respectively.

Practical outcomes
The practicality of the results was evident during the solution analysis and selection process with RPF. Selecting solutions from the attainment sets were eased by increasing the minimum coverage requirements of the objectives as the number of cameras and resulting acceptable solutions increased. The author then carefully compared and evaluated solutions with respect to their coverage maps, site locations, and objective function values, in order to select between five and ten solutions per camera number instance, which were then provided to RPF these were selected to provide diversity in site locations and coverage so that no two solutions were too similar (redundant). 2 Small modifications to camera angles in some of these layouts were made to result in slight coverage improvements, by manual angle modification and visual inspection and evaluation. The automation of such angle "tweaking" is discussed in the next section.
Final solutions were presented to RPF in a similar manner to those in the coverage maps in Figs. 13-15, along with objective function values in tabular form. The coverage maps and site locations were also exported to be viewed in Google Earth, which helped to provide a real-world evaluation of site locations and coverage when superimposed on a satellite image of the terrain. The final outcome was that RPF could select a system that provides high-quality cover with fewer cameras than had been initially planned, reducing equipment purchase and installation costs while also reducing future maintenance and upgrade costs (fewer cameras results in fewer repairs and upgrades).

Optimisation opportunities
The results presented here and in the actual problem instance did not undergo any additional optimisation to "fine-tune" and improve the solutions from the Pareto front approximations. In a recent wildfire detection tower site placement problem, Heyns, du Plessis, Kosch, and Hough (2019) followed a two-stage optimisation approach in the pursuit of high-quality Pareto front approximations. First, a heuristic approach was followed to determine numerous camera layouts (considering rotational cover only) -in many ways similar to the work presented here. The sites that were included in the layouts were then pooled together to form a new PZ; a smaller sub-set of candidate sites from the original placement zone (PZ). Using this new PZ, the optimisation process was repeated in a second stage and resulted in improved solution quality. A similar approach may be followed here, using the sites contained in the attainment set solutions in a new PZ, while the angles that 2 The author is certified in anti-poaching response (Saffer, 2016), has visited and collaborated with RPF over recent years, has an MSc in military threat evaluation (Heyns, 2008), and along with a PhD in multi-objective site location optimisation (Heyns, 2016) could be entrusted to filter solutions to those which would suit RPF's requirements and preferences.
are associated with these sites in the heuristic-determined solutions (i.e. after heuristic rotations) may then accompany these sites instead of the original starting angles used during the first optimisation stage. Alternatively, it may be possible to perform additional optimisation with respect to the angles only, repeating the heuristic in Fig. 10 without crossovers and site mutations, and using smaller angles of rotation than those used here. This could be performed as a final step directly after the first optimisation stage, or additionally after a second optimisation stage as described above.
In the approach followed here, systems comprising fixed numbers of cameras were investigated. However, solution approaches which employ variable-length chromosomes exist (Jia, Ordóñez, & Dessouky, 2007;Ripon, Tsang, Kwong, & Ip, 2006;Srikanth et al., 1995;Ting et al., 2009), which allow for the specification of a minimum and maximum number of facilities to place, and return solutions ranging in length (the number of cameras) within a single optimisation run. Using such an approach would avoid the process of repeating optimisation for different camera number instances and, instead, would provide alternatives that offer optimality not only with respect to the covering objective functions, but cost-efficiency as well. Such an approach has already been implemented by the author in roads construction optimisation research in rural Nepal (Heyns et al., 2021b) but due to time limits this was not adapted for the project presented here. Implementation in future projects with RPF would see the integration of this solution methodology.

Opportunities for similar applications
The work presented here offers numerous opportunities for application in related research. Take a military defence environment as an example, in which radars and weapon systems are deployed with the aim of providing cover with respect to areas of interest such as expected enemy aircraft flight routes or avenues of approach along the terrain (Department of the Army, 1994; Ghose, Prasad, & Guruprasad, 1993;Heyns, 2008;Tanergüclü, Maraş, Gencer, & Aygüneş, 2010). In the context of aerial defence, discretely sampled points around on and around expected enemy flight routes could provide the points demanding cover from radar and weapon systems in an integrated facility network (Ghose, Prasad, & Guruprasad, 1993;Tanergüclü, Maraş, Gencer, & Aygüneş, 2010) -the collection of demand points along each expected flight route forms a CZ. In a dynamic military environment it is beneficial to obtain integrated radar and weapon system deployment strategies that provide trade-off alternatives with respect to multiple possible flight routes or avenues of approach on the terrain and, as strategic intelligence becomes available, the systems may be required to change orientation and focus towards the most likely enemy approach route. The GA and solution methodology in this paper would provide such capabilities, especially if integrated together with the multi-type, multi-zone solution methodology of Heyns and van Vuuren (2018), which enables the consideration of multiple types of facilities (with Fig. 16. Progression of the Pareto front at various stages of a single run of the novel algorithm for the 12-camera problem instance, displaying the objective function values with respect to the first two objectives pursued in this paper. Each plot displays the Pareto front at a specific generation compared to the front from an earlier generation, to show the progression at various stages of the algorithm. separate placement objectives, capabilities, and requirements) in the optimisation and solution search process.
Covering with respect to multiple CZs and multi-modal cameras may also provide novel management strategies in areas that experience frequent fire activity. An example in this context would be the deployment of cameras in a national park for the purpose of general park activity, while also serving the important purpose of detecting wildfires (Bao et al., 2015;Eugenio et al., 2016;Heyns, du Plessis, Kosch, & Hough, 2019). For example, one CZ may encompass the entire park surface for general park surveillance (activity with respect to tourists, Fig. 17. Progression of the Pareto front of the same run presented in Fig. 17, here displaying the objective function values with respect to the third and fourth objectives pursued in this paper. Fig. 18. The effectiveness of the angle mutation process can be demonstrated by comparing the final, heuristic-determined angled cover, on the left in the figure, to the same layout with initial starting angles (from Fig. 6), on the right. The angled cover for the 12-camera solution from Fig. 13 is compared here. hiking paths, vehicle routes, wildlife, etc.), while a second CZ may envelop areas that are known to be clusters of frequent fire activity (Vega Orozco, Tonini, Conedera, & Kanveski, 2012). Since fire activity generally varies between seasons or prevailing weather conditions, facility locations that provide good overall park coverage ensures that the utilisation of the cameras is maximised year-round and not only during fire seasons. At the same time, when prevailing weather conditions indicate a high risk of fires (i.e. a high fire danger index (Sharples, McRae, Weber, & Gill, 2009)), the cameras may be rotated towards such high fire-risk CZs and change modes from full rotational to fixed angle coverusing the approach followed here to ensure high-quality angled cover.

Additional considerations
The novel GA employed here requires thorough testing to determine optimal parameter sets and solution modification approaches. Threepoint crossover was employed in this paper, and it would be interesting to see how uniform crossover (Syswerda, 1989) would affect the resultsboth in terms of solution quality and generation convergence rate. The effects of employing different population sizes and crossover rates will be similarly intriguing.
Binary visibility coverage was employed in this paper because a short camera range capability was employed instead of the cameras' actual, longer detection range (for worst-case scenario consideration), and because the range is short compared to other applications in which a binary approach is used with significantly larger ranges. Furthermore, the camera system is not the only anti-poaching solution in the actual RPF area, as foot patrols also cover the perimeter of the fence and patrols can be focussed in high-risk areas where visibility is temporarily low. This does not change the reality that objects detected at further distances are less detailed and more difficult to inspect visually, even in perfect weather conditions. When the cameras operate as stand-alone systemswithout the complementary cover provided by foot patrolsa more realistic approach should be followed. Employing a distance-decay model to reduce the coverage value of an object as its distance from the camera increases (therefore decreasing in value from 1 at or near the observer) would provide a more accurate reflection of the quality of cover that can be achieved. Such distance decay models are available in the literature (Chen, Xu, & Gao, 2015;Kaplan, 1995;Kumsap, Borne, & Moss, 2005;Labib, Huck, & Lindley, 2021) and should be employed in future work.

Conclusion
A novel multi-attribute, multi-objective GA was presented, which was developed to provide surveillance solutions to an area protected by the Rhino Pride Foundation in South Africa. The algorithm returned high-quality solutions which maximised visibility detection over three separate cover zones, considering four covering objectives. The system was simultaneously optimised for rotational cover during the day, and for fixed cover towards a high-risk zone at nightlimited to the FOV of cameras within the detectable range of this zone.
The algorithm is based on the NSGA-II, employed a novel multiattribute chromosome solution representation scheme, and borrowed methodologies from Teitz and Bart (1968) and Heyns (2016) in order to adequately explore suitable candidate solutions. Example solutions were presented in this paper, for a study area other than the actual protected area because of confidentiality and security concerns.
The final solution selected by the Rhino Pride Foundation offered high-quality cover with respect to all the covering objectives. Significant, however, is that the solution required fewer cameras than initially planned, which resulted in reduced purchase costs and future maintenance and upgrade demands. A number of future opportunities for improvement were discussed, in addition to other site-selection problems which may benefit from the solution methodology presented heree.g. military radar and weapon systems, and systems destined for wildfire detection.

Funding
This research did not receive any specific grant from funding agencies in the public, commercial, or not-for-profit sectors.

Declaration of Competing Interest
The author declares no conflicts of interest. The formulation of the AMCLP is now presentedan extension to the MCLP. That is, angled cover is determined as an added covering function to maximal cover and is an extension to the objectives and constraints in (A.1), (A.3), (A.6), (A.7) and (A.8). Let O denote the set of camera orientation angles that are considered for angled covere.g. O = {10, 20, …, 360} would consider fixed camera angles at ten degree intervals in a full rotationand let o denote the index of camera angles in O.
The remainder of the AMCLP formulation is presented below. d a denotes the index of demand points in CZ a ∈ A. Sa denotes the subset of sites in S from which angled cover can be achieved with respect to any demand point in CZ a ∈ A, from at least one angle in O. A da denotes the subset of sites in Sa from which angled cover can be achieved with respect to demand point d a in CZ a ∈ A, from at least one angle in O.
A * da (s) denotes the subset of angles in O from which site s ∈ A da can achieve cover with respect to demand point d a in CZ a ∈ A.
y d a is 1 if demand point d a in CZ a ∈ A is visible from an angled camera, and 0 otherwise. The objective in (A.9) is to maximise angled cover with respect to each CZ a ∈ A. Constraint (A.10) allows a demand point d a to receive angled cover (y da = 1) only if one or more cameras are placed at sites in the set A da and rotated to one of the corresponding angles in A * da (s). Constraint (A.11) allows angled cover to be considered at a site in S a only if a camera is already placed at the site, and also allows for a camera to be assigned a maximum of one night-time angle. Constraints (A.12) to (A.13) specify binary requirements on the auxiliary variables.
In order to approximate solutions on the Pareto front, the weighted-sum approach may be followed (previously introduced in Section 2.4). To arrive at the weighted objective function, the objectives in (A.1), (A.2),and (A.9) are reduced to a single function using a weight for each CZ-objective pair's perceived importance. By varying these objective weights in multiple runs, a Pareto front approximation may be traced out (the weight assignment effectively indicates a desired search direction in objective function space). For example, if the CZs in the problem presented in this paper were numbered {1 [full -perimeter], 2 [high -risk], 3 [interior]}, then the objectives that were considered could be summarised as: CZ1-MCLP, CZ2-AMCLP, CZ3-MCLP, and CZ2-BCLP. Now suppose that the relative importance of the objectives with respect to each other, in the order listed above, are weighted as 0.20, 0.50, 0.20, and 0.10, respectively (thus angled cover with respect to the high-risk CZ has highest relative importance). For this specific weight assignment the weighted objective function is then to  N d2 and N d3 denote the total number of demand points in each of the respective CZs. When using weights to represent the objectives' relative importance, it is required to transform the objective function values so that their magnitudes are similarotherwise some will naturally dominate the aggregate objective function (Marler & Arora, 2010). The fractions are therefore included in the objective function to reflect the maximisation of the percentage of cover achieved with respect to each CZ, so that the objective function is not biased towards larger CZ with more demand points.