The Aeronautical JournalOctober 2015 Volume 119 No 1220 1271 3D UAV trajectory planning using evolutionary algorithms: A comparison study M. Bagherian [email protected] Applied Math Department Faculty of Mathematical Science University of Guilan Rasht Iran A. Alos [email protected] ABSTRACT This paper focuses on the three dimensional flight path planning for an unmanned aerial vehicle (UAV) on a low altitude terrain following\terrain avoidance mission. The UAV trajectory planning problem is to compute an optimal or near-optimal trajectory for a UAV to do its mission objectives in a surviving penetration through the hostile enemy environment, considering the shape of the earth and the kinematics constraints of the UAV. Using the three dimensional terrain information, three dimensional flight path from a starting point to an end point, minimising a cost function and regarding the kinematics constraints of the UAV is calculated. The geographic information of the earth shape and enemy locations is generated using digital terrain model (DTM) and geographic information system (GIS), and is displayed in a 3D environment. Using 3D-maps containing the geographic data accompanied by DTM, and GIS, the problem is modelled by deriving the motion equations of the UAV. Two heuristic algorithms are proposed for this problem: genetic and particle swarm algorithms. Genetic and particle swarm algorithms are general purposes Paper No. 4356. Manuscript received 8 February 2015, accepted 7 May 2015. 1272 The Aeronautical JournalOctober 2015 algorithms, because they can solve a wide range of problems, so they have to be adjusted to solve the trajectory planning problem. To test and compare the paths obtained from these algorithms, a software program is built using GIS tools and the programming languages C# and MATLAB. NOMENCLATURE DTM DEM Height(x,y) γ ψ Jdistance Jlength Jheight Jobstacle DTED ∆v ∆γ ∆ψ f j (x j, y j, z j) digital terrain model data elevation model the value of any earth point elevation climb angle turn rate distance cost path length cost height cost obstacle cost digital terrain elevation data speed rate climb angle rate heading angle rate fitness function 1.0 INTRODUCTION It is very important to plan a trajectory for a UAV before sending it to do its mission; this process has received considerable research attention, because following the planned trajectory maximises the likelihood of mission succession of a flying vehicle, Chen(1). The objective of the UAV trajectory planning is to find the optimum flight path that maximises survivability while satisfying appropriate flight path constraints. Past approaches to this problem have usually formulated the problem as a matter of numeric cost minimisation to be solved by methods like dynamic programming, (Belman(2)), numerical procedures, (Betts and Huffman(3)) or geometric algorithms like A* search (Rippel et al(4)). A*-based algorithms which are variants of the shortest path algorithm, have difficulties with route constraints. Moreover these algorithms are strongly based on the cost map which should be produced and stored; and the cost map production is a very time consuming task. In dynamic programming a local cost is assigned to each link of the grid which spans the area of operation. This assumes that the cost of flying over an area is independent of the path by which the UAV reached the area, which is not always true. Both dynamic programming and A* search techniques suffer from their relatively slow execution. Some researchers have formulated the optimal path planning problem as an optimal control problem which is equivalent to a two-point boundary value problem, (Betts and Huffman(3)). As discussed in Betts and Huffman(5) this approach is problematic, since the adjoin equations are nonlinear and obtaining them is difficult for complex dynamics. Moreover, convergence of the corresponding iterative solution procedure is often very sensitive to the accuracy of the initial guess of the adjoin variables; and there is no physical interpretation of the adjoin variables to provide an intuition into what constitutes a good initial guess. Many authors have investigated alternative approaches to the solution of the optimal control problem: Enright and Conway(6), Hall(7) and Lu(8). However their approaches suffer from long convergence time. The interested reader is refereed to Hwang and Ahuja(9) and Latombe(10) Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1273 for more discussion about different route planning approaches. Chen et al (1) presented a good approach of the GA algorithm for two dimensional trajectory planning with a variable-length chromosome; however it was only suitable for 2D areas, and did not handle terrain following (TF)/ threat avoidance (TA) missions. So, in this paper, this algorithm is extended to be applicable for three dimensional trajectories and accept more different changes in genes parameters values like (speed rate, climbing angle rate, and heading angle rate). In addition by collecting the information about some important DTM concepts and motion equations a model is constructed for the problem. Then two evolutionary algorithms are proposed to solve the problem: genetic algorithm (GA), and particle swarm optimisation (PSO) algorithm which are general purpose algorithms. Since they can be used to solve a large domain of problems, they have to be adjusted to be applicable to trajectory planning problem. Without loss of generality, the path planning problem considered in this paper can be described as follows. Given a start point at (x0, y0, z0); a target point at (xT, yT, zT); and a set of obstacles located at (x i0, i y 0, z i0 ), where i = {1, 2, ….N}, respectively, find a near-optimal UAV trajectory (x j, y j, z j) = {(xk, yk, zk)} defined at times {tk, k = 0, 1 … N}, which advances toward the target point, considering the UAV dynamics. So the path should be generated as a sequence of speed rate, climb angle rate, and heading angle rate at discrete times {tk, k = 0, 1 … N}, respectively, while taking into account the physical constraints of the climb angle, γ and turn rate, ψ. The rest of the paper is organised as follows. Section 2 describes the terrain representation. Section 3 models the UAV. Section 4 describes the UAV path planning. Section 5 and 6 dedicates to GA and PSO algorithms respectively. Computational results are presented in Section 7 and Section 8 ends the paper with conclusion. 2.0 TERRAIN REPRESENTATION A topographic† 3D-map can be defined as a cartographic‡ representation of a landscape section in a perspective view, combined with topographic information that is defined in a legend. The topographic information of a topographical 3D-map includes all terrain characteristics (height, exposition, slope) and other topographic elements such as lakes, rivers, settlement areas as well as other infrastructures, road and railway networks, land use and vegetation patterns, (Haeberling(11)). Basically 3D-maps are topographic information plus DTM. The digital terrain model (DTM) is simply a statistical representation of the continuous surface of the ground by a large number of selected points with known x, y, z co-ordinates in an arbitrary co-ordinate system. In computer language the earth surface or earth shape will be digital terrain model (DTM), or data elevation model (DEM). This DEM or DTM should be accurate and real, and geo-referenced. In this paper, WGS84 is used for the geographical co-ordinate system (longitude, latitude), and UTM for the projected co-ordinate system. The DEM will be a geographic TIFF raster image file representing the area as a rectangular grid of cells according to a suitable resolution, each cell will have a height value and its location is defined by two values (x, y), the resolution of the DEM is defined by the cell size. In this paper the resolution of some TIFF images is represented by: † ‡ cellsize = 85.9890611, 85.9890611 metres. Topographic: is the description of earth’s surface shape and features, especially their depiction on the map Cartographic: is the study and practice of making maps �������� � 8 85.9890611, 85.9890611Meters. 1274 2-1 sshows a graphhical representtation TheofAthe eronautical JournalOctober 2015 Figure D DEM. Figure 1. Terrain representation. Figure 2-11- Terrain reprresentation The DEM iis a grey scalee raster, the vaalue of each ppixel is an integer bounded d from 0 to 2555. The value of any earth point elevaation is calculated using minimum m heigght value and d maximum height h value by the follow wing simple Figure 1 shows a graphical representation of the DEM. The DEM is a grey scale raster, the value of each pixel is an integer bounded from 0 to 255. The value of any earth point elevation is calculated using minimum height value and maximum height value by the following simple equation: equation: 1 2 Topographicc: is the descriptioon of earth’s surfaace shape and feaatures, especially their depiction on n the map Cartographicc: is the study andd practice of makiing maps. Height(x,y) = (cellvalue(x,y)*(h 3 max – hmin))/255 + hmin . . . (1) Here x, y are the cell column order, and row order in the raster grid respectively. 3.0 UAV MODEL In this paper the flight model equations and UAV physical constraints are similar to Zardashti and Bagherian (12). Cost function components are like Chen(1), Anargyros(13) and Ioannis and Kimon(14). Based on Call(15) an algorithm is proposed to avoid obstacles and threats. A simplified kinematics model of a UAV flying in a three-dimensional airspace is of interest. So the UAV is considered as a point in a 3D space, and its translational and angular states at time t are defined as: X(t) = (x(t), y(t), z(t), γ(t), ψ(t))T G G = R3 × (γmin, γmax) × (–π, +π) The co-ordinates x, y and z are taken with respect to an inertial reference frame. The flight speed is V(t). The state equations could be written as: . X (t) = V(t)Cos γ(t)Cos ψ(t) . . . (2) . Y (t) = V(t)Cos γ(t)Sin ψ(t) . . . (3) . Z (t) = V(t)Sin γ(t) . . . (4) Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1275 Also it will be useful to add some physical constraints on the climb angle and turn rate γ, ψ, respectively; for example: γmin ≤ γ ≤ γmax . . ψ ≤ ψ max . . . (5) . . . (6) 4.0 UAV PATH PLANNING The low altitude flight and penetration mission can be divided into two main steps in mission execution. The first step is the mission preparation, in which the task is to collect information about the mission area, prepare the airborne electronic terrain map, and plan an optimal reference flight route so as to improve the mission survivability of the UAV. The second step is the mission execution, where the airborne computer calculates the optimal flight trajectory based on the planned flight route and local information of the terrain and threats, then follows the trajectory to finish the flight mission. In this step, because the information detected and processed by the airborne equipment is limited, a planned flight route obtained before the mission is necessary for the trajectory optimisation so as to ensure the optimality of the mission. Therefore the flight route planning is very important for improvement of mission survivability and successability of the UAV Li Qing et al(16). As mentioned, the path planning problem considered in this paper can be described as follows. Suppose we have a start point at (x0, y0, z0); a target point at (xT, yT, zT); a set of obstacles located at (x i0, y i0, z i0), where i = {1, 2, … N} respectively, and we have to find a near-optimal UAV trajectory (x j, y j, z j) = {(xk, yk, zk)} defined at times k = {1, 2, …, N}, which advances toward the target point. However, the previous model cannot be used directly while considering the UAV dynamics, and the path should be generated from a sequence of speed rate, climb angle rate, and heading angle rate at discrete times {tk, k = 0, 1 … N} respectively, taking into account the physical constraints . of the climb angle and turn rate (γ, (ψ)), as mentioned above. The path changes should be decoded to generate a corresponding UAV trajectory (x j, y j, z j) for the flight. Using Equations (2), (3), and (4), and considering discrete times, the motion of the UAV is described by the following equations: v(k + 1) = v(k) + ∆v . . . (7) γ(k + 1) = γ(k) + ∆γ . . . (8) ψ(k + 1) = ψ(k) + ∆ψ . . . (9) x(k + 1) = x(k) + v(k +1)Cos γ(k+ 1)Cos ψ(k + 1) . . . (10) y(k + 1) = y(k)+v(k +1)Cos γ(k + 1)Sin ψ(k + 1) . . . (11) z(k + 1) = z(k) + v(k + 1)Sin γ(k + 1) . . . (12) Where v is the UAV speed, γ is the climb angle, ψ is the heading angle, and x, y, z are the inertial co-ordinates of the UAV position. 1276 The Aeronautical JournalOctober 2015 Table 1 Path changes Row Angle rates v 0 2 10 6 ∆γ 0 –2 0 2 ∆ψ –2 0 4 0 3 0 2 5 1 1 3 0 0 1 –1 3 0 0 –1 where v, ∆γ, ∆ψ are the speed, climb and heading angle rates, respectively This discrete UAV model is based on the assumption that there exist inner and outer loop navigation control laws, which enable the UAV to track an acceptable and safe trajectory as long as speed, climb angle and heading angle rates satisfy the physical constraints. The process of finding the desired path must minimise a cost function J(x j, y j, z j), Chen(1). 5.0 GA APPROACH Briefly, the GA algorithm is initiated with an initial set of randomly generated chromosomes called the initial population. The genes of each chromosome are a sequence of numerical values. In this paper each chromosome or individual represents a UAV trajectory constrained by UAV dynamics. The population will be changed repeatedly in each generation by genetic operations (crossover, mutation, selection, insertion, deletion); the changed elements (chromosomes) of the population will be selected according to some fitness function. The target of this process is minimising the fitness function as far as required, or finding the chromosome which has the near-minimal fitness value finally. This chromosome is called the near-optimal solution. A detailed explanation of GA algorithm could be found in references Back(17), Goldberg(18) and Melanie(19). As mentioned reference Chen(1) presented a good approach of the GA algorithm for two dimensional problems with a variable-length chromosome; however it was only suitable for 2D areas, and did not handle TF/TA problems. So in this paper this algorithm is extended to be applicable for three dimensional trajectories, and accept more different changes in genes parameters values like (speed rate, climbing angle rate, and heading angle rate). Finally a cost function component is used to handle the TF/TA problem, considering the UAV physical constraints like maximum speed, maximum climbing angle … etc. Table 1 shows an example of the speed, climb angle and turn angle rates sequenced in a random length chromosome. 5.1 Cost function Usually, the cost function J(x j, y j, z j) is a weighted positive scalar function, which must reflect all the forces that conspire to derail the intensions of the UAV, and consists of several components including distance cost, path length cost, obstacle and the height costs. 5.1.1 Distance cost Jdistance The distance cost is the distance between the terminal point on a trajectory, and the target point. Suppose the termination time of the flight is tN, which is a free parameter, because in this paper a variable-length sequence is used to present a flight path. So Jdistance can be computed as: Obstacle coost��������� Whereand �, ��, �� are the climb and heading respectively. Bagherian Alos 3D speed, UAV trajectory planningangle usingrates evolutionary algorithms... 1277 The UAV is consideredd as a moving g ball of radiius,���� mov ving along a particular patth segment frrom time �� Where �, ��, �� are the speed, climb and heading angle rates respectively. to���� , as sshown in figurre 5-1. 5-1. Cost Function 5-1. Cost Function Usually, the cost function ��� � , � � , � � � is a weighted positive scalar function, which must reflect all the forc � � Usually,tothe costthe function ��� �of , � the , � UAV, � is a weighted positive scalarcomponents function, which mustdistance reflect all thepath forc conspire derail intensions and consists of several including cost, conspire to derail theheight intensions cost, obstacle and the costs.of the UAV, and consists of several components including distance cost, path cost, obstacle and the height costs. Distance cost ��������� Distance cost ��������� The distance cost is the distance between the terminal point on a trajectory, and the target point. Suppo The distance is the distance terminal point because on a trajectory, and the target point. Suppo termination timecost of the flight is� , between which is the a free parameter, in this paper a variable-length seque � termination of the flight which acomputed free parameter, because in this paper a variable-length sequ �2., Obstacle used to presenttime a flight path. So is� ��������� can isbecost as: Figure calculating. Figure 5-1 obstacle calculating cost used to present a flight path. So ��������� can be computed as: � ��� �, ������� This compoonent ������������������ is calculate using the foollowing expreessions: �d���������� (5-1) ��������� � �������������� �, ������� (5-1) . . . (13) ∑���� ���� ������ � ∑��� (5-3) ����value �� ��� Minimizing this cost insures nearing the target point. Minimizing this cost value insures nearing the target point. Minimising this cost value insures the����� target point. �:����nearing ���������� �� �� (5-4) �������� Path Length ���� cost�� 0:��� ������� Path Length cost � 5.1.2 Path length cost������ J length Where c is the obstacles count, N is Trrajectory poinnts count, D iss a suitable constant value, � ������ is the ��� obstacle is used to find shorter paths. It can expressedasas This This cost cost is used to find shorter paths. It can bebe expressed area.This cost is used to find shorter paths. It can be expressed as � � ������� � ∑��� ��� ���������� ����� � , � ��� �� In this papeer the obstaclee areas con nsidered as a rrandomly � �� shapped ∑��� ���������� �� �� orr concave polyygon. � , ��convex � are � ������ ��� ��� � . . . (5-2) (14) (5-2) Where N isthhe thepolygon of the sample intervals. Where N isnumber the number of the sample Consider reppresented in fi igure 5-2intervals. Minimising cost valueofinsures to near to the shortest flying path. Where Nthis is the number the sample intervals. Minimizing this cost value insures to near to the shortest flying path. 5.1.3 Height cost Minimizing thisJcost heightvalue insures to near to the shortest flying path. This Height cost is used avoid hitting the ground, and assures that the UAV flies in low altitudes. To cost �to ������ Height cost ������� f3, we need the vertical distance hi between any point in the trajectory and calculate this component the surface of the x, y, zthe areground, the co-ordinates of the iththe point pi offlies the trajectory then: To calcula This cost is Earth. used toAssuming avoid hitting and assures that UAV in low altitudes. This cost is used to avoid hitting the ground, and assures that the UAV flies in low altitudes. To calcula componentf� , we need the vertical=distance h� between any point in the trajectory and the surface of the h pdistance (z) - terrain(x,y) i i componentf , we need the vertical h7between any point in the trajectory and the surface of the � � Assuming x, y, z must are thereeach coordinates of ith point the trajectory then: Every poinnt in the trajectory a vertica al the distance, whose w p� ofvalue iss bounded beetween the miinimum and Assuming x, y, z are the must coordinates of the ith point p� of whose the trajectory then: Every point in the trajectory reach a vertical distance, value is bounded between the maximum ssafe height. Thhus the cost ff� is calculatedd using the folllowing equations: minimum and maximum safe height. Thus thehcost f is calculated using the following equations: �z� � p � t����i��x, y� � 3� �z� � t����i��x, y� � h� � p� J������� � � cost� ��� cost � � � 6 6 C:if��h� � �i�imu umheight�or �h� � ���im mumheight� 0: otherwisee Here C isHere a suitable tant value. C is aconst suitable constant value. 5.1.4 Obstacle cost Jobstacle The UAV is considered as a moving ball of radius, R_UAV moving along a particular path segment , as shown in Fig. 2. k (k+1) Obstaclefrom coost� �������� time t to t The UAV is consideredd as a moving g ball of radiius,���� mov ving along a particular patth segment frrom time �� to���� , as sshown in figurre 5-1. Obstacle coost� 1278 Obstacle coost�����������������The Aeronautical JournalOctober 2015 The UAV is consideredd as a moving g ball of radiius,���� mov ving along a particular patth segment frro The UAV is consideredd as a moving g ball of radiius,���� mov ving along a particular patth segment frrom time to���� , as sshown in figurre 5-1. to���� , as sshown in figurre 5-1. Figure 3. Calculating if the point is inside the polygon Figure 5-2 calculatinng if the point is inside the polygon p Figure 5-1 obstacle cost calculating Figure 5-1 obstacle cost calculating Let point A be a pointt included in the trajectorry, and the obstacle o polyg gon is constrructed in a way w that the This compo onentis� calculate using the foollowing expreessions: �������� is using ThisThis component Jobstacle calculated thedthe following expressions: compo onent � is calculate d using fo ollowing expre essions: �� its vertices. points� � � � � � … � are ������ It I is needed too know wheth her the point A is inside thee obstacle areea or not. To � � � � ��� � ������ � ∑���� ∑fr ts�� � �� ���� : �: ��� � ������� solve this pproblem; the sum s of the ang gles from the��point ������� c (5-3) if ���� . . . (15)is calculated, ��� ���� ��� formed ���������� � ∑��� ∑��� ������ the sum equuals 360° then the point A iss inside the obbstacle area, otherwise o not. �:���� ���������� ������ � �����:��� � � � � ���������� �� ������������ �� 0:° ��� ������ � �� ⟺∑ � � � �� ������������ � 360 � �� ��� 0: ������� (5-3) ... (5-5) (5-4) (16) (5-4) N is points Trrajectory Where c is the obstacles poinnts D iss aconstant suitable co nstantEspot value, � ������ is the �� Where the obstacles N is count, trajectory count, D iscount, ������ ��c�is� ������� � � �� � ��� � count, i � is the ��� obst count, N is Trrajectory Where c is the obstacles poin nts count, Daisssuitable a suitable constantvalue, value, � ����� area. area. is the ith obstacle Figure 5-2 calculatin ng if the inside the polygon p the polygon Figure 5-2 calculatin ngpoint if theispoint is inside p area. In this paper the obstacle considered 5-2. Proposed GA A forareas UAVare pa ath planningas a randomly shaped convex or concave polygon. Consider the polygon in Fig. In this papeer represented the obstaclee areas are3.con nsidered as a rrandomly shap ped convex orr concave polyygon. Let next point A point be the a point inconthe trajector ry, andtrrajectory the obstacle o the gon is constr ructed in a inway wa w Let Ade bet aincluded t the included the and obstacle ois polyg polyg gon constr ructed In this obstacle e point areas are nsidered as atrajector rrandomly shap ped convex orrincludin concave poly ygon. The suub-sections escribe theinpro oposed GAinallgorithm for ry, plan nning; ng rep presentation, Let point Apape be er a point included trajectory, and the obstacle polygon constructed ingenetic ais way its vertices. points� �points� ��Consider � �p�1,� … It I isGA needed to o know theher point A is inside thee obstacle areea ar o that the points p�2� ,� p(i�functio are ItIigure is to know whether the point A its vertices. �pth �are are its is needed needed too wheth knowher wheth point A is is inside inside thee obstacle polygon presented in op fi 5-2 �me �he chromosom decoding, f,�… n,vertices. and perators. � �� … 3fitness )� rep Consider thheorpolygon rep presented in fiigure 5-2 the obstacle area not. To solve this problem; the sum of the angles formed from the pointsp , i ���:��������� solve thissolve pproblem; the sum s of the fr from the point ts� ���� : ��: ��� ������� is calc c is this pproblem; the s ang sum ofgles theformed ang gles formed fr from the point ts� : ��� � ������� ������� � � �� � � �� A, p(i + 1):i:(1..polygon order) is calculated, if the sum equals 360° then the point A is inside the 5-2-1. Geneti ic representa tion °uals 360° then the point A is the sum equ inside the obbstacle o not. not. the sumarea, equ uals 360 then the point A iss inside sthe obbstacle area, otherwise oarea, otherwise obstacle otherwise not. mosome consiists of three rows r of differrent integers, representing the speed raate, climb ang gle rate, and Each chrom ∑� �°�� � 360° � � �� ������������ ⟺360 � � �� ������������ ⟺ ∑� ��� � . . . (17) (5-5) (5-5) heading anggle rate, at diiscrete times �� � � � � � 0� � … �� respectiv vely, taking in nto account thhe physical co onstraints of �the � ������� � � �� �� � � �� ���� � maximum sspeed, mentioned prev viously. Tablee 5-2 shows ann example of the changes �������� ������� � ������� �mb where � clim ��� �and turn rate �� � as m contained inn a random chhromosome with w random lenngth, Pellazarr and Miles [20]. 5-2. GA A for UAV pa ath planning 5.2 GAProposed for path planning 5-2.Proposed Proposed GA AUAV for UAV pa ath planning 7 7 Table 5-2 2 Genetic reprresentation The next sub-sections describe the proposed GA algorithm for trajectory planning; including The next suub-sections deescribe the pro oposed GA allgorithm for trrajectory plan nning; includinng genetic re The next suub-sectionschromosome deescribe the decoding, pro oposed GA allgorithm trrajectory plan nning; includinng genetic rep pres genetic representation, fitness function,for and GA operators. row fitness repres entation chromosom me decoding, f function,Genetic and GA opperators. chromosom me decoding, fitness f function, and GA opperators. 5.2.1 Genetic representation -3 2 0 1 2 -3 -3 0 ∆� -5 5-2-1. Geneti ic representa tion Each chromosome consists three rowstion of different integers, representing the speed rate, climb 5-2-1. Genetiic of representa 0 discrete -2 0times2 {t , k0 = 0,11 …0N} respectively, -1 0 angle rate, and heading angle ∆� rate, at taking into k rent integers, mosome consi ists of three rows r of differ representing the speed raate, climb an Each chrom account the physical constraints of maximum speed, the climb and turn rate γ, ψ, as mentioned rent2 integers, mosome consiists ∆� of three rows r 0 of differ representing the speed raate, climb ang gle Each chrom -2 4 3 -1 0 1 0 previously.heading Table 2ang shows an example the changes a random with thhe physical c gle rate, at diiscreteoftimes �� � � � � �contained 0� � … �� in respectiv vely, chromosome taking in nto account (20) headinglength, anggle Pellazar rate, at di iscrete times � � � � � 0� � … �� respectiv vely, taking in nto account thhe physical co onst random and Miles . �� maximum sspeed, the clim mb and turn rate �� �� as m mentioned prev viously. Tablee 5-2 shows ann example of maximum sspeed, the clim mb and turn rate �� �� as m mentioned prev viously. Tablee 5-2 shows ann example of the contained inn a random chhromosome with w random lenngth, Pellazarr and Miles [20]. Where ∆�� ∆ ∆�� are theech speed rate, climb c with raate, and headin ng angle rateMiles respectively. r contained inn a∆� random hromosome w angle random lenngth, Pellazar r and [20]. 5-2-2. Chrom mosome decod ding Table 5-22 Genetic reprresentation Table 5-22 Genetic reprresentation Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1279 Table 2 Genetic representation RowGenetic representation ∆v –5 –3 2 0 1 2 ∆γ 0 –2 0 2 0 1 ∆ψ –2 0 4 0 2 1 –3 0 0 –3 –1 3 0 0 –1 where ∆v, ∆γ, ∆ψ are the speed rate, climb angle rate, and heading angle rate, respectively Now the genes of each should chromosome shouldtobe decodeda corresponding to generate a corresponding UAV �� � trajecto Now the genes of each chromosome be decoded generate UAV trajectory � � � � �� � it is usedthe tofitness calculate the fitness andresult showing the resultEquations graphically. Equation the flight; as itthe is flight; used toascalculate function, and function, showing the graphically. (4-1), (4-2) 5.2.2 Chromosome decoding 3), (4-4), (4-5), (4-6) are used to decode and encode the chromosomes. 3), (4-4), (4-5), of (4-6) arechromosome used to decode and be encode the chromosomes. Now the genes each should decoded to generate a corresponding UAV trajectory j j j (x , y , z ) for the flight; as it is used to calculate the fitness function, and showing the result 5-2-3. Fitness Function 5-2-3. Fitness graphically. Equations (7)Function to (12) are used to decode and encode the chromosomes. Thefunction fitness function goodness of each chromosome. It must accurately measureoft The fitness function evaluates the evaluates goodness the of each chromosome. It must accurately measure the quality 5.2.3 Fitness chromosomes in the eachgoodness generation, and chromosome. in itourshould problem should the of a giv chromosomes in each generation, and in ourofproblem calculate the calculate total cost of atotal given The fitness function evaluates each It it must accurately measure thecosttrajectory, quality of the chromosomes in generation, and in Qinget. our problem it This should calculate totalfunction et. al.[13], Ioannis et. al.[14], al. [16] and Chen[1]. Thisthe fitness need Anargyros et. Anargyros al.[13], Ioannis et. each al.[14], Li Qinget. al. Li [16] and Chen[1]. fitness function needs to be optimi (13) (14) (16) (1) cost of a giventotrajectory, see Anargyros et al , Ioannis et al , Li Qing et al and Chen . This � � � � � �is� �used here is of sum the an optimal trajectory. Thus the fitness � � �� �here � � � � � � �used the inverse ofthe theinverse weighted to get an optimalget trajectory. Thus the fitness function � � ��function fitness function needs to be optimised, to get an optimal trajectory. Thus the fitness function f j (x j, the is four costs: j four previous costs: ythe , z j) used here theprevious inverse of the weighted sum of the four previous costs: � � � � �� � � � �� � �� � �� � � � � �� � � � � � � � ������ � � � � �� � � ∑ � where where ∑��� �� �� �� �� �� ���� � � where � � � ∑� � J �� � � � � � � � � � � �� �� �������� ������ ������ � �� ��������� � ������� ∑��� J� �� � � � ���� � ������� � ���������� (w� � arecorresponding the weights corresponding totoeach In which which (w (w�i)�In arewhich the weights weights corresponding eachcost. cost.to each cost. .(5-6) . . (18) � ����������(5-7) . . . (19) (5-6) (5-7) 5-2-4. Genetic operators 5.2.4 operators 5-2-4. Genetic Genetic operators Selection: This operator gives the high-quality chromosome a better chance to reproduce and get Selection: This gives the high-quality awheel better chance and to which reproduce Selection: This operator givesoperator the high-quality achromosome better chance to reproduce get copiedand to get the copied to the next generation. In this paper wechromosome use the weighted roulette selection, generation. In this paper we use the weighted roulette wheel selection, which is based on the indi is based on the individual’s selection probability (relative fitness). Thus, high-fitness individuals generation. In this paper we use the weighted roulette wheel selection, which is based on the individual’s selec (1) (20) are likely but probability not guaranteed to be reproduced (Chen and Pellazar ). (relative Thus,individuals high-fitnessareindividuals but not to be(Chen repr probability (relative fitness). Thus,fitness). high-fitness likely but are not likely guaranteed to guaranteed be reproduced Crossover: The crossover operation allows two individuals to exchange information by swapping and Pellazar [20]). and Pellazar some part of[20]). their representation with other individuals. This creates new individuals that may or may not perform better than the parent individuals. The choice of which individuals to crossover Crossover: crossover allows two individuals to by swapping (20) Crossover: crossover operation allows two to exchange byinformation swapping part of t and at what The point is doneThe randomly, andoperation this is individuals what gives GA much ofinformation itsexchange power, Pellazar . Insome representation with other individuals. This creates new individuals that may or may not this paper we used one-point crossover. Figure 4 shows an example of the crossover procedure, representation with other individuals. This creates new individuals that may or may not perform betterperfor than (20) Chen(1) and Pellazar . parent individuals. The choice of which individuals to crossover and at what point is done randoml parent individuals. The choice of which individuals to crossover and at what point is done randomly, and this is w Mutation: The random mutation operator is used to prevent the loss of information that occurs gives GApower, much Pellazar of its power, [20]. we In this we used one-point crossover. Figure s gives GA of its [20]. Pellazar In thisthat paper usedpaper one-point crossover. 5-3 shows an 5-3 exam when theremuch are many nearly-optimal individuals are missing an important value inFigure their genes. ofadds the crossover procedure, Chen[1] and Pellazar [20].without affecting the rest of the This a random factorand to the individual members, of theoperator crossover procedure, Chen[1] Pellazar [20]. population. The individuals can ‘jump’ out of local minima and come closer to the optimal value. Figure 5-3Example of the crossover procedure Figure 5-3- Example of the crossover procedure parent individuals. The choice of which individuals to crossover and at what point is done randomly, and this is what gives GA much of its power, Pellazar [20]. In paper we used one-point crossover. Figure 5-3 shows an example 1280 Thethis Aeronautical Journal O ctober 2015 of the crossover procedure, Chen[1] and Pellazar [20]. into the seleected chromossome, while th he deletion opperator deletess a gene from the candidatee chromosomee. Figure 5- shows two examples of these t operatorFigure s. 4. Example of the crossover procedure. Figure 5-3- Example of the crossover procedure Mutation: The random mutation operator is used to prevent the loss of information that occurs when there are many nearly-optimal individuals that are missing an important value in their genes. This operator adds a random factor to he individual members, without affecting the rest of the population. The individuals can “jump” out of local minima nd come closer to the optimal value. Figure Mutation must be used carefully, since it often causes near-optimal individuals 5. The insertion and deletion procedures. Figu ure 5-4 the inssertion and deeletion proced dures o perform worse. The mutation rate is sometimes decreased linearly during the simulation, Pellazar [20]. Mutation must be used carefully, since it often causes near-optimal individuals to perform worse. 6. PSO ap pproach The mutation rate is sometimes decreased linearly during the simulation, Pellazar(20). nsertion and Deletion: these operators are necessary to implement variable-length chromosomes. They are added Insertion and Deletion: these operators are necessary to implement variable-length chromosomes. swaarm optimizat tion wa as originally ddesigned and introduced i to some and doperator Kennedy [21]. The PSO Eberhart oParticle the mutation function, where apply to somewhere of the candidate parents. The insertion a gene They are added to (PSO) thethey mutation function, they apply ofby the candidate parents. Theinserts insertion operator inserts a gene into the selected chromosome, while the deletion operator deletes is a populattion based search algorithm m based on thhe simulation of the social behavior of bbirds, bees orr a school o a gene from the candidate chromosome. Figure 9 5 shows two examples of these operators. fishes. Eveery bird recallls its flying experience w which is the shortest disttance betweenn food and itself. Bird communicaate their flyingg experience with w each otheer, and then th hese behaviorss lead all birdss into the locattion of food 6.0 PSO APPROACH so it is calleed Swarm Inttelligence, (Leeandro [22], C Chun-Yao and d Yi-Xing [23] and Shi [24]]). Each indiv vidual withi Particle swarm optimisation (PSO) was originally designed and introduced by Eberhart and (21) the swarm is represented d by a vector r in multidim mensional searcch space. is simulation vector hasofalso one assiigned vecto Kennedy . The PSO is a population based search algorithm based onThi the the social behaviour of birds, bees or a school of fishes. Every bird recalls its flying experience which is the nt of the parti ticle and is caalled the velo ocity vector. E Each particlee updates it which deteermines the next movemen shortest distance between food and itself. Birds communicate their flying experience with each other, velocity lead an nd all thebirds bestinto poosition it hasofexplored far; f and alsointelligence, based on thee global bes velocity baased and on thencurren thesentbehaviours the location food, so itso is called swarm (Leandro(22), Chun-Yao and Yi-Xing(23), and Shi(24)). Each individual within the swarm is represented by position expplored by swaarm. The PSO O process thenn is iterated a fixed numbeer of times or until a minim mum error i a vector in multidimensional search space. This vector has also one assigned vector which determines achieved baased on amovement desired performan nce index zinica the next of the particle and isLaz called the[25]. velocity vector. Each particle updates its velocity based on current velocity and the best position it has explored so far; and also based on the global best position explored by swarm. PSOcprocess then is a fixed number of times until a population o Particle sw warm optimizaation is simila ar to The a genetic algorithm in niterated that the systtem is initiali izedorwith a minimum error is achieved based on a desired performance index Lazinica(25). random sollutions. It swarm is unlike a gen netic algorithm however, in that each potential sollution with is also o assigned Particle optimisation is similar to m, a genetic algorithm in that the system is initialized population of random solutions. It is unlike algorithm, in that each potential particles, are thenhowever, flow randomizedd avelocity, and d the potential l solutions, callleda genetic wn through hypperspace. solution is also assigned a randomised velocity, and the potential solutions, called particles, are then flown through hyperspace. References [23], [24] andd23, [25] th heused PSOthe algori ithm to solvetothe trajectory planning probblem without considerin References 24 used and 25 PSO algorithm solve the trajectory planning problem (26) without considering kinematic constraints of the Roberge et al algorithm used GA PSO e UAV pat constraints s of thethe vehic le. Roberge eet. al. [26]vehicle. used GA SO ms and for real-tim the kinemattic and PS algorithms for real-time UAV path planning and obtained quasi-optimal trajectories for fixed fixed win [27] in prop an imp planning annd obtained q quasi-optimal trajectories fforPSO ng UAVs. Qiang proved PSO (27) wing UAVs. Qiang proposed an improved algorithm for 3D path planning a posed concentric spherical co-ordinate trajectory will have the form a variable-length algorithm ffor 3D path pllanning system. in a concentric c The generated sphherical coordin nate system. The of generate ed trajectory will w have th line that advances slowly towards the target point, avoiding obstacles and enemy spots. form of a vaariable-length h lineresembles that advaances slowly ttowards the ittaarget voidingoperations obstacclessuch and as enemy y spots. PSO algorithm genetic algorithm, except does point, not do av genetic crossover and mutation. The particles move randomly till they find the target, but through their movement, the on theexc particles least values. PSO algoriithm resembl esalgorithm Genetic focuses Algorithm, A cept it with doesthenot docost Gene etic operationns such as cro ossover an mutation. T The particles move m randomly till they findd the target, but through theeir movement,, the algorithm m focuses o the particless with the leasst cost values. 6-1. Repressenting particles Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1281 6.1 Representing particles Each particle will be the UAV mass centre itself in one of its states, its location and orientation is defined by six parameters: x, y, z, v, γ, ψ and all the particles start from the point (x0, y0, z0, v0, γ0, ψ0), and fly in the virtual space according to motion Equations (7) to (12). In every time step (∆t) PSO makes each particle move ahead one step, stores the state of the particle (location, orientation) in an array like (x, y, z, v, γ, ψ), and calculates the cost value of the current location. Eventually PSO will store a set of arrays of locations, each array will be a potential UAV trajectory, but PSO will focus only on the best trajectory with the least cost value. PSO will stop whenever one of the trajectories reaches a location relatively acceptable to be near the target point and its cost is the least value. 6-2. Cost Value 6-2. CostThe Value 6.2 The cost The value Thecost costThe value calculated showto the goodness theparticle’s particle’s trajectory eachstep. The cost is calculated show the goodness of the particle’s trajectory atstep. each step. Cost The value isisvalue calculated totoshow the goodness ofofthe trajectory at ateach The CostThe function j j j j Cost function � � f� (x � , y , z ) can be considered as: �x , ybe �can be considered , z considered as: f � �x � , y � , zf� �can as: � � � � J� �x � , y � , z � � f�� �x � , y ��, z � � � ∑�� w f �x , y , z � � ∑��� w� J� �x��� , y , z� �� where where where: � �∑� � J ��� � , � � , � � � � � �� �� � ����������(6-2) ∑��� J� �� , � ������� � ������� ���, �� � � ��������� ��������� ������ � ������� ��������� and wweights are thecorresponding weights corresponding to cost. each cost. and the to each cost. � weights andww� are are the corresponding to each (6-1) . . . (6-1) (20) (6-2) . . .(21) i 7. 7. Experimental Experimental results results 7.0 EXPERIMENTAL RESULTS Using GIS tools, MATLAB environment and C# programming the performance of Using GIS tools, MATLAB environment (m files),(m andfiles), C# programming language,language, the performance of the two Using GIS tools, MATLAB environment (m files), and C# programming language, the performance algorithms are compared. algorithms compared. of the twoare algorithms are compared. The DEM over which the trajectory is planned, is represented by a TIFF raster projected using The DEM over the trajectory is is planned, is represented a TIFF raster projected using (UTM -zone The DEM over which thewhich trajectory planned, by a nearly(450,407 TIFFbyraster projected using (UTM -zone 38N) and3 2 (UTM -zone 38N) and the geoid isWGS84 andrepresented covers an area × 541,342)m . The � � . The elevation ranges between -74 a geoid and WGS84 and covers an area nearly�450407 � 54��42�m . The elevation ranges between and 4788 the geoidthe WGS84 covers area4,788 nearly�450407 � 54��42�m elevation ranges between 74anand metres above the sea level. The maximum speed of the-74 UAV isabove 300 metres/seconds. The climb ranges between45°, andmeters/seconds. 45°. The initialThe speed isThe 0angle meters the sea level. The angle maximum of the is 300 meters/seconds. climb angle meters theabove sea level. The maximum speed of speed the UAV is UAV 300 climb ranges metres/seconds. The initial climb angle is 45°. Assuming that the 0°angle direction points towards the East; the initial direction angle will be 270°. The step time is 30 seconds, i.e. every 30 seconds ° ° be270° . The step time is 30 sec 0° angleplanning direction points the towards the the initial direction angle will 0the angle direction points towards East; the East; initial direction angle will be270 . flight The step timeofisthe 30 seconds i.e. trajectory algorithm registers and adds a trajectory point. The height every 30 seconds the trajectory planning algorithm registers and adds a trajectory point. The flightofheigh trajectory point should range between 100 and 600 metres. every 30 seconds the trajectory planning algorithm registers and adds a trajectory point. The flight height the Figure 6 shows four obstacle zones – the polygon areas filled with the red colour – that the point should range 100 between 100meters. and 600 meters. trajectorytrajectory point should range between and 600 UAV has to avoid flying near. The distance between the and target is nearly 471,731 metres. shows fourstart obstacle zones –points the areas polygon areas with the red that the has flying to avo Figure 7-1Figure shows7-1 four obstacle zones – the polygon filled withfilled the red colorthatcolorthe UAV hasUAV to avoid ° ° ° ° between�45 . The initial is 0 meters/seconds. The initial climb angle is45° . Assuming between�45 , and45°,. and45 The initial speed is speed 0 meters/seconds. The initial climb angle is45 . Assuming that the near. near. 7.1 Testing GA The initial population is chosen to be 20 genes, and the maximum number of the population is 30 genes; increasing these values is possible but it will cause the algorithm to run very slowly, especially if the distance between the start and the target point is very large. The result of ten executions of the genetic algorithm is shown in Table 3. trajectory point should range between 100 and 600 meters. Figure 7-1 shows four obstacle zones – the polygon areas filled with the red color- that the UAV has to avoid flying 1282 near. The Aeronautical JournalOctober 2015 Figure 6. Obstacle areas. Figure 7-1- obstacle areas Table 3 meters. The distance between the start and target points is nearly 471731 Testing 11 GA Name Points Count Length Calc Time Time to reach target Cost (m)(Sec) (Sec) GA GA1 GA2 GA3 GA4 GA5 GA6 GA7 GA8 59 58 61 57 57 58 58 56 56 487,950 490,530 509,730 482,370 475,710 487,530 486,450 474,600 478,140 63.8 63 65.9 62.8 61.6 62.6 62.9 60.8 61.7 1,740 1,710 1,800 1,680 1,680 1,710 1,710 1,650 1,650 928,141.5 992,703,401.7 121,180,590.8 70,864,453.9 59,163,507.7 99,093,020.4 131,297,755.7 94,164,936 79,444,360.8 It can be seen that in every execution a totally new trajectory is created, this is acceptable because GA depends on stochastic operations. The best trajectory is GA which has the least cost, even though it does not reach the target in the shortest period of time. Since the cost function does not depend only on the shortest path, but it is calculated using other parameters such as (How much the trajectory points are far from the obstacle areas, or how much their heights are in the range between the minimum and the maximum value of height …), for example trajectory GA7 has the shortest length, but not the least cost, see Fig. 7. Note that trajectory GA7 is too near to the obstacle zone 1, this way the cost will be larger. Figure 8 shows a 3D representation of the two trajectories: 7.2 Testing PSO By using the same start and target points, and the maximum particle count to be 20 particles, the PSO algorithm is tested, and the results are shown in Table 4. ers such s as (How much the traj ajectory pointss are far from the obstacle areas, or how w much their nge between b the minimum m and tthe maximum m value of heig ght…), for exaample trajecto ory GA7 has but not the least co ost, see figure 7-2. Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1283 Figuree 7-2- GA trajeectories Note that trrajectory GA77 is too near to o the obstacle zone 1, this way w the cost will w be larger. Figure 7-3 sshows a 3D reepresentation of the two traj ajectories: Figure 8. 3D representation of GA trajectories. Figure 7. GA trajectories. Figu Table 4ure 7-3- 3D reepresentation of GA trajectoories The results ofTestin the gexecution of the PSO algorithm 7-2. PSO 12 maximum parrticle countCost same start and Calc the to m to o be 20 particcles, the PSO using thhe Length target time points, and Name PointsBycount Time reach target (m) (Sec) (Sec) tested, and the results aree shown in tab ble 7-2. PSO PSO 1 PSO 2 PSO 3 PSO 4 PSO 5 PSO 6 PSO 7 PSO 8 PSO 9 63 57 58 59 57 57 59 60 57 57 503,280 475,710naame 490,140 492,420 PSO 480,330 PSO 1 478,530 PSO 2 489,120 PSO 3 490,530 PSO 4 468,660 PSO 5 471,660 .5 Table the executio on of the PSO algorithm 567-2- The results of1,860 217,132,086 51.5 Points Length 52.5 (m) Count 53.5 51.5 57 . 51 3 58 53.1 59 53.4 57 51 57 51.5 475710 51.55 490140 52.55 492420 53.55 480330 51.55 63 503280 1,680 124,785,824.1 1,740 1860 1,680 1680 1,680 1710 1,740 1740 1,770 1680 1,680 1680 1,680 120,488,710 2171320866.5 91,051,760 124785824 4.1 63,021,741.1 1102495944 121,135,090.7 1204887100 156,138,674 91051760 123,907,850.7 63021741..1 134,386,337.2 Callc. Time Time to reach target(Sec) Cost 110,249,594 (Se c) 1,710 56 478530 51.33 59 489120 53. 1 PSO 7 60 490530 53.44 1770 1561386744 PSO 8 57 468660 51 1680 1239078500.7 PSO 6 1740 1211350900.7 57 cost471660 51.55 .1. This 1680 1343863377.2 The best trajectory is PSO5 which hasPSO the9 least 63,021,741 trajectory is represented in Fig. 9. Figure 10 shows a 3D representation of the best PSO trajectory: Each algorithm has generated a near-optimal trajectory. Table 5 compares the two best trajectories generated by GA and PSO algorithms. The best trajectory iss PSO5 which h has the least Cost 6302174 41.1. This trajjectory is reprresented in fig g GA algorithm generated the better trajectory during the longest period of calculation time but PSO generated a trajectory which is not very different from the trajectory generated by GA using an acceptable period of calculation time (51.3 seconds). These results and values are changeable according to the area and constraints, but in general the PSO algorithm is faster than GA, but the trajectory generated by the genetic algorithm is better. 1284 The Aeronautical JournalOctober 2015 Figure 7-4- PSO trajectories Figure 7-5 sshows a 3D reepresentation of the best PS SO trajectory: Figure 9. PSO trajectories. Figure 10. 3D representation of PSO trajectories. Figure 7-4- PSO trajectories Figu ure 7-5- 3D rep epresentation of o PSO trajecttories Table 5 Each algoriithm has geneerated a near-optimal trajecctory. Table 7-3 7 compares the two best trajectories Comparing results a 3D reepresentation of the best PS SO trajectory: GA and PSO algorithms.. Name Points count Length Calc time Time to reach target Cost 7-3- Comparing g results (Sec) (m) Table7 (Sec) .5 nam me C Calc. Time Tim me to reach targe et(Sec) GA 59 487,950 63.8Points Couunt Length 1,740 928,141 ((Sec) (m) PSO 5 57 478,530 51.3 1,680 63,021,741.1 Cost GA A 59 487950 663.8 17 740 9281411.5 PSO O5 57 478530 51.3 16 680 630217741.1 c tim me, but PSO GA algorithhm generatedd the better trrajectory durinng the longesst period of calculation 8.0 CONCLUSION trajectory w which is not very v different from the trajeectory generatted by GA usiing an acceptaable period This paper presented time two (51.3 evolutionary sseconds). approaches to solve the trajectory planning problem: GA and PSO algorithms. The optimal trajectory was planned considering three dimensional terrain environment with static and moving obstacles which must be avoided.14 Simulation results show that each approach finds a near-optimal solution in a very effective and easy manner. GA does Figu ure 7-5- 3D rep epresentation of o PSO trajecttories more calculations than PSO, but the solution obtained by GA is better, while PSO algorithm needs as geneerated a near--optimal trajecctory. Table 7-3 7 compares the two best trajectories generated g by less calculations, the solution it finds is worse. For further research in this area, it is suggested to rithms.. combine genetic and fuzzy to make genetic-fuzzy algorithm, or PSO and fuzzy (PSO-fuzzy) to find more improved algorithms, this may be done by using GA, or PSO to construct fuzzy rules, Table77-3- Comparing g results and then build a fuzzy system that uses these rules to solve the trajectory planning problem, this way GA or PSO will generate the besttarge route least cost route) using a very fast fuzzy system, nam me Points Cou unt Length C Calc. Time Tim me to reach et(Sec)(the Cost ((Sec) (m) genetic-fuzzy this is called algorithm or PSO-fuzzy. GA A 59 487950 663.8 17 740 9281411.5 PSO O5 57 478530 51.3 16 680 630217741.1 ACKNOWLEDGEMENTS This work is supported by a grant from University of Guilan, Rasht, Iran. The authors appreciate neratedd the better trrajectory comments durinng the longes st period of calculation canonymous tim me, but PSO generated a the valuable provided by the referees. s not very v different from the trajeectory generatted by GA usiing an acceptaable period off calculation s). 14 Bagherian and Alos 3D UAV trajectory planning using evolutionary algorithms... 1285 REFERENCES 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Chen, X.-G. Gao, X.-W. and Qing, D. A genetic-algorithm-based approach to UAV path planning problem, WSEAS Int Conference on Simulation, Modeling and Optimization, 17-19 August 2005, Corfu, Greece, pp 503-507. Bellman, R. Dynamic Programming, 1962, Princeton University Press, Princeton, NJ, USA. Betts, J.T. and Huffman, W.P. Path constrained trajectory optimization using sparse sequential quadratic programming, J Guidance, Control and Dynamics, January-February 1993, 16, (1), pp 59-68. Rippel, E., Aharon, B.-G. and Nahum, S. Fast graph-search algorithms for general aviation flight trajectory generation, Technion, 24 May 2004, Israel Institute of Technology, Haifa, Israel. Betts, J.T. and Huffman, W.P. Path constrained trajectory optimization using sparse sequential quadratic programming. J Guidance, Control and Dynamics, January-February 1993, 16, (1), pp 59-68. Enright, P.J. and Conway, B.A. Discrete approximations to optimal trajectories using direct transcription and nonlinear programming, J Guidance, Control and Dynamics, July-August 1993, 15, (4), pp 994-1002. Hall, R. Path planning and autonomous navigation for use in computer generated forces, 2007, Scientific Report, Swedish Defense Research Agency. Lu, P. Inverse dynamics approach to trajectory optimization for an aerospace plane, J Guidance Control and Dynamics, July-August 1993, 16, (4), pp 726-732. Hwang, Y. and Ahuja, N. Gross motion planning – a survey, ACM Computing Surveys, September 1992, 24, (3), pp 219-291. Latombe, J. Robot Motion Planning, 1991, Kluwer, Boston, MA, USA. Haeberling, C. Symbolization in topographic 3D-maps: conceptual aspects for user-oriented design, 1999, Zurich Institute of Cartography, Swiss Federal Institute of Technology (ETH Zurich). Zardashti, R. and Bagherian, M. A new model for optimal TF/TA flight path design problem, Aeronaut J, May 2009, 113, (1143), pp 301-308. Anargyros, N.K., Ioannis, K.N., Tsourveloudis, N.C. and Valavanis, K.P. Evolutionary algorithm based on-line path planner for UAV navigation, 10th Mediterranean Conference on Control and Automation, 9-12 July, 2002, Lisbon, Portugal. Ioannis, K.N. and Kimon, P.V. Evolutionary algorithm based offline/online path planner for UAV navigation, IEEE Transactions on Systems, Man, and Cybernetics - Part B: Cybernetics, December 2003, 33, (6). Call, B.R. Obstacle avoidance for unmanned air vehicles, December 2006, Brigham Young University, USA. Qing, L., Wei, G., Yuping, L. and Chunlin, S. Aircraft toute optimization using genetic algorithms, IEEE, USA, 2-4 September 1997, pp 394-397. Back, T. Evolutionary Algorithms in Theory and Practice, 1996, Oxford University, UK Goldberg, D.E. Genetic Algorithms in Search, Optimization, and Machine Learning, 1998, Addison Wesley, Reading, MA, USA. Mitchell, M. An Introduction to Genetic Algorithms, 1999, Massachusetts Institute of Technology, Cambridge, MA, USA. Pellazar, M.B. Vehicle Route Planning With Constraints Using Genetic Algorithms, 1994, IEEE, Washington, USA. Eberhart, R. and Kennedy, J. A New optimizer using particle swarm theory, 1995, Sixth International Symposium on Micro Machine and Human Science, IEEE, Washington, DC, USA. Coelho, L.dos. S. and Sierakowski, C.A. A software tool for teaching of particle swarm optimization fundamentals, Science Direct, 26 March 2008, Parana, Brazil. Lee, C.-Y. and Shen, Y.-X. Optimal planning of ground grid based on particle swam algorithm, 2009, World Academy of Science, Engineering and Technology, China. Yuhui, S. Particle swarm optimization, February 2004, IEEE Neural Networks Society, USA. Lazinica, A. Particle Swarm Optimization, 2009, InTech, Vienna, Austria. Roberge, V., Tarbouchi, M. and Labonte, G. Comparison of parallel genetic algorithm and particle swarm optimization for real-time UAV path planning, industrial informatics, IEEE Transactions, 2012 9, (1), pp 132-141. Wang, Q., Zhang, A. and Qi, L. Three dimentional path planning for UAV based on improved PSO algorithm, 2014, IEEE 26th Chinese Control and Decision Conference, pp 3981-3985.
© Copyright 2025 Paperzz