Automatic Parking Controller with a Twin Artificial Neural ...

19
Research Article Automatic Parking Controller with a Twin Artificial Neural Network Architecture Jaeyoung Moon , Il Bae , and Shiho Kim School of Integrated Technology, Yonsei Institute of Convergence Technology, Yonsei University, Incheon 21983, Republic of Korea Correspondence should be addressed to Shiho Kim; [email protected] Received 9 July 2019; Accepted 3 September 2019; Published 18 September 2019 Academic Editor: Alberto Olivares Copyright © 2019 Jaeyoung Moon et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Weproposeanartificialdeepneuralnetwork-(ANN-)basedautomaticparkingcontrollerthatovercomesastubbornrestriction prevalentintraditionalapproaches.eproposedANNlearnshuman-likecontrollawsforautomaticparkingthroughsupervised learning from a training database generated by computer-aided optimizations or real experiments. By learning the relationships betweentheinstantaneousvehiclestatesandthecorrespondingmaneuverparameters,theproposedtwincontrolleryieldslateral and longitudinal maneuvering parameters for executing automatic parking tasks in confined spaces. e proposed automatic parking controller exhibits a twin architecture comprising a main agent and its cloned agent. Before the main agent assumes a maneuvering action, the cloned agent predicts the consequences of the maneuvering action through a Collision Checking and Adjustment (CCA) system. e proposed parking agent operates like a human driver in a manner that is characterized by an unplannedtrajectory.Inaddition,thekinematicsofthesubjectvehicleisnotexactlymodelledforparkingcontrol.esimulation results demonstrate that the proposed twin agent emulates the attributes of a human driver such as adaptive control and determines the consequences of the tentative maneuvering action under varying kinematic models of the subject vehicle. We validatetheproposedparkingcontrollerbysimulatingthesoftware-in-the-looparchitectureusingaPreScansimulatorinwhich the dynamics of the virtual vehicle’s behavior resemble a real vehicle. 1. Introduction Automatic parking systems enhance the safety and comfort of drivers. e automatic parking system of a vehicle must performnumerouscomplicatedtaskstosafelyparkavehicle in a confined space within a limited time, including envi- ronment detection, steering, acceleration, braking, and gear shifting while moving the car. Numerous studies on auto- matic parking systems have been conducted; however, achievingautomaticparkingofacarwithinatinyspaceisa problem that must be overcome for the implementation of advanceddriver-assistancesystemsorautonomousvehicles. Most current parking systems exploit a step-by-step approach in which the reference trajectory is first de- termined, and then the desired reference trajectory for moving the car to the parking destination is tracked using anonlinefeedbackcontrolloop.esemethodologieshave been broadly classified into two branches: geometric ap- proaches and mathematical optimization approaches. In geometric approaches, a reference trajectory is usually denotedbyasetofspecialcurves(e.g., β-splinecurves[1], ezier curves [2], clothoid curves [3], and polynomial curves [4]) that exhibit geometrical properties. Mathe- matical optimization approaches [5–9] formulate parking problems in nonlinear programs (NLPs) and solve prob- lems to minimize an objective function. A primary feature of this type of method with offline planning and online maneuvering is that the reference parking trajectory is generated by a set of curves that consider the kinematic model of a vehicle. In addition, the predefined path is traversed by controlling for a sequence of maneuvering actions associated with steering and velocity control to track the trajectory of the vehicle as closely as possible within a tolerable error range. Hindawi Mathematical Problems in Engineering Volume 2019, Article ID 4801985, 18 pages https://doi.org/10.1155/2019/4801985

Transcript of Automatic Parking Controller with a Twin Artificial Neural ...

Page 1: Automatic Parking Controller with a Twin Artificial Neural ...

Research ArticleAutomatic Parking Controller with a Twin Artificial NeuralNetwork Architecture

Jaeyoung Moon Il Bae and Shiho Kim

School of Integrated Technology Yonsei Institute of Convergence Technology Yonsei University Incheon 21983 Republic of Korea

Correspondence should be addressed to Shiho Kim shihoyonseiackr

Received 9 July 2019 Accepted 3 September 2019 Published 18 September 2019

Academic Editor Alberto Olivares

Copyright copy 2019 Jaeyoung Moon et al (is is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work isproperly cited

We propose an artificial deep neural network- (ANN-) based automatic parking controller that overcomes a stubborn restrictionprevalent in traditional approaches(e proposed ANN learns human-like control laws for automatic parking through supervisedlearning from a training database generated by computer-aided optimizations or real experiments By learning the relationshipsbetween the instantaneous vehicle states and the corresponding maneuver parameters the proposed twin controller yields lateraland longitudinal maneuvering parameters for executing automatic parking tasks in confined spaces (e proposed automaticparking controller exhibits a twin architecture comprising a main agent and its cloned agent Before the main agent assumes amaneuvering action the cloned agent predicts the consequences of the maneuvering action through a Collision Checking andAdjustment (CCA) system (e proposed parking agent operates like a human driver in a manner that is characterized by anunplanned trajectory In addition the kinematics of the subject vehicle is not exactly modelled for parking control(e simulationresults demonstrate that the proposed twin agent emulates the attributes of a human driver such as adaptive control anddetermines the consequences of the tentative maneuvering action under varying kinematic models of the subject vehicle Wevalidate the proposed parking controller by simulating the software-in-the-loop architecture using a PreScan simulator in whichthe dynamics of the virtual vehiclersquos behavior resemble a real vehicle

1 Introduction

Automatic parking systems enhance the safety and comfortof drivers (e automatic parking system of a vehicle mustperform numerous complicated tasks to safely park a vehiclein a confined space within a limited time including envi-ronment detection steering acceleration braking and gearshifting while moving the car Numerous studies on auto-matic parking systems have been conducted howeverachieving automatic parking of a car within a tiny space is aproblem that must be overcome for the implementation ofadvanced driver-assistance systems or autonomous vehicles

Most current parking systems exploit a step-by-stepapproach in which the reference trajectory is first de-termined and then the desired reference trajectory formoving the car to the parking destination is tracked usingan online feedback control loop (ese methodologies have

been broadly classified into two branches geometric ap-proaches and mathematical optimization approaches Ingeometric approaches a reference trajectory is usuallydenoted by a set of special curves (eg β-spline curves [1]Bezier curves [2] clothoid curves [3] and polynomialcurves [4]) that exhibit geometrical properties Mathe-matical optimization approaches [5ndash9] formulate parkingproblems in nonlinear programs (NLPs) and solve prob-lems to minimize an objective function A primary featureof this type of method with offline planning and onlinemaneuvering is that the reference parking trajectory isgenerated by a set of curves that consider the kinematicmodel of a vehicle In addition the predefined path istraversed by controlling for a sequence of maneuveringactions associated with steering and velocity control totrack the trajectory of the vehicle as closely as possiblewithin a tolerable error range

HindawiMathematical Problems in EngineeringVolume 2019 Article ID 4801985 18 pageshttpsdoiorg10115520194801985

(e difference between the actual parking trajectory andthe desired trajectory can be controlled by a specific negativefeedback loop to maneuver the vehicle and track the ref-erence trajectory However such indirect planning andtracking methods may present several challenges in ensuringthat the vehicle follows a predetermined trajectory within apermissible error in a confined parking space owing touncertainty and inaccuracy in the kinematic andor dynamicmodel with a real vehicle under maneuvering conditions(e model parameters of the vehicle may vary with envi-ronmental changes such as tire pressure surface conditionsof the road weight and distribution of the mounted loadand aging of the vehicle which causes uncertainty in thekinematic and dynamic model even for the same individualvehicle Such problems can hinder the accomplishment ofautonomous parking under restricted conditions of time andspace with multiple back-and-forth movements

On the contrary a human driver can drive a vehiclewithout knowledge of the exact kinematicdynamic pa-rameters of the vehicle [10ndash12] Human drivers implicitlyconsider environmental conditions and obstacles includingthe dynamics and kinematics of the vehicle while driving acar Skilled drivers intuitively and appropriately maneuverthe vehicle by observing vehicle states and the relative po-sitions with respect to the obstacles and goal position One ofthe objectives of this study is to develop an automaticparking controller that exhibits tolerance to variations in thekinematic parameters of the vehicle (e parking controlleroperates under conditions in which the kinematics of thesubject vehicle have not been exactly planned or modelledMoreover human drivers anticipate the consequences oftheir actions before they make the actual maneuveringdecision that affects the movement of the vehicle [11 13](is allows the driver to curtail the potential risk of collisionby anticipating in advance the consequence of drivermaneuvers (e objective of this study is to implement anautomatic parking controller that considers the aforemen-tioned characteristics of human drivers maneuvering of thevehicle without explicit vehicle modelling and foreseeingcapabilities

Pioneering work that attempted tomimic the behavior ofa human driver in an automatic parking controller using aneural and fuzzy network was conducted in 1995 [14 15]After recording the parking behavior of skilled drivers thesedatasets were used to train an artificial neural network(ANN) that mimics the expert driverrsquos parking strategy (isapproach has resulted in breakthroughs in state-of-the-artautomatic parking controller systems however limitedtraining datasets and the lack of premature processing de-vices in 1995 prevented the full realization of human-likeparking controllers for autonomous vehicles Heinen et alalso proposed autonomous vehicle parking control usingartificial neural networks in 2006 [16] (e artificial neuralnetwork (ANN) models used in prior works output thevehiclersquos steering maneuvers by sensing the vehiclersquos currentstates and the target parking slot as the neural networkrsquosinputs However the sparse finite action spaces within thosenetworks (such as straight and turning rightleft) causeabrupt changes in input values Li et al [17] also proposed an

end-to-end automatic parking approach using ANNsHowever these approaches handle automatic parking tasksin the case of simple trajectories without multiple maneu-vering in confined spaces In addition the networks used inprior studies did not exhibit tolerance to variations in vehicleparameters

Liu et al proposed a trajectory planning system usingANN combined with online negative feedback control [18](e fundamental idea of trajectory planning is to enu-merate all possible parking trajectories and correspondingsteering actions so that the parking controller learns therelationship between the given initial- and final-state pairand the corresponding sequence of steering actions toaccomplish the parking task (is planning method imi-tates a human driver such that the parking controller recallsthe desired steering actions in accordance with the parkingtrajectory based on the learning experience However thismethod still exploits the step-by-step approach that plans areference trajectory first and then tracks the desired ref-erence trajectory

(e primary aim of this study is to develop an automaticparking agent by learning the driving attributes of humandrivers such as the inherence concept of a vehicle model andpreview utilization for autonomous vehicles using ANNs(e proposed parking controller comprising a main agentand a cloned agent operates like a human driver in a mannerthat has not been exactly planned such that the kinematics ofthe subject vehicle have not been exactly modelled (ecloned ANN with a virtual vehicle model enables thecontroller to pre-evaluate the consequences of maneuveringactions in a manner that does not result in a collision re-sembling a look-ahead searcher Using a motion plannerbased on simultaneous dynamic optimization [6ndash9] we caneasily collect a large amount of data to train the deep neuralnetworks We developed a near-optimal motion and tra-jectory planner using an interior-point method- (IPM-)based simultaneous dynamic optimization process to gen-erate the training data We generate vehicle statesinputprofiles that describe vehicle motions under conditions ofmechanical restrictions and geometric constraints (ere-fore we can derive several parking scenarios in the case ofsingle and multiple maneuvers using the parameters of theinitialfinal position of a vehicle and a parking space Bylearning the relationships between the current states of thevehicle and the corresponding vehicle control inputs theproposed approach yields a direct steering angle and velocitywhile executing automatic parking maneuvers We validatedthat the proposed ANN-based parking agent mimics hu-man-like common sense in terms of themanner in which thecar is moved from the starting position to the destination tocomplete the parking task

(is paper has been organized into six sectionsSection 2 provides an explanation for generating atraining dataset that learns parking maneuvers Section 3presents a description of the proposed automatic parkingalgorithm which is based on a deep neural networkmodel Simulation results and discussions are presentedin Sections 4 and 5 and the conclusions are finally drawnin Section 6

2 Mathematical Problems in Engineering

2 Generation of Training Dataset

21 Interior-Point Method-Based Simultaneous DynamicOptimization A recent IPM-based simultaneous dynamicoptimization methodology [19 20] which can be classifiedas a numerical method that includes vehicle kinematicsand collision-avoidance constraints was adopted togenerate time-optimal parallel parking maneuvers in astraightforward manner An IPM-based simultaneousdynamic optimization technique was successfully appliedto offline near-optimal automatic path and maneuverplanning for automatic parking [6ndash9] (e IPM-basedsimultaneous dynamic optimization technique brieflyincludes the following four processes (1) obtaining a set ofdifferential equations of control and state variables de-scribing the kinematics of a vehicle using a kinematicbicycle model as shown in Figure 1 (2) defining thegeometric environment of a parking space with obstaclesas shown in Figure 2 (3) discretizing the control and statevariables the original problem is transformed into anIPM-based simultaneous dynamic optimization of non-linear program (NLP) which is equivalent to a fullyimplicit RungendashKutta method [21] and (4) solving the setof equations with equality and inequality constraintsusing the Interior Point OPTimizer (IPOPT) solver [22]which is an open-source software package of IPM

We first used Ackermanrsquos kinematic bicycle model todescribe a front-wheel drive vehicle as shown in Figure 1[2 23] (e kinematics of an autonomous vehicle can beexpressed as follows

dt

d

x(t)

y(t)

v(t)

Ψ(t)

δ(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

v(t) middot cosΨ(t)

v(t) middot sinΨ(t)

a(t)

v(t) middot tan δ(t)

lw

ω(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

forallt isin 0 tf1113858 1113859 (1)

where tf indicates the completion time of the entireprocess (x y) denotes the coordinate of E (the mid-pointof the rear-wheel axle) v(t) is the velocity of point E a(t)

denotes the corresponding acceleration Ψ(t) is the yawangle of the vehicle body δ(t) refers to the steering angleof the front wheel and ω(t) is the angular velocity of thefront wheel (e parametric notations are illustrated inFigure 1 and listed in Table 1

In the general case of a parallel parking scenario asubject vehicle moves from an initial position to the ready-to-reverse position (RRP) (e parking task begins at theRRP where the vehicle starts to move backward toward thedestination position in the parking slot as shown inFigure 2(a) In this study we assume that the parkingmaneuver begins from RRP and ends at the destinationposition by satisfying the completion condition of the targetpose (position and orientation) as defined in the ISO 16787standard [24]

An example of a parking geometry with obstacles and anillustration of collision cases in a parallel parking geometryare shown in Figure 2(b) (e parameters of the parking slotinclude the following parking slot length (SL) parking slotwidth (SW) and lane width of parking area (LW) Acompletion condition of the parking scenario follows theminimum performance requirements for the final pose ofthe automatic parking process described by the ISO 16787standard In the terminal condition of the parking problemthe orientation of the vehicle relative to the road edge is inthe range of minus 3deg to +3deg where 0deg is the target value (edistances from the points of the outermost tire-contact withthe ground to the outer edge of the parking slot line aregreater than 0m which are the minimum performancerequirements for the end position of the automatic parkingprocess

(e parking scenario is formulated via mathematicalprogramming to obtain a training dataset (e x- and y-coordinates of the maneuvering zone are also defined asshown in Figure 2(b) (ree collision cases exist in a parallelparking geometry marked as①② and③ in Figure 2(b) IfSL is not sufficiently long to park a vehicle in a singlemaneuver the corresponding back-and-forth shuffling re-sults obtained from additional possibilities of collisions withneighboring left and right obstacles and with the curb arelabelled as③ (e strategy for formulating the problem andavoiding collision cases in the parking scenario is based onthe ldquopartitioning maneuvering zone methodrdquo in [9] Werecommend Ref [9] to interested readers for more detailedinformation with respect to collision cases ① ② and ③

After formulating the parking problem the simulta-neous dynamic optimization method [6ndash9 20] discretizesdifferential equations that can describe vehicle kinematicsincluding mechanicalphysical constraints on statecontrolvariables and solve (e IPOPT optimizer using IPM-simultaneous dynamic optimization methodology [22] isadopted to solve the formulated problem

22 Training Dataset Generation (is subsection presentsthe criteria for generating a training dataset and for trainingan ANN model for automatic parking To collect a training

Y

X

(Dx Dy)

(Cx Cy)

(Ax Ay)

(Bx By)

lw

of

orb

Ψ

δ

E(x y)

Figure 1 Bicycle kinematic model of front-steering vehicles

Mathematical Problems in Engineering 3

dataset the formulated parking problem is varied by threeparameters ie the initial x- and y-coordinates of the ve-hiclersquos position and the length of the parking slots eseproblems can be solved mathematically using the IPM [20]e optimal solver obtained the vehiclersquos statecontrolproles and determined whether the results of the parkingproblems are single- or multiple-maneuver tasks Figure 3geometrically illustrates the manner in which variousparking scenarios can be set to generate a training datasete symbol b denotes the half-width of the vehicle SW is thewidth of the parking slot We set three variables as the lengthof the parking slot (SL) and the x- and y-coordinates of theRRP of a vehicle (xRRP yRRP) e parking process can bevaried depending on these three parameters If the parkingmaneuver is aborted before arriving at the nal position weeliminated the respective RRP from the training dataset Weonly included successfully completed parking maneuvers inthe dataset

First we generate cases with SL in the range from 44mto 54m to include both the single- and multiple-maneuverparking scenarios Next we dened the RRP region with thex- and y-coordinates in an area dened by the union of two

boundaries SL + 08 + (yRRP minus 10)lexRRP le SL + 20 andb + 02leyRRP le b + 10 as shown in Figure 3

To generate the training dataset simulations under variousparking conditions and environments were conducted with theIPOPTsolver (version 380) [22] and executed on an Intel Corei7-3770 CPU We altered the parameters ie the parking slotlength (SL) and the x- and y-coordinates of RRP (xRRP yRRP)in the parallel parking process while the dimensions of theparking slot width (SW) were xed at 2m e boundaries ofthe variables include vmaxmin plusmn2ms amaxmin plusmn05ms2 δmaxmin plusmn33deg and angular velocity ωmaxmin plusmn1 rads e vehicle parameters used for training data gener-ation include the following overall width (2 times b 16m)length of wheelbase (lw 254m) and frontrear overhang(of r 054054m)

We simulated parking problems for 891 cases from easyto dicult conditions where the dataset includes single- andmultiple-maneuver cases with back-and-forth movementsand gear changes Table 2 presents a summary of the selectedcases of parking geometry and parking maneuvers egenerated dataset was submitted along with this manuscriptin the SupplementaryMaterials (available here)e numberof gear changes and generated completion times of the entireprocess vary depending on the positions of SL and the RRPExamples of the generated trajectories and the controlstateprole results are depicted in Figure 4 for zero gear changeand in Figure 5 for four gear changes causing multiple back-and-forth movements owing to the conned parking spacee inset box in Figure 5(a) presents an enlarged view of thetrajectory where multiple maneuvers occur

3 Proposed Approach and Architecture ofAutomatic Parking Controller Based on ANN

31 Proposed ANN Architecture and Training the ANNWe built an architecture of a deep ANN for an automaticparking agent e proposed ANN is a basic component ofthe automatic parking agent which maneuvers a vehiclewith parking skills learnt by training data so as to producethe appropriate action outputs while maneuvering the ve-hicle with respect to the current state and previous actions

Table 1 Variables and parameters used in bicycle kinematic modelof vehicles

Symbol Description

E(x y) Center of the rear wheel in the bicyclekinematic model

A(Ax Ay) Coordinates of front-left corner of a vehicleB(Bx By) Coordinates of front-right corner of a vehicleC(Cx Cy) Coordinates of rear-right corner of a vehicleD(Dx Dy) Coordinates of rear-left corner of a vehiclelw Distance between front and rear wheelbaseof(r) Distance of front (rear) overhang of the vehicle2b Width of the vehiclev Velocity of the vehicle at the center of rear wheelsa Corresponding accelerationΨ Yaw angleδ Front wheel angleω Angular velocity of wheel steering angle

O

LW

SL

NeighboringobstacleObs

Y

X

Initial position

Final position

Ready-to-reverseposition (RRP)

SW

(a)

LW

O (0 0)

Y

X(SL 0)

SL(SL ndashSW)(0 ndashSW)

RRPA

D

C

B

ObstacleObs

Curb3

3

2

1

3

(b)

Figure 2 Example denition in a parallel parking geometry (a) General case of a parallel parking scenario (b) Illustration of collision cases

4 Mathematical Problems in Engineering

e proposed ANN consists of seven fully connectedlayers with 128 neurons in each layer and six inputs and twooutputs Hyperbolic tangent activation functions (TanH) areused in each fully connected layer We decided the number

of deep layers and the number of neurons per layer using atry and modify method based on some rules-of-thumbmethod [25 26] until the appropriate performance wasachieved during training based on the generated datasets

44m le SL le 54m

SL + 08 + (yRRP minus 10)m le xRRP le SL + 20m

SW

b + 02m le yRRP le b + 10m

O (0 0)

Figure 3 Schematic illustrating zone and RRP of parking for collecting training dataset

Table 2 Selected examples of generated training dataset

Case no Parking slot length (m) RRP position (x y) (m) Number of gear change Time to complete parking tm(s)1 SL 54 (64 10) 0 5712 SL 52 (62 10) 1 6713 SL 50 (60 10) 1 7064 SL 48 (58 10) 1 7435 SL 46 (56 10) 2 8746 SL 44 (54 10) 4 10757 SL 54 (72 18) 0 6268 SL 52 (70 18) 1 7269 SL 50 (68 18) 1 77110 SL 48 (66 18) 2 89911 SL 46 (64 18) 2 93912 SL 44 (62 18) 4 1116

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash1

0

1

Stee

ring

angl

e (ra

d)

1 2 3 4 5 60Time (s)

ndash2

ndash1

1

Velo

city

(ms

)

1 2 3 4 5 60Time (s)

(b)

Figure 4 Training data of Case 1 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

Mathematical Problems in Engineering 5

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 2: Automatic Parking Controller with a Twin Artificial Neural ...

(e difference between the actual parking trajectory andthe desired trajectory can be controlled by a specific negativefeedback loop to maneuver the vehicle and track the ref-erence trajectory However such indirect planning andtracking methods may present several challenges in ensuringthat the vehicle follows a predetermined trajectory within apermissible error in a confined parking space owing touncertainty and inaccuracy in the kinematic andor dynamicmodel with a real vehicle under maneuvering conditions(e model parameters of the vehicle may vary with envi-ronmental changes such as tire pressure surface conditionsof the road weight and distribution of the mounted loadand aging of the vehicle which causes uncertainty in thekinematic and dynamic model even for the same individualvehicle Such problems can hinder the accomplishment ofautonomous parking under restricted conditions of time andspace with multiple back-and-forth movements

On the contrary a human driver can drive a vehiclewithout knowledge of the exact kinematicdynamic pa-rameters of the vehicle [10ndash12] Human drivers implicitlyconsider environmental conditions and obstacles includingthe dynamics and kinematics of the vehicle while driving acar Skilled drivers intuitively and appropriately maneuverthe vehicle by observing vehicle states and the relative po-sitions with respect to the obstacles and goal position One ofthe objectives of this study is to develop an automaticparking controller that exhibits tolerance to variations in thekinematic parameters of the vehicle (e parking controlleroperates under conditions in which the kinematics of thesubject vehicle have not been exactly planned or modelledMoreover human drivers anticipate the consequences oftheir actions before they make the actual maneuveringdecision that affects the movement of the vehicle [11 13](is allows the driver to curtail the potential risk of collisionby anticipating in advance the consequence of drivermaneuvers (e objective of this study is to implement anautomatic parking controller that considers the aforemen-tioned characteristics of human drivers maneuvering of thevehicle without explicit vehicle modelling and foreseeingcapabilities

Pioneering work that attempted tomimic the behavior ofa human driver in an automatic parking controller using aneural and fuzzy network was conducted in 1995 [14 15]After recording the parking behavior of skilled drivers thesedatasets were used to train an artificial neural network(ANN) that mimics the expert driverrsquos parking strategy (isapproach has resulted in breakthroughs in state-of-the-artautomatic parking controller systems however limitedtraining datasets and the lack of premature processing de-vices in 1995 prevented the full realization of human-likeparking controllers for autonomous vehicles Heinen et alalso proposed autonomous vehicle parking control usingartificial neural networks in 2006 [16] (e artificial neuralnetwork (ANN) models used in prior works output thevehiclersquos steering maneuvers by sensing the vehiclersquos currentstates and the target parking slot as the neural networkrsquosinputs However the sparse finite action spaces within thosenetworks (such as straight and turning rightleft) causeabrupt changes in input values Li et al [17] also proposed an

end-to-end automatic parking approach using ANNsHowever these approaches handle automatic parking tasksin the case of simple trajectories without multiple maneu-vering in confined spaces In addition the networks used inprior studies did not exhibit tolerance to variations in vehicleparameters

Liu et al proposed a trajectory planning system usingANN combined with online negative feedback control [18](e fundamental idea of trajectory planning is to enu-merate all possible parking trajectories and correspondingsteering actions so that the parking controller learns therelationship between the given initial- and final-state pairand the corresponding sequence of steering actions toaccomplish the parking task (is planning method imi-tates a human driver such that the parking controller recallsthe desired steering actions in accordance with the parkingtrajectory based on the learning experience However thismethod still exploits the step-by-step approach that plans areference trajectory first and then tracks the desired ref-erence trajectory

(e primary aim of this study is to develop an automaticparking agent by learning the driving attributes of humandrivers such as the inherence concept of a vehicle model andpreview utilization for autonomous vehicles using ANNs(e proposed parking controller comprising a main agentand a cloned agent operates like a human driver in a mannerthat has not been exactly planned such that the kinematics ofthe subject vehicle have not been exactly modelled (ecloned ANN with a virtual vehicle model enables thecontroller to pre-evaluate the consequences of maneuveringactions in a manner that does not result in a collision re-sembling a look-ahead searcher Using a motion plannerbased on simultaneous dynamic optimization [6ndash9] we caneasily collect a large amount of data to train the deep neuralnetworks We developed a near-optimal motion and tra-jectory planner using an interior-point method- (IPM-)based simultaneous dynamic optimization process to gen-erate the training data We generate vehicle statesinputprofiles that describe vehicle motions under conditions ofmechanical restrictions and geometric constraints (ere-fore we can derive several parking scenarios in the case ofsingle and multiple maneuvers using the parameters of theinitialfinal position of a vehicle and a parking space Bylearning the relationships between the current states of thevehicle and the corresponding vehicle control inputs theproposed approach yields a direct steering angle and velocitywhile executing automatic parking maneuvers We validatedthat the proposed ANN-based parking agent mimics hu-man-like common sense in terms of themanner in which thecar is moved from the starting position to the destination tocomplete the parking task

(is paper has been organized into six sectionsSection 2 provides an explanation for generating atraining dataset that learns parking maneuvers Section 3presents a description of the proposed automatic parkingalgorithm which is based on a deep neural networkmodel Simulation results and discussions are presentedin Sections 4 and 5 and the conclusions are finally drawnin Section 6

2 Mathematical Problems in Engineering

2 Generation of Training Dataset

21 Interior-Point Method-Based Simultaneous DynamicOptimization A recent IPM-based simultaneous dynamicoptimization methodology [19 20] which can be classifiedas a numerical method that includes vehicle kinematicsand collision-avoidance constraints was adopted togenerate time-optimal parallel parking maneuvers in astraightforward manner An IPM-based simultaneousdynamic optimization technique was successfully appliedto offline near-optimal automatic path and maneuverplanning for automatic parking [6ndash9] (e IPM-basedsimultaneous dynamic optimization technique brieflyincludes the following four processes (1) obtaining a set ofdifferential equations of control and state variables de-scribing the kinematics of a vehicle using a kinematicbicycle model as shown in Figure 1 (2) defining thegeometric environment of a parking space with obstaclesas shown in Figure 2 (3) discretizing the control and statevariables the original problem is transformed into anIPM-based simultaneous dynamic optimization of non-linear program (NLP) which is equivalent to a fullyimplicit RungendashKutta method [21] and (4) solving the setof equations with equality and inequality constraintsusing the Interior Point OPTimizer (IPOPT) solver [22]which is an open-source software package of IPM

We first used Ackermanrsquos kinematic bicycle model todescribe a front-wheel drive vehicle as shown in Figure 1[2 23] (e kinematics of an autonomous vehicle can beexpressed as follows

dt

d

x(t)

y(t)

v(t)

Ψ(t)

δ(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

v(t) middot cosΨ(t)

v(t) middot sinΨ(t)

a(t)

v(t) middot tan δ(t)

lw

ω(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

forallt isin 0 tf1113858 1113859 (1)

where tf indicates the completion time of the entireprocess (x y) denotes the coordinate of E (the mid-pointof the rear-wheel axle) v(t) is the velocity of point E a(t)

denotes the corresponding acceleration Ψ(t) is the yawangle of the vehicle body δ(t) refers to the steering angleof the front wheel and ω(t) is the angular velocity of thefront wheel (e parametric notations are illustrated inFigure 1 and listed in Table 1

In the general case of a parallel parking scenario asubject vehicle moves from an initial position to the ready-to-reverse position (RRP) (e parking task begins at theRRP where the vehicle starts to move backward toward thedestination position in the parking slot as shown inFigure 2(a) In this study we assume that the parkingmaneuver begins from RRP and ends at the destinationposition by satisfying the completion condition of the targetpose (position and orientation) as defined in the ISO 16787standard [24]

An example of a parking geometry with obstacles and anillustration of collision cases in a parallel parking geometryare shown in Figure 2(b) (e parameters of the parking slotinclude the following parking slot length (SL) parking slotwidth (SW) and lane width of parking area (LW) Acompletion condition of the parking scenario follows theminimum performance requirements for the final pose ofthe automatic parking process described by the ISO 16787standard In the terminal condition of the parking problemthe orientation of the vehicle relative to the road edge is inthe range of minus 3deg to +3deg where 0deg is the target value (edistances from the points of the outermost tire-contact withthe ground to the outer edge of the parking slot line aregreater than 0m which are the minimum performancerequirements for the end position of the automatic parkingprocess

(e parking scenario is formulated via mathematicalprogramming to obtain a training dataset (e x- and y-coordinates of the maneuvering zone are also defined asshown in Figure 2(b) (ree collision cases exist in a parallelparking geometry marked as①② and③ in Figure 2(b) IfSL is not sufficiently long to park a vehicle in a singlemaneuver the corresponding back-and-forth shuffling re-sults obtained from additional possibilities of collisions withneighboring left and right obstacles and with the curb arelabelled as③ (e strategy for formulating the problem andavoiding collision cases in the parking scenario is based onthe ldquopartitioning maneuvering zone methodrdquo in [9] Werecommend Ref [9] to interested readers for more detailedinformation with respect to collision cases ① ② and ③

After formulating the parking problem the simulta-neous dynamic optimization method [6ndash9 20] discretizesdifferential equations that can describe vehicle kinematicsincluding mechanicalphysical constraints on statecontrolvariables and solve (e IPOPT optimizer using IPM-simultaneous dynamic optimization methodology [22] isadopted to solve the formulated problem

22 Training Dataset Generation (is subsection presentsthe criteria for generating a training dataset and for trainingan ANN model for automatic parking To collect a training

Y

X

(Dx Dy)

(Cx Cy)

(Ax Ay)

(Bx By)

lw

of

orb

Ψ

δ

E(x y)

Figure 1 Bicycle kinematic model of front-steering vehicles

Mathematical Problems in Engineering 3

dataset the formulated parking problem is varied by threeparameters ie the initial x- and y-coordinates of the ve-hiclersquos position and the length of the parking slots eseproblems can be solved mathematically using the IPM [20]e optimal solver obtained the vehiclersquos statecontrolproles and determined whether the results of the parkingproblems are single- or multiple-maneuver tasks Figure 3geometrically illustrates the manner in which variousparking scenarios can be set to generate a training datasete symbol b denotes the half-width of the vehicle SW is thewidth of the parking slot We set three variables as the lengthof the parking slot (SL) and the x- and y-coordinates of theRRP of a vehicle (xRRP yRRP) e parking process can bevaried depending on these three parameters If the parkingmaneuver is aborted before arriving at the nal position weeliminated the respective RRP from the training dataset Weonly included successfully completed parking maneuvers inthe dataset

First we generate cases with SL in the range from 44mto 54m to include both the single- and multiple-maneuverparking scenarios Next we dened the RRP region with thex- and y-coordinates in an area dened by the union of two

boundaries SL + 08 + (yRRP minus 10)lexRRP le SL + 20 andb + 02leyRRP le b + 10 as shown in Figure 3

To generate the training dataset simulations under variousparking conditions and environments were conducted with theIPOPTsolver (version 380) [22] and executed on an Intel Corei7-3770 CPU We altered the parameters ie the parking slotlength (SL) and the x- and y-coordinates of RRP (xRRP yRRP)in the parallel parking process while the dimensions of theparking slot width (SW) were xed at 2m e boundaries ofthe variables include vmaxmin plusmn2ms amaxmin plusmn05ms2 δmaxmin plusmn33deg and angular velocity ωmaxmin plusmn1 rads e vehicle parameters used for training data gener-ation include the following overall width (2 times b 16m)length of wheelbase (lw 254m) and frontrear overhang(of r 054054m)

We simulated parking problems for 891 cases from easyto dicult conditions where the dataset includes single- andmultiple-maneuver cases with back-and-forth movementsand gear changes Table 2 presents a summary of the selectedcases of parking geometry and parking maneuvers egenerated dataset was submitted along with this manuscriptin the SupplementaryMaterials (available here)e numberof gear changes and generated completion times of the entireprocess vary depending on the positions of SL and the RRPExamples of the generated trajectories and the controlstateprole results are depicted in Figure 4 for zero gear changeand in Figure 5 for four gear changes causing multiple back-and-forth movements owing to the conned parking spacee inset box in Figure 5(a) presents an enlarged view of thetrajectory where multiple maneuvers occur

3 Proposed Approach and Architecture ofAutomatic Parking Controller Based on ANN

31 Proposed ANN Architecture and Training the ANNWe built an architecture of a deep ANN for an automaticparking agent e proposed ANN is a basic component ofthe automatic parking agent which maneuvers a vehiclewith parking skills learnt by training data so as to producethe appropriate action outputs while maneuvering the ve-hicle with respect to the current state and previous actions

Table 1 Variables and parameters used in bicycle kinematic modelof vehicles

Symbol Description

E(x y) Center of the rear wheel in the bicyclekinematic model

A(Ax Ay) Coordinates of front-left corner of a vehicleB(Bx By) Coordinates of front-right corner of a vehicleC(Cx Cy) Coordinates of rear-right corner of a vehicleD(Dx Dy) Coordinates of rear-left corner of a vehiclelw Distance between front and rear wheelbaseof(r) Distance of front (rear) overhang of the vehicle2b Width of the vehiclev Velocity of the vehicle at the center of rear wheelsa Corresponding accelerationΨ Yaw angleδ Front wheel angleω Angular velocity of wheel steering angle

O

LW

SL

NeighboringobstacleObs

Y

X

Initial position

Final position

Ready-to-reverseposition (RRP)

SW

(a)

LW

O (0 0)

Y

X(SL 0)

SL(SL ndashSW)(0 ndashSW)

RRPA

D

C

B

ObstacleObs

Curb3

3

2

1

3

(b)

Figure 2 Example denition in a parallel parking geometry (a) General case of a parallel parking scenario (b) Illustration of collision cases

4 Mathematical Problems in Engineering

e proposed ANN consists of seven fully connectedlayers with 128 neurons in each layer and six inputs and twooutputs Hyperbolic tangent activation functions (TanH) areused in each fully connected layer We decided the number

of deep layers and the number of neurons per layer using atry and modify method based on some rules-of-thumbmethod [25 26] until the appropriate performance wasachieved during training based on the generated datasets

44m le SL le 54m

SL + 08 + (yRRP minus 10)m le xRRP le SL + 20m

SW

b + 02m le yRRP le b + 10m

O (0 0)

Figure 3 Schematic illustrating zone and RRP of parking for collecting training dataset

Table 2 Selected examples of generated training dataset

Case no Parking slot length (m) RRP position (x y) (m) Number of gear change Time to complete parking tm(s)1 SL 54 (64 10) 0 5712 SL 52 (62 10) 1 6713 SL 50 (60 10) 1 7064 SL 48 (58 10) 1 7435 SL 46 (56 10) 2 8746 SL 44 (54 10) 4 10757 SL 54 (72 18) 0 6268 SL 52 (70 18) 1 7269 SL 50 (68 18) 1 77110 SL 48 (66 18) 2 89911 SL 46 (64 18) 2 93912 SL 44 (62 18) 4 1116

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash1

0

1

Stee

ring

angl

e (ra

d)

1 2 3 4 5 60Time (s)

ndash2

ndash1

1

Velo

city

(ms

)

1 2 3 4 5 60Time (s)

(b)

Figure 4 Training data of Case 1 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

Mathematical Problems in Engineering 5

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 3: Automatic Parking Controller with a Twin Artificial Neural ...

2 Generation of Training Dataset

21 Interior-Point Method-Based Simultaneous DynamicOptimization A recent IPM-based simultaneous dynamicoptimization methodology [19 20] which can be classifiedas a numerical method that includes vehicle kinematicsand collision-avoidance constraints was adopted togenerate time-optimal parallel parking maneuvers in astraightforward manner An IPM-based simultaneousdynamic optimization technique was successfully appliedto offline near-optimal automatic path and maneuverplanning for automatic parking [6ndash9] (e IPM-basedsimultaneous dynamic optimization technique brieflyincludes the following four processes (1) obtaining a set ofdifferential equations of control and state variables de-scribing the kinematics of a vehicle using a kinematicbicycle model as shown in Figure 1 (2) defining thegeometric environment of a parking space with obstaclesas shown in Figure 2 (3) discretizing the control and statevariables the original problem is transformed into anIPM-based simultaneous dynamic optimization of non-linear program (NLP) which is equivalent to a fullyimplicit RungendashKutta method [21] and (4) solving the setof equations with equality and inequality constraintsusing the Interior Point OPTimizer (IPOPT) solver [22]which is an open-source software package of IPM

We first used Ackermanrsquos kinematic bicycle model todescribe a front-wheel drive vehicle as shown in Figure 1[2 23] (e kinematics of an autonomous vehicle can beexpressed as follows

dt

d

x(t)

y(t)

v(t)

Ψ(t)

δ(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

v(t) middot cosΨ(t)

v(t) middot sinΨ(t)

a(t)

v(t) middot tan δ(t)

lw

ω(t)

⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

forallt isin 0 tf1113858 1113859 (1)

where tf indicates the completion time of the entireprocess (x y) denotes the coordinate of E (the mid-pointof the rear-wheel axle) v(t) is the velocity of point E a(t)

denotes the corresponding acceleration Ψ(t) is the yawangle of the vehicle body δ(t) refers to the steering angleof the front wheel and ω(t) is the angular velocity of thefront wheel (e parametric notations are illustrated inFigure 1 and listed in Table 1

In the general case of a parallel parking scenario asubject vehicle moves from an initial position to the ready-to-reverse position (RRP) (e parking task begins at theRRP where the vehicle starts to move backward toward thedestination position in the parking slot as shown inFigure 2(a) In this study we assume that the parkingmaneuver begins from RRP and ends at the destinationposition by satisfying the completion condition of the targetpose (position and orientation) as defined in the ISO 16787standard [24]

An example of a parking geometry with obstacles and anillustration of collision cases in a parallel parking geometryare shown in Figure 2(b) (e parameters of the parking slotinclude the following parking slot length (SL) parking slotwidth (SW) and lane width of parking area (LW) Acompletion condition of the parking scenario follows theminimum performance requirements for the final pose ofthe automatic parking process described by the ISO 16787standard In the terminal condition of the parking problemthe orientation of the vehicle relative to the road edge is inthe range of minus 3deg to +3deg where 0deg is the target value (edistances from the points of the outermost tire-contact withthe ground to the outer edge of the parking slot line aregreater than 0m which are the minimum performancerequirements for the end position of the automatic parkingprocess

(e parking scenario is formulated via mathematicalprogramming to obtain a training dataset (e x- and y-coordinates of the maneuvering zone are also defined asshown in Figure 2(b) (ree collision cases exist in a parallelparking geometry marked as①② and③ in Figure 2(b) IfSL is not sufficiently long to park a vehicle in a singlemaneuver the corresponding back-and-forth shuffling re-sults obtained from additional possibilities of collisions withneighboring left and right obstacles and with the curb arelabelled as③ (e strategy for formulating the problem andavoiding collision cases in the parking scenario is based onthe ldquopartitioning maneuvering zone methodrdquo in [9] Werecommend Ref [9] to interested readers for more detailedinformation with respect to collision cases ① ② and ③

After formulating the parking problem the simulta-neous dynamic optimization method [6ndash9 20] discretizesdifferential equations that can describe vehicle kinematicsincluding mechanicalphysical constraints on statecontrolvariables and solve (e IPOPT optimizer using IPM-simultaneous dynamic optimization methodology [22] isadopted to solve the formulated problem

22 Training Dataset Generation (is subsection presentsthe criteria for generating a training dataset and for trainingan ANN model for automatic parking To collect a training

Y

X

(Dx Dy)

(Cx Cy)

(Ax Ay)

(Bx By)

lw

of

orb

Ψ

δ

E(x y)

Figure 1 Bicycle kinematic model of front-steering vehicles

Mathematical Problems in Engineering 3

dataset the formulated parking problem is varied by threeparameters ie the initial x- and y-coordinates of the ve-hiclersquos position and the length of the parking slots eseproblems can be solved mathematically using the IPM [20]e optimal solver obtained the vehiclersquos statecontrolproles and determined whether the results of the parkingproblems are single- or multiple-maneuver tasks Figure 3geometrically illustrates the manner in which variousparking scenarios can be set to generate a training datasete symbol b denotes the half-width of the vehicle SW is thewidth of the parking slot We set three variables as the lengthof the parking slot (SL) and the x- and y-coordinates of theRRP of a vehicle (xRRP yRRP) e parking process can bevaried depending on these three parameters If the parkingmaneuver is aborted before arriving at the nal position weeliminated the respective RRP from the training dataset Weonly included successfully completed parking maneuvers inthe dataset

First we generate cases with SL in the range from 44mto 54m to include both the single- and multiple-maneuverparking scenarios Next we dened the RRP region with thex- and y-coordinates in an area dened by the union of two

boundaries SL + 08 + (yRRP minus 10)lexRRP le SL + 20 andb + 02leyRRP le b + 10 as shown in Figure 3

To generate the training dataset simulations under variousparking conditions and environments were conducted with theIPOPTsolver (version 380) [22] and executed on an Intel Corei7-3770 CPU We altered the parameters ie the parking slotlength (SL) and the x- and y-coordinates of RRP (xRRP yRRP)in the parallel parking process while the dimensions of theparking slot width (SW) were xed at 2m e boundaries ofthe variables include vmaxmin plusmn2ms amaxmin plusmn05ms2 δmaxmin plusmn33deg and angular velocity ωmaxmin plusmn1 rads e vehicle parameters used for training data gener-ation include the following overall width (2 times b 16m)length of wheelbase (lw 254m) and frontrear overhang(of r 054054m)

We simulated parking problems for 891 cases from easyto dicult conditions where the dataset includes single- andmultiple-maneuver cases with back-and-forth movementsand gear changes Table 2 presents a summary of the selectedcases of parking geometry and parking maneuvers egenerated dataset was submitted along with this manuscriptin the SupplementaryMaterials (available here)e numberof gear changes and generated completion times of the entireprocess vary depending on the positions of SL and the RRPExamples of the generated trajectories and the controlstateprole results are depicted in Figure 4 for zero gear changeand in Figure 5 for four gear changes causing multiple back-and-forth movements owing to the conned parking spacee inset box in Figure 5(a) presents an enlarged view of thetrajectory where multiple maneuvers occur

3 Proposed Approach and Architecture ofAutomatic Parking Controller Based on ANN

31 Proposed ANN Architecture and Training the ANNWe built an architecture of a deep ANN for an automaticparking agent e proposed ANN is a basic component ofthe automatic parking agent which maneuvers a vehiclewith parking skills learnt by training data so as to producethe appropriate action outputs while maneuvering the ve-hicle with respect to the current state and previous actions

Table 1 Variables and parameters used in bicycle kinematic modelof vehicles

Symbol Description

E(x y) Center of the rear wheel in the bicyclekinematic model

A(Ax Ay) Coordinates of front-left corner of a vehicleB(Bx By) Coordinates of front-right corner of a vehicleC(Cx Cy) Coordinates of rear-right corner of a vehicleD(Dx Dy) Coordinates of rear-left corner of a vehiclelw Distance between front and rear wheelbaseof(r) Distance of front (rear) overhang of the vehicle2b Width of the vehiclev Velocity of the vehicle at the center of rear wheelsa Corresponding accelerationΨ Yaw angleδ Front wheel angleω Angular velocity of wheel steering angle

O

LW

SL

NeighboringobstacleObs

Y

X

Initial position

Final position

Ready-to-reverseposition (RRP)

SW

(a)

LW

O (0 0)

Y

X(SL 0)

SL(SL ndashSW)(0 ndashSW)

RRPA

D

C

B

ObstacleObs

Curb3

3

2

1

3

(b)

Figure 2 Example denition in a parallel parking geometry (a) General case of a parallel parking scenario (b) Illustration of collision cases

4 Mathematical Problems in Engineering

e proposed ANN consists of seven fully connectedlayers with 128 neurons in each layer and six inputs and twooutputs Hyperbolic tangent activation functions (TanH) areused in each fully connected layer We decided the number

of deep layers and the number of neurons per layer using atry and modify method based on some rules-of-thumbmethod [25 26] until the appropriate performance wasachieved during training based on the generated datasets

44m le SL le 54m

SL + 08 + (yRRP minus 10)m le xRRP le SL + 20m

SW

b + 02m le yRRP le b + 10m

O (0 0)

Figure 3 Schematic illustrating zone and RRP of parking for collecting training dataset

Table 2 Selected examples of generated training dataset

Case no Parking slot length (m) RRP position (x y) (m) Number of gear change Time to complete parking tm(s)1 SL 54 (64 10) 0 5712 SL 52 (62 10) 1 6713 SL 50 (60 10) 1 7064 SL 48 (58 10) 1 7435 SL 46 (56 10) 2 8746 SL 44 (54 10) 4 10757 SL 54 (72 18) 0 6268 SL 52 (70 18) 1 7269 SL 50 (68 18) 1 77110 SL 48 (66 18) 2 89911 SL 46 (64 18) 2 93912 SL 44 (62 18) 4 1116

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash1

0

1

Stee

ring

angl

e (ra

d)

1 2 3 4 5 60Time (s)

ndash2

ndash1

1

Velo

city

(ms

)

1 2 3 4 5 60Time (s)

(b)

Figure 4 Training data of Case 1 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

Mathematical Problems in Engineering 5

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 4: Automatic Parking Controller with a Twin Artificial Neural ...

dataset the formulated parking problem is varied by threeparameters ie the initial x- and y-coordinates of the ve-hiclersquos position and the length of the parking slots eseproblems can be solved mathematically using the IPM [20]e optimal solver obtained the vehiclersquos statecontrolproles and determined whether the results of the parkingproblems are single- or multiple-maneuver tasks Figure 3geometrically illustrates the manner in which variousparking scenarios can be set to generate a training datasete symbol b denotes the half-width of the vehicle SW is thewidth of the parking slot We set three variables as the lengthof the parking slot (SL) and the x- and y-coordinates of theRRP of a vehicle (xRRP yRRP) e parking process can bevaried depending on these three parameters If the parkingmaneuver is aborted before arriving at the nal position weeliminated the respective RRP from the training dataset Weonly included successfully completed parking maneuvers inthe dataset

First we generate cases with SL in the range from 44mto 54m to include both the single- and multiple-maneuverparking scenarios Next we dened the RRP region with thex- and y-coordinates in an area dened by the union of two

boundaries SL + 08 + (yRRP minus 10)lexRRP le SL + 20 andb + 02leyRRP le b + 10 as shown in Figure 3

To generate the training dataset simulations under variousparking conditions and environments were conducted with theIPOPTsolver (version 380) [22] and executed on an Intel Corei7-3770 CPU We altered the parameters ie the parking slotlength (SL) and the x- and y-coordinates of RRP (xRRP yRRP)in the parallel parking process while the dimensions of theparking slot width (SW) were xed at 2m e boundaries ofthe variables include vmaxmin plusmn2ms amaxmin plusmn05ms2 δmaxmin plusmn33deg and angular velocity ωmaxmin plusmn1 rads e vehicle parameters used for training data gener-ation include the following overall width (2 times b 16m)length of wheelbase (lw 254m) and frontrear overhang(of r 054054m)

We simulated parking problems for 891 cases from easyto dicult conditions where the dataset includes single- andmultiple-maneuver cases with back-and-forth movementsand gear changes Table 2 presents a summary of the selectedcases of parking geometry and parking maneuvers egenerated dataset was submitted along with this manuscriptin the SupplementaryMaterials (available here)e numberof gear changes and generated completion times of the entireprocess vary depending on the positions of SL and the RRPExamples of the generated trajectories and the controlstateprole results are depicted in Figure 4 for zero gear changeand in Figure 5 for four gear changes causing multiple back-and-forth movements owing to the conned parking spacee inset box in Figure 5(a) presents an enlarged view of thetrajectory where multiple maneuvers occur

3 Proposed Approach and Architecture ofAutomatic Parking Controller Based on ANN

31 Proposed ANN Architecture and Training the ANNWe built an architecture of a deep ANN for an automaticparking agent e proposed ANN is a basic component ofthe automatic parking agent which maneuvers a vehiclewith parking skills learnt by training data so as to producethe appropriate action outputs while maneuvering the ve-hicle with respect to the current state and previous actions

Table 1 Variables and parameters used in bicycle kinematic modelof vehicles

Symbol Description

E(x y) Center of the rear wheel in the bicyclekinematic model

A(Ax Ay) Coordinates of front-left corner of a vehicleB(Bx By) Coordinates of front-right corner of a vehicleC(Cx Cy) Coordinates of rear-right corner of a vehicleD(Dx Dy) Coordinates of rear-left corner of a vehiclelw Distance between front and rear wheelbaseof(r) Distance of front (rear) overhang of the vehicle2b Width of the vehiclev Velocity of the vehicle at the center of rear wheelsa Corresponding accelerationΨ Yaw angleδ Front wheel angleω Angular velocity of wheel steering angle

O

LW

SL

NeighboringobstacleObs

Y

X

Initial position

Final position

Ready-to-reverseposition (RRP)

SW

(a)

LW

O (0 0)

Y

X(SL 0)

SL(SL ndashSW)(0 ndashSW)

RRPA

D

C

B

ObstacleObs

Curb3

3

2

1

3

(b)

Figure 2 Example denition in a parallel parking geometry (a) General case of a parallel parking scenario (b) Illustration of collision cases

4 Mathematical Problems in Engineering

e proposed ANN consists of seven fully connectedlayers with 128 neurons in each layer and six inputs and twooutputs Hyperbolic tangent activation functions (TanH) areused in each fully connected layer We decided the number

of deep layers and the number of neurons per layer using atry and modify method based on some rules-of-thumbmethod [25 26] until the appropriate performance wasachieved during training based on the generated datasets

44m le SL le 54m

SL + 08 + (yRRP minus 10)m le xRRP le SL + 20m

SW

b + 02m le yRRP le b + 10m

O (0 0)

Figure 3 Schematic illustrating zone and RRP of parking for collecting training dataset

Table 2 Selected examples of generated training dataset

Case no Parking slot length (m) RRP position (x y) (m) Number of gear change Time to complete parking tm(s)1 SL 54 (64 10) 0 5712 SL 52 (62 10) 1 6713 SL 50 (60 10) 1 7064 SL 48 (58 10) 1 7435 SL 46 (56 10) 2 8746 SL 44 (54 10) 4 10757 SL 54 (72 18) 0 6268 SL 52 (70 18) 1 7269 SL 50 (68 18) 1 77110 SL 48 (66 18) 2 89911 SL 46 (64 18) 2 93912 SL 44 (62 18) 4 1116

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash1

0

1

Stee

ring

angl

e (ra

d)

1 2 3 4 5 60Time (s)

ndash2

ndash1

1

Velo

city

(ms

)

1 2 3 4 5 60Time (s)

(b)

Figure 4 Training data of Case 1 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

Mathematical Problems in Engineering 5

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 5: Automatic Parking Controller with a Twin Artificial Neural ...

e proposed ANN consists of seven fully connectedlayers with 128 neurons in each layer and six inputs and twooutputs Hyperbolic tangent activation functions (TanH) areused in each fully connected layer We decided the number

of deep layers and the number of neurons per layer using atry and modify method based on some rules-of-thumbmethod [25 26] until the appropriate performance wasachieved during training based on the generated datasets

44m le SL le 54m

SL + 08 + (yRRP minus 10)m le xRRP le SL + 20m

SW

b + 02m le yRRP le b + 10m

O (0 0)

Figure 3 Schematic illustrating zone and RRP of parking for collecting training dataset

Table 2 Selected examples of generated training dataset

Case no Parking slot length (m) RRP position (x y) (m) Number of gear change Time to complete parking tm(s)1 SL 54 (64 10) 0 5712 SL 52 (62 10) 1 6713 SL 50 (60 10) 1 7064 SL 48 (58 10) 1 7435 SL 46 (56 10) 2 8746 SL 44 (54 10) 4 10757 SL 54 (72 18) 0 6268 SL 52 (70 18) 1 7269 SL 50 (68 18) 1 77110 SL 48 (66 18) 2 89911 SL 46 (64 18) 2 93912 SL 44 (62 18) 4 1116

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash1

0

1

Stee

ring

angl

e (ra

d)

1 2 3 4 5 60Time (s)

ndash2

ndash1

1

Velo

city

(ms

)

1 2 3 4 5 60Time (s)

(b)

Figure 4 Training data of Case 1 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

Mathematical Problems in Engineering 5

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 6: Automatic Parking Controller with a Twin Artificial Neural ...

We denote a dataset by D and an individual recorded se-quence of a successful parking trajectory and maneuveringby d sim D d is a sequence of vehicle poses and actionsd [(s1 0 a1) (s2 a1 a2) (sn anminus 1 an)] where sk isa pose of the vehicle and environment ie sk (x(k) y(k)Ψ(k) SL(k)) and ak (v(k) δ(k)) which is amaneuvering action of the vehicle at the kth discrete timeWe train the ANN by applying a supervised learning methodusing the whole datasetD with a mean squared error (MSE)loss function e ANN is trained using maneuvering pa-rameters (v(k minus 1) δ(k minus 1)) and sk of the vehicle as inputsand the optimum maneuvering parameters at the currentstate and ak as outputs Single-maneuver scenarios produceapproximately 60ndash70 pairs of states and multiple-maneuverscenarios produce approximately 90ndash150 pairs of states103650 pairs of inputs and outputs are generated using 891scenarios for the training dataset

By applying an ANN the control laws for automaticparking are learnt through a dynamic optimization databaseand particularly by following optimized actions that pro-vide the appropriate maneuvers for each specic situationwith respect to the vehicle pose and environment

e output range of the steering angle δ(k) must belimited by the maximum values associated with the vehiclersquosmechanicalphysical constraints e velocity of the vehiclev(k) should be bounded by considering the parking envi-ronment erefore the ANN model can consider theoutputrsquos maximumminimum values In the output layer weapply an activation function TanH to saturate the outputvalue at or below the maximum value

e structure of the generated dataset and the ar-rangement of the input and output data for training theANN are shown in Figure 6 e current states of the vehicleat time k (x(k) y(k) and Ψ(k)) parking slot information(SL) and actions of the vehicle at time k minus 1 (v(k minus 1) andδ(k minus 1)) are used as inputs of the model for supervisedlearning

We trained our ANNmodel for automatic parking usingthe aforementioned training dataset e proposed deepneural network for automatic parking was implemented

using the Casecte deep learning framework [27] e ANNmodel was trained on 1 million iterations with a randomsampled batch (size of 64)e learning rate was 0001 with adescent ratio of 096 per 10000 iterations

32 Implementation of Parking Controller Using ANNis subsection describes the implementation of an auto-matic parking controller using the trained ANN etrained ANN operates as an automatic parking controller toproduce action signals at every time step e proposedsimple controller with the trained ANN and kinematicmodel of a vehicle constitute a software-in-the loop (SIL)architecture that validates the proposed approach as il-lustrated in Figure 7 e SIL architecture includes a closedfeedback control loop wherein the trained ANN generatesaction signals as outputs and the vehicle pose and previousactions are fed into the ANN at every time step while ex-ecuting parking tasks

An inherent drawback of the simple controller with anANN model is that the ANN produces maneuvers withoutpredicting the consequences of its action signals which mayresult in unwanted collisions with obstacles even if the ANNwere fully trained with an extensive optimized dataset Onthe contrary with respect to the skills of human drivers [11]human drivers anticipate the consequences of their actionsbefore they make the actual maneuvering decision whichasectects the movement of the vehicle

We proposed a twin architecture by combining the mainparking agent and a clone for pre-evaluation of the pose of avirtual vehicle in advance by λ steps before applying the realaction signal to the main vehicle to avoid collisions Figure 8presents an overview of the proposed automatic parkingcontroller with a twin architecture including the mainvehicle-in-the-loop and its clone with a collision-avoidancealgorithm e dotted lines denote the machine boundarybetween the twin agents A duplicated SIL architecturecomprising the cloned ANN with a virtual vehicle model isused to predict the vehicle pose by looking λ steps aheadSimulation of the clone agent provides a prediction of

3

2

1

0

ndash1

ndash20 2 4

X (m)

Y (m

)

6 8 10

(a)

1

2

Velo

city

(ms

)St

eerin

g an

gle (

rad)

0

ndash2

0

ndash1

0 2 4Time (s)

6 8 1210

0 2 4Time (s)

6 8 1210

(b)

Figure 5 Training data of Case 6 in Table 2 (a) Generated path and parking trajectory (b) Steering angle prole and velocity prole

6 Mathematical Problems in Engineering

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 7: Automatic Parking Controller with a Twin Artificial Neural ...

potential collisions with obstacles including modicationsto the action signal of the main agent before applying thesignal to the main vehicle e prediction of the clone agentis tracked and reumlected in the results of the main agentsrsquoactions by employing the twin vehicle-in-the loopmechanism

e outputs from the main ANN and pose of the mainvehicle are fed into the initial pose and initial action of the

cloned vehicle-in-the-loop so as to simulate a potentialsequence of the virtual vehicle pose for λ steps ahead todetermine whether any type of collision occurs and to makeadjustments to actions in response to a detected collisionwhile simulating a virtual vehicle λ steps ahead We canempirically choose λ with a safe distance margin to identifycollisions by considering the maximum allowed speed andperiod of discrete time sampling of an autonomous vehicle

Time (discrete)

Actions

Parking environment and obstaclesInputs

Outputs

ANN model

(k)th vehicle pose(k minus 1)th actions

(k)th actions

Supervisedlearning

Vehicle pose x(k minus 1) y(k minus 1)Ψ(k minus 1) x(k) y(k) Ψ(k)

x(k) y(k) Ψ(k)ν(k minus 1) δ(k minus 1)

Parking environmentand obstacles

ν(k) and δ(k)

ν(k) δ(k)

ν(k minus 1) δ(k minus 1)

kk minus 1

Figure 6 Structure of generated data and arrangement of input and output data for training the ANN

TrainedANN

Vehiclemodel

ActionsPoses

Parking environmentand obstacles

x(k) y(k) Ψ(k)Sk

akndash1

ak

Figure 7 Simple parking controller based on the trained ANNmodel A trained ANNmodel and kinematic model of a vehicle constitutes asoftware-in-the loop architecture for validating the proposed approach without predicting the consequences of its actions

Parking environment and obstacles

Main vehicle-in-the-loop

Initial statesof virtual vehicle

Clone vehicle-in-the-loop

Mainvehicle

Poses

Poses

Actions akν(k) and δ(k)

for j = 1 to λ do

Adjusted actions ν(k) and δ(k)

x(k) y(k) Ψ(k)MainANN

Virtual vehicle

Virtual vehicle actionsνν(k + j) δν(k + j)

xν(k + j) yν(k + j)Ψν(k + j)

Virtualvehicle

Clone ofthe ANN

CollisionChecking

and Adjustment(CCA) of actions

Sk

Sk

ak

Figure 8 Block diagram of proposed twin architecture of parking controller includingmain vehicle-in-the-loop and its clone with collision-avoidance algorithm

Mathematical Problems in Engineering 7

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 8: Automatic Parking Controller with a Twin Artificial Neural ...

during parking (e Collision Checking and Adjustment(CCA) module is a functional block that checks for possiblecollisions and then adjusts the action signals Algorithm 1presents the pseudocode of the predictive collision-avoid-ance algorithm which is a core part of the twin architectureof the parking controller

4 Validation of Proposed Architecture

(is section investigates the functionality and the ability of theproposed parking controllers to perform the automaticparking task in various environments To validate the pro-posed parking controllers based on the trained ANN modelwe simulated the software-in-the-loop architecture for vari-ous parking environments where the vehicle model in theloop exhibits the same kinematic model parameters as thebicycle model used for simultaneous dynamic optimization(e first step in simulation is placing the initial pose of thevehicle in the zone of RRP We selected arbitrary points forthe initial pose and performed simulations while tracing thetrajectory and maneuvers of the vehicle (e RRP region wasdefined when we generated the training dataset (e parkingprocess is complete when the vehicle reaches the designatedparking slot with the requirements for the final pose of au-tomatic parking as described by the ISO 16787 standard

41 Simulation Results of the Proposed Simple ControllerTo verify the feasibility of the proposed simple parkingcontroller based on the trained ANN model the SIL ar-chitecture represented by the block diagram shown inFigure 7 was implemented in the software model usingMATLAB and we performed simulations for variousparking environments and RRP which exhibit differentpositions from training data generation In the simulation ofthe proposed simple parking controller we used the samebicycle steering model and the same kinematic model pa-rameters of the bicycle model used in the dynamic opti-mization for training data generation (e vehicularparameters used for the simulations are the same as that ofthe training data generation

When the given space is wide enough to complete auto-matic parking without gear changes for back-and-forthmovements from the initial RRP to the destination positionwhile satisfying the ISO 16787 requirements most simulatedresults demonstrate that parking can be achieved withoutcollisionwith fixed obstacle barriers as shown in Figure 9 whenSL=54 However when the parking space is so small that thevehicle must change gears for back-and-forth movement thevehicle collided with fixed obstacles as shown by the results inFigures 10 and 11 Figure 10 illustrates that collision case ②occurred during back-and-forth movements in a confinedspacewhen SL=48m In this case the vehiclersquos front-right sidecollides with the vertex at the right side as shown in the en-larged subfigure in Figure 10(a) Figure 11 shows that collisioncase ③ as well as case ② occurred in the case of a confinedparking space when SL=44

Figures 9ndash11 present ordinary cases of simulation resultson the simple controller with an ANN model We simulated

several parking cases with the starting points of parking inthe region of RRP In the case of SLgt 53 the controller parksthe vehicle with a success rate of 998 However in the caseof SLlt 53 the controller requires multiple maneuveringsfor back-and-forth movements during parking and thevehicle body at times intruded border line resulting incollisions with obstacles

As indicated in the simulated results the artificial neuralnetwork was trained to output nearly appropriate sequencesof back-and-forth maneuverings through supervisedlearning without a preplanned trajectory However thevehicle could not avoid collisions in confined parking spaces

42 Simulation Results of the Proposed Controller with a TwinArchitecture We implemented a software-in-the-loop au-tomatic parking simulation environment for the proposedcontroller with twin ANN architecture using MATLAB Inthe predictive collision-avoidance algorithm based on thetwin ANN the clone agent in the cloned vehicle-in-the-loopexecutes subsequences of the parking maneuvers with thevirtual vehicle while checking for possible collisions withobstacles If a collision is detected the CCA then adjusts thevelocity and steering angle coming from the main ANNbefore applying to the main vehicle To compare differencesin collision-avoidance capabilities between single agent andtwin agent systems we conducted automatic parking sim-ulations in the exact same starting points and under envi-ronmental conditions of the aforementioned simulationswith a simple ANN

(e proposed predictive collision-avoidance algorithmbypasses actions from the main ANN if no collision in thecloned vehicle-in-the-loop is detected during maneuveringfor the automatic parking task As expected no differencescan be observed in the simulated results between the singleagent and the twin agent in the case when SL 54m andRRP at position (xRRP yRRP) (67 14) which indicates thesame simulation presented in Figure 9

Figure 12 presents the simulation results of the proposedtwin ANN agent in the case when SL 48 and RRP atposition (xRRP yRRP) (60 12) which is the condition forthe collision case ② occurring while the single agent wasmaneuvering the vehicle as shown in Figure 10 (e en-larged subfigure shown in Figure 12(a) demonstrated thatthe front end of the main vehicle does not intrude the borderof the obstacle barrier during the back-and-forth movementfor automatic parking maneuvers (e CCA block in thetwin agent architecture checks for possible collisionswhenever collision case ② occurs with the virtual vehiclethe CCA adjusts the steering angle so as to avoid the col-lision (e simulated results demonstrate that CCA adjustedthe steering angle approximately from 33 to 39 seconds toavoid collision case ② and so the parking task takes ap-proximately 72 s to complete the parking task which isslightly longer than 68 s in the single ANN case shown inFigure 10

Figure 13 presents the results of the trajectories in thecase of SL 44m and RRP at position (xRRP yRRP) (5714) which are the same conditions of the single ANN shown

8 Mathematical Problems in Engineering

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 9: Automatic Parking Controller with a Twin Artificial Neural ...

in Figure 11 As shown in the enlarged subfigure inFigure 13(a) the proposed twin agent controller can com-plete the automatic parking task without any collisions (esimulation results shown in Figure 13 demonstrate that CCAresolved case ② and case ③ collisions shown in Figure 11while parking in a tiny space

Human drivers implicitly make tentative decisions predictthe consequences of an action in their mind before applyingand then decide on the final action that produces the ap-propriate consequence (e simulation results demonstratethat the automatic parking skill of the twin agent emulates ahuman driverrsquos attributes to the extent that the main agent

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash050ndash025

000025050

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6Time (s)

ndash10

ndash15

ndash05

00

Velo

city

(ms

)

0 1 2 3 4 5 6Time (s)

(b)

Figure 9 Simulated results of proposed simple ANN agent when SL 54m and RRP at position (xRRP yRRP) (67 14) (a) Simulatedparking trajectory (b) Steering angle profile and velocity profile

Input Input to the Clone agent for every decision step of the Main agentSv(k) x(k)y(k)Ψ(k) Input Pose of the Virtual vehicleCurrent pose of the main vehicleAv(k) v(k) δ(k) Input Action of the clone agentOutput of the main agentrsquos actionParking Environment amp obstacles SL Parking slot length and neighboring obstacles

Output Adjusted Action to the main vehicle 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967Parameters λ A1 A2 A3 of looking forward steps (λ) adjustment parameters for desired actions (A1 A2 A3)(1) Procedure forecasting λ step forward poses and actions for the virtual vehicle

Predicting Pose at j forward stepsSv(k + j) xv(k + j) yv(k + j) Ψv(k + j)1113864 1113865

Simulating j step forward actionsAv(k + j) vv(k + j) δv(k + j)1113864 1113865

(2) for j 1 to λdo(3) Calculate j step forward state of the virtual vehicle Sv(k + j)(4) Calculate j step forward actions of the virtual vehicle Av(k + j)

Checking collision occurrence and adjustment of actions if collision detected(5) if Collision Case ①(6) adjust steering angle 1113954δ(k) A1lowast δ(k) 1113954v(k) v(k)1113966 1113967(7) break for-loop(8) else if Collision Case ②(9) adjust steering angle 1113954δ(k) A2lowast δ(k) 1113954v(k) v(k)1113966 1113967(10) break for-loop(11) else if Collision Case ③(12) adjust desired velocity 1113954δ(k) δ(k) 1113954v(k) A3lowast v(k)1113966 1113967(13) break for-loop(14) else If no collision is predicted then do not adjust inputs(15) 1113954δ(k) δ(k) 1113954v(k) v(k)(16) end if(17) end for(18) return 1113954A(k) 1113954v(k) 1113954δ(k)1113966 1113967(19) end of Procedure

ALGORITHM 1 Predictive collision-avoidance algorithm based on twin ANN parking agent

Mathematical Problems in Engineering 9

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 10: Automatic Parking Controller with a Twin Artificial Neural ...

makes tentative actions the cloned agent performs a virtualactivity to predict the consequence of the tentative actions andthen the CCA adjusts the actions applied to the main vehicle

43Tolerance ofParkingAgent againstVariation inKinematicVehicle Model Parameters Vehicle parameters can varybecause of many reasons during the life cycle of the vehicleIn this subsection we verify that the proposed twin agentexhibits tolerance against variations in the kinematic pa-rameters of the vehicle A skilled human can drive a carunder uncertain knowledge of kinematicdynamic param-eters of the vehicle [10ndash12]

Figure 14presents the simulated turning-radius ofvehicles with different geometric parameters with (Llw 34238 36253 and 38266) under the assump-tion of the bicycle kinematic model of the vehicle shownin Figure 1 where L is the length of the vehicle and lwdenotes the distance between the centers of the front andrear wheelbase We applied identical steering controlinput to vehicles with different geometric parametersand the corresponding simulated parking trajectories arepresented in Figure 15 As expected different geometricparameters result in different turning radii and parkingtrajectories when an equivalent steering input is appliedas shown in Figures 14 and 15 (e geometric parameters

ndash2

ndash1

0

1

2

3

Y (m

)

2 4 6 8 100X (m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

2 4 6 80Time (s)

2 4 6 80Time (s)

0

ndash1

Velo

city

(ms

)

(b)

Figure 11 Simulated results of the proposed simple ANN agent without a collision prediction algorithm when SL 44m and RRP atposition (xRRP yRRP) (57 14) AB side of the vehicle collides with the border of the parking slot while the vehicle moves back and forth(ie collision case ③ in addition to collision case ②) (a) Simulated parking trajectory (b) Steering angle profile and velocity profile

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

1 2 3 4 5 6 70Time (s)

0

ndash1

Velo

city

(ms

)

1 2 3 4 5 6 70Time (s)

(b)

Figure 10 Simulated results of proposed simple ANN agent when SL 48m and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle collides with the vertex of the parking slot while the vehicle is moving backward (ie collision case②) (a) Simulated parkingtrajectory (b) Steering angle profile and velocity profile

10 Mathematical Problems in Engineering

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 11: Automatic Parking Controller with a Twin Artificial Neural ...

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3

Y (m

)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 2 4 6 8 10Time (s)

ndash1

0

Velo

city

(ms

)

0 2 4 6 8 10Time (s)

(b)

Figure 13 Simulated results of the proposed twin ANN agent when SL 44 and RRP at position (xRRP yRRP) (57 14) It is clear that case③ and ② collisions can be avoided (a) Simulated profile of parking trajectory (b) Steering angle profile and velocity profile

0

2

4

6

8

ndash5 0

Llw

5X (m)

10 15

Y (m

)

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 14 Simulated turning radius of vehicles with different geometric parameters with (Llw 34238 36253 and 38266) assumingbicycle kinematic models of the vehicle shown in Figure 1

2 4 6 8 100X (m)

ndash2

ndash1

0

1

2

3Y

(m)

(a)

ndash05

00

05

Stee

ring

angl

e (ra

d)

0 1 2 3 4 5 6 7Time (s)

ndash1

ndash2

0

1

Velo

city

(ms

)

0 1 2 3 4 5 6 7Time (s)

(b)

Figure 12 Simulated results of the proposed twin ANN agent when SL 48 and RRP at position (xRRP yRRP) (60 12) BC side front endof the vehicle does not collide with the vertex of the parking slot (a) Simulated profile of parking trajectory (b) Steering angle profile andvelocity profile

Mathematical Problems in Engineering 11

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 12: Automatic Parking Controller with a Twin Artificial Neural ...

of (Llw 36253) include the kinematic bicycle modelparameters used in dynamic optimization for trainingdataset generation

We performed more than 50000 simulations in differentenvironments and RRPs to verify the tolerance of the pro-posed parking agent(eANNmodel was trained by a datasetgenerated using the geometric parameters (Llw 36253) Inthis subsection we illustrate two typical cases one for parkingwith a single gear-shift and another formultiple maneuveringof gear-shifts for back-and-forth movements in a narrowparking space In the simulation depicted in Figures 16 and17 the kinematic parameters of the main vehicle and thevirtual vehicle in the cloned vehicle-in-the-loop are the same(e steering angle and velocity profiles are adjusted to reflectvariations in vehicle kinematic parameters in the loop (eANN was trained with the vehicle kinematic parameter (Llw 36253) therefore the vehicle model used to train theANN model is different from the vehicle model in the mainand the cloned loop (e simulation results demonstrate thatthe trained twin ANN agent can drive the main vehicle evenwith multiple back-and-forth movements in a confined spaceregardless of specific variations in the kinematic model (eproposed automatic parking agent can output adjusted ac-tions without retraining using revised model parameters toadapt the specific variations in kinematic parameters

44 Proposed Controller with a Twin Architecture UsingPreScan Simulator In this subsection we determinewhether the proposed parking controller works in a vehiclesimulator while adapting to changes in the vehicle model interms of kinematics and dynamics We simulated the pro-posed twin architecture using the PreScan driving simulatorin several parking environments (e PreScan drivingsimulator builds a virtual validation environment with re-alistic configurations using a vehicle dynamics model [28](e main vehicle in the twin architecture implemented inthe PreScan simulator includes the same kinematic modelparameters (Llw 36253) used for data generationHowever the primary vehicle model is the 4-wheel vehicledynamics model which closely resembles the real vehiclethan the simple kinematic bicycle models used for gener-ating training data (e dynamics model consists of thevehicle components of an engine transmission chassis and

gear-shift logic (e controllable steering wheel angle rangeof the vehicle is from minus 500deg to +500deg (e sign of a steeringwheel angle indicates the direction of the steering wheelwhich can be negative for clockwise and positive for counter-clockwise movements and the steering ratio of the vehicle isset to 15 1 In addition gear-shift logic is considered as inthe real vehicle when the direction of the vehicle must bechanged for multiple maneuvering (e gear-shift logicchanges from drive mode to reverse mode and vice versawith a 08 second delay (e logic holds the velocity at 0while the gear is changed Except for the kinematic pa-rameters other parameters of the dynamics model are re-ferred to the default values of Yaris vehicle model in PreScansimulator Additional details on the vehicle model thatPreScan provides can be found in [28]

A block diagram of an automatic parking system viaPreScan is presented in Figure 18 A software-in-the-loop(SIL) configuration is implemented with the main vehicle inthe PreScan simulator and the twin architecture controlleron a Caffe deep learning framework(e two separated partscommunicate vehicle reference inputs and vehicle currentstates via a UDP network PreScan sends the vehicles states(x(k) y(k) and Ψ(k)) (e parking agent with a twincontroller infers the adjusted vehicle actions (1113954v(k) and 1113954δ(k))from the vehicle states By considering the velocity from theagent the longitudinal low-level controller in PreScan yieldsthe vehiclersquos throttlebrake inputs

We performed 100 simulations under different envi-ronments and RRPs to verify the tolerance of the proposedparking agent We illustrate two selected typical cases onefor parking with two gear-shifts and another for multiplemaneuvering of gear-shifts for back-and-forth movementsin a narrow parking space Figure 19 illustrates the sim-ulated results of the proposed twin ANN agent via thePreScan simulator in the case of SL 48 and RRP at po-sition (xRRP yRRP) (60 12) which are the same initialconditions of the results shown in Figures 10 and 12 whilethe proposed controller operates with the kinematics ve-hicle model Figure 20 presents the result of the trajectoriesin the case of SL 44m and RRP at position of (xRRPyRRP) (57 14) which are the same initial conditions ofthe results shown in Figures 11 and 13 In the simulationpresented in Figures 19 and 20 the kinematic parameters of

(s)

(rad

)

6420

0

0 1 2 3X (m)

4 5 6

Y (m

) 1 ndash050000050

Llw = 38266Llw = 36252

Llw = 34238PreScan

Figure 15 Simulated trajectories of vehicles with different geometric parameters as a result of equivalent steering control input shown in thefigure L is the length of the vehicle and lw is a distance between the centers of the front and rear wheelbase

12 Mathematical Problems in Engineering

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 13: Automatic Parking Controller with a Twin Artificial Neural ...

both the main vehicle and the virtual vehicle in the clonedloop are the same

(e velocity profiles depicted in Figures 19(b) and 20(b)present the desired velocity indicated by a solid line and thecurrent velocity of the vehicle indicated by a dashed line Aswe can observe there is a delay in car motion Changes ingear-shift presented in Figure 20 increase from three times to

five times compared to the results in Figure 13 Neverthelessthe simulation results demonstrate that the trained twinANN agent can park the vehicle even with multiple back-and-forth movements in a very tiny space regardless ofvariations of the vehicle model and longitudinal control (esteering angle and velocity profiles are adjusted to reflectvariations in vehicle parameters (e proposed automatic

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)86420

0

1

ndash1

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

(b)

Figure 17 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 46 andRRP at position (xRRP yRRP) (58 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

0 1 2 3 4X (m)

Y (m

)

5 6 7ndash20ndash15ndash10ndash05

0005101520

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

(a)

Time (s)

Velo

city

(ms

)

Llw = 38266 (m)Llw = 36252 (m)Llw = 34238 (m)

0 1 2 3 4 5ndash20

ndash15

ndash10

ndash05

00

Time (s)0 1 2 3 4 5

ndash05

00

05

Stee

ring

angl

e (ra

d)(b)

Figure 16 Simulated results of the proposed twin architecture with different kinematic model parameters of a vehicle when SL 54 andRRP at position (xRRP yRRP) (66 14) (a) Simulated profile of parking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 13

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 14: Automatic Parking Controller with a Twin Artificial Neural ...

parking agent can output adjusted actions without retrainingusing revised model parameters in adapting to variations inthe vehicle models

5 Discussions

(rough simulations we confirmed that the proposed twinagent with a trained ANN exhibits automatic parking withhuman-like parking skills We further demonstrated therobustness of the proposed twin agent with respect tovariations in kinematic parameters and environmentalchanges in the parking slot length and RRP (e time takento complete the automatic parking process indicates ameasure of the cost function for determining the ease withwhich the parking task can be achieved As we mentioned inthe previous section the ANN was trained with a datasetgenerated by the vehicle parameters (Llw 36252) We

simulated the automatic parking task for different vehiclekinematic parameters and environments as shown inTable 3 For Case 2 and Case 3 we set various kinematicparameters for the main and virtual vehicles of the twinagent using the trained vehicle parameters We set differentkinematic parameters for the main and virtual vehicles inCase 4 For cases 1ndash4 we set the same initial heading angle ofthe vehicle as 0deg while altering the kinematic parameters Incases 5 and 6 we set the same kinematic parameters but weset different initial heading angles that are not trained for theANN model

We selected three different sizes of parking slot lengths atiny space (44m) for multiple gear-shifts a middle space(49m) for mostly one or two gear-shifts and a wide space(54m) for easy automatic parking without multiple gear-shifts For simulations in each case we select 10000 startingpoints that are not included in the RRP of the training dataset

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)86420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)86420

0

1

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 19 Simulated results via the PreScan simulator when SL 48 and RRP at position (xRRP yRRP) (60 12) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Vehicledynamic model

Driver controller(throttle

brake)

Throttle

Brake

Steering

VelocityCurrent velocity

Vehicle states

PreScan environment

Gear logics

Gear-shift

Desiredvelocity

MainANN

Virtualvehicle

Clone of the ANN

CollisionChecking andAdjustment

(CCA)of actions

Parking agent with twin controller

Actions

Virtual vehicle states

Virtual vehicle actions

Adjusted actions

12

Figure 18 Block diagram of proposed twin architecture of parking controller via the PreScan simulator

14 Mathematical Problems in Engineering

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 15: Automatic Parking Controller with a Twin Artificial Neural ...

Table 3 presents a summary of the simulated success rate andnumber of failed trials of automatic parking depending onthe parking environments and vehicle parameters of the mainand virtual vehicle We defined the fail condition if the mainvehicle fails to reach the end position that satisfies the re-quirement defined in ISO 16787 within 21 s

Figure 21 illustrates the simulated contour plots for thetime taken to complete automatic parking with respect to thestarting positions and slot length of parking lots (econtour plots include a cost function of parking as a functionof the environment and RRP when the agent selects an RRPthe contour plot provides a good guideline for choosing thestarting point of automatic parking

In the simulations the time taken to complete automaticparking ranges from 5 seconds to 21 seconds We chose areference time of 21 seconds to determine whether a parkingtask is successful If the parking task was not completedwithin 21 seconds we consider it a fail case When the ve-hicle parameters of the training data are equivalent to themain vehicle and virtual vehicle the simulated success rate is

994 as shown in Case 1 (e fails occurred among 10000trials only at the near upper boundary and the lower right-end boundary of the tiny spaces when SL 44m as shownin Figure 21(a) For a slot length larger than 49m most trialswere successfully completed

In Case 2 the main vehicle length is shorter than that ofthe trained vehicle Most of the trials succeeded except for acertain boundary of the region when the slot length was44m even though the conditions of vehicle parameters werenot trained

In Case 3 the proposed parking agent failed to completethe maneuver in almost 25 of the trials when the parkingslot length was 44m(emathematical limitation of the slotlength should be larger than the diagonal distance of thevehicle When the slot length was 44m the slot length of thelot was only 67 longer than the diagonal length of themainvehicle (which was 41m hence L 38 and width (2 times b)

16m) Even for a skilled human driver it is very difficult topark when the slot length is only 30 cm longer than thevehiclersquos diagonal length Nevertheless with limited tiny

Table 3 Success rate of automatic parking depending on test conditions

Test condition Kinematic parameters ofmainvirtual vehicle (Llw)

Initial heading angle (deg) No of test No ofsuccesses No of failures Success

rate ()Case 1 (36252)(36252) plusmn0 10000 9941 59 994Case 2 (34238)(34238) plusmn0 10000 9901 99 990Case 3 (38266)(38266) plusmn0 10000 9546 454 955Case 4 (34238)(36252) plusmn0 10000 9978 22 998Case 5 (36252)(36252) +3 10000 9799 201 980Case 6 (36252)(36252) +5 10000 9436 574 944

0 1 2 3 4X (m)

Y (m

)

5 6 7 8ndash1

ndash2

ndash1

0

1

2

3

PreScanKinematics bicycle model

(a)

Time (s)14121086420

ndash05

00

05

Stee

ring

angl

e (ra

d)

PreScanKinematics

Time (s)14121086420

0

ndash1

ndash2

Velo

city

(ms

)

Desired velocity (PreScan)Current velocity (PreScan)Velocity (kinematics)

(b)

Figure 20 Simulated results via the PreScan simulator when SL 44 and RRP at position (xRRP yRRP) (57 14) (a) Simulated profile ofparking trajectories (b) Steering angle profile and velocity profile

Mathematical Problems in Engineering 15

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 16: Automatic Parking Controller with a Twin Artificial Neural ...

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

1058 60 62 64

X (m)

Y (m

)

66 68

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(a)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)SL = 54 m

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(b)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(c)

58 60 62 64 66 68

SL = 44 m18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

SL = 49 m18

16

14

12

10

X (m)

Y (m

)

SL = 54 m18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g(d)

18

16

14

12

1052 54 56 58

X (m)

Y (m

)

60 62 64

18

16

14

12

1057 59 61 63

X (m)

Y (m

)

65 67 69

18

16

14

12

1062 64 66 68

X (m)

Y (m

)

70 72 74

211917151311975

Tim

e of p

arki

ngm

aneu

verin

g

(e)

Figure 21 Contour plots for time taken to complete automatic parking with respect to RRP and slot length of parking lots (a) Testcondition Case 1 (mainvirtual vehicle) (36252)(36252) Ψinit 0 (b) Test condition Case 2 (mainvirtual vehicle) (34252)(34252) Ψinit 0 (c) Test condition Case 3 (mainvirtual vehicle) (38252)(38252) Ψinit 0 (d) Test condition Case 4 (mainvirtualvehicle) (34252)(36252) Ψinit 0 (e) Test condition Case 6 (mainvirtual vehicle) (36252)(36252) Ψinit 5

16 Mathematical Problems in Engineering

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 17: Automatic Parking Controller with a Twin Artificial Neural ...

parking slot length the proposed parking agent succeeded in75 of trials under this harsh condition

In Case 4 we set different kinematic parameters for themain and virtual vehicle (e model parameters of thevehicle may vary with environmental changes such as tirepressure weight and distribution of mounted load andaging of the vehicle which causes uncertainty in the ki-nematic and dynamic models even for the same individualvehicle (erefore we exaggerate by changing the param-eters of the main vehicle to verify the tolerance Most of thetrials succeeded except for a certain boundary of the regionwhen the slot length was 44m even though the conditionsof vehicle parameters were not trained (e success rate iscomparable to that in Case 1 and even higher success ratewhen only the main vehicle is smaller while the virtualvehicle is equivalent to the trained vehicle model

In Case 5 and Case 6 the fails occurred in almost 20 ofthe trials when the parking slot length is 44m Most of failuretrials occurred at a certain boundary of the region If wechoose a starting point around the core area and not in theperiphery of the RRP region shown in the contour plots asuccess rate of 100 can be achieved for all simulated cases

Simulation results of variations in kinematic parametersprovide substantial evidence that the proposed twin agentlearns parking skills in a manner such that it can successfullyexecute the parking maneuver of a car (e proposedtechnique can handle inexact and imprecise problem do-mains and has been demonstrated to be useful in solving theparking problem under cases of uncertain knowledge of avehiclersquos kinematics or dynamics By applying ANN theagent learns the control laws of the vehicle through a dataset-based pseudo-experience and in particular by cooperatingwith the virtual agent the trained main agent provides thecorrect actions for each specific situation (e proposedANN-based controller may substantially simplify the de-velopment process in fact it uses a training dataset gen-erated by simultaneous dynamic optimization which is avery well-known and low-cost method of generating trainingdatasets

An artificial intelligence system may present a seriousproblem in the inference stage if it encounters unexper-ienced situations during operation Simulated experimentsof both single and twin agents have shown that an automaticparking agent comprising a twin architecture performshuman-like parking maneuvers by predicting the conse-quence of tentative actions and adjusting the action appliedto the vehicle if a collision predicted Predicting a conse-quence of tentative actions enables the automatic parkingagent to cope with the potential risk of collision underunexperienced situations without increased computationalburden or design complexity

Because the proposed work was verified in simulationenvironment some issues have remained for future work inorder to implement proposed automatic parking controllerto real-world scenarios with real vehicles In the simulationenvironment simulator provides precise or even exactvalues of the vehiclersquos current pose However it is hard to geta very precise pose of the vehicle in real-world applicationIn the future work we must consider in-vehicle sensors for

environmental perception and detecting potential collisionswith errors imprecisions and noise Moreover we need toconsider a reactive architecture or a hybrid control archi-tecture [16] based on real-world sensors to avoid collisions

6 Conclusion

We proposed an automatic parking agent to implementhuman-like parking skills using ANNs that comprise a mainagent and its cloned agent By learning the relationshipsbetween the current vehicle states and the correspondingactions from the generated dataset through simultaneousdynamic optimization the proposed approach yields a directsteering angle and velocity and executes automatic parkingin a tiny space with multiple maneuverings (e simulationresults demonstrate that the proposed twin agent for au-tomatic parking emulates the attributes of a human driverincluding the inherence concept of a vehicle model andpreview utilization (e main agent decides the potentialactions and the cloned agent simulates and pre-evaluates theconsequences of the potential actions that produce resultsFollowing this the Collision Checking and Adjustment(CCA) system adjusts the actions applied to the main ve-hicle We validated that the trained twin ANN agent candrive the main vehicle even with multiple back-and-forthmovements in confined spaces regardless of variations inthe kinematic model through simulations (e proposedautomatic parking agent can output adjusted actionswithout retraining in adapting to variations in kinematicparameters (e agent can complete parking without re-training under several conditions of plusmn5 increments in thevehiclersquos overall length and wheel-base length and 5deg in-crements of the initial heading angle of the vehicle Ourproposed parking agent operates like a human driver in amanner that is not exactly planned and not exactly modelledfor the kinematics of a subject vehicle that is vehicle modelfluctuations are considered by applying the trained model toother vehicles with different kinematic parameters

We only verified the proposed work in simulation en-vironments there are many remaining issues in a futurework to test and implement the proposed approach in real-world scenarios with real vehicles

Data Availability

(e data used to support the findings of this study areavailable from the corresponding author upon request

Conflicts of Interest

(e authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

(is research was supported by the MSIT (Ministry ofScience and ICT) Korea under the ldquoICT ConsilienceCreative Programrdquo (IITP-2019-2017-0-01015) supervised bythe IITP (Institute for Information and communicationTechnology Planning and Evaluation)

Mathematical Problems in Engineering 17

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 18: Automatic Parking Controller with a Twin Artificial Neural ...

Supplementary Materials

(e supplementary materials include generated datasets ofthis work Video of automatic parking in a tiny space withback-and-forth shuffling using PreScan simulator is avail-able at httpsyoutubeUI6csjG5qdQ (SupplementaryMaterials)

References

[1] F Gomez-Bravo F Cuesta A Ollero and A VigurialdquoContinuous curvature path generation based on -splinecurves for parking manoeuvresrdquo Robotics and AutonomousSystems vol 56 no 4 pp 360ndash372 2008

[2] J Moon I Bae J G Cha and S Kim ldquoA trajectory planningmethod based on forward path generation and backwardtracking algorithm for Automatic Parking Systemsrdquo in Pro-ceedings of the 17th International IEEE Conference on In-telligent Transportation Systems (ITSC) 2014 pp 719ndash724Qingdao China October 2014

[3] H Vorobieva S Glaser N Minoiu-Enache and S MammarldquoAutomatic parallel parking in tiny spots path planning andcontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 1 pp 396ndash410 2015

[4] X Du and K K Tan ldquoAutonomous reverse parking systembased on robust path generation and improved sliding modecontrolrdquo IEEE Transactions on Intelligent TransportationSystems vol 16 no 3 pp 1225ndash1237 2015

[5] P Zips M Bock and A Kugi ldquoOptimisation based pathplanning for car parking in narrow environmentsrdquo Roboticsand Autonomous Systems vol 79 pp 1ndash11 2015

[6] B Li and Z Shao ldquoSimultaneous dynamic optimization atrajectory planning method for nonholonomic car-like ro-botsrdquo Advances in Engineering Software vol 87 pp 30ndash422015

[7] B Li and Z Shao ldquoA unified motion planning method forparking an autonomous vehicle in the presence of irregularlyplaced obstaclesrdquo Knowledge-Based Systems vol 86 pp 11ndash20 2015

[8] B Li K Wang and Z Shao ldquoTime-optimal maneuverplanning in automatic parallel parking using a simultaneousdynamic optimization approachrdquo IEEE Transactions on In-telligent Transportation Systems vol 17 no 11 pp 3263ndash3274 2016

[9] J Moon I Bae and S Kim ldquoReal-Time near-optimal path andmaneuver planning in automatic parking using a simultaneousdynamic optimization approachrdquo in Proceedings of the IEEEIntelligent Vehicles Symposium pp 193ndash196 Los Angeles CAUSA June 2017

[10] D McRuer ldquoHuman dynamics in man-machine systemsrdquoAutomatica vol 16 no 3 pp 237ndash253 1980

[11] C C Macadam ldquoUnderstanding and modeling the humandriverrdquo Vehicle System Dynamics vol 40 no 1ndash3pp 101ndash134 2003

[12] A V Phatak and G A Bekey ldquoModel of the adaptive behaviorof the human operator in response to a sudden change in thecontrol situationrdquo IEEE Transactions on Man Machine Sys-tems vol 10 no 3 pp 72ndash80 1969

[13] A Y Ungoren and H Peng ldquoAn adaptive lateral previewdriver modelrdquo Vehicle System Dynamics vol 43 no 4pp 245ndash259 2005

[14] W Daxwanger and G K Schmidt ldquoSkill-based visual parkingcontrol using neural and fuzzy networksrdquo in Proceedings ofthe 1995 IEEE International Conference on Systems Man and

Cybernetics Intelligent Systems for the 21st Century vol 2no 1 pp 1659ndash1664 Vancouver BC Canada October 1995

[15] W A Daxwanger and G Schmidt ldquoNeural and fuzzy ap-proaches to vision-based parking controlrdquo Control Engi-neering Practice vol 4 no 11 pp 1607ndash1614 1996

[16] M Heinen F S Osorio F J Heinen and C KelberldquoSEVA3D Using artificial neural networks to autonomousvehicle parking controlrdquo in Proceedings of the 2006 IEEEInternational Joint Conference on Neural Network pp 4704ndash4711 Vancouver BC Canada July 2006

[17] R Li W Wang Y Chen S Srinivasan and V N Krovi ldquoAnend-to-end fully automatic bay parking approach for autono-mous vehiclesrdquo in Proceedings of the ASME 2018 DynamicSystems and Control Conference Volume 2 Control and Opti-mization of Connected and Automated Ground Vehicles Dy-namic Systems and Control Education Dynamics and Control ofRenewable Energy Systems Energy Harvesting p V002T15A004Atlanta Georgia USA SeptemberndashOctober 2018

[18] W Liu Z Li L Li and F Y Wang ldquoParking like a human adirect trajectory planning solutionrdquo IEEE Transactions onIntelligent Transportation Systems vol 18 no 12 pp 3388ndash3397 2017

[19] A Wachter and L T Biegler ldquoLine search filter methods fornonlinear programming motivation and global conver-gencerdquo SIAM Journal on Optimization vol 16 no 1 pp 1ndash312005

[20] A Wachter and L T Biegler ldquoOn the implementation of aninterior-point filter line-search algorithm for large-scalenonlinear programmingrdquo Mathematical Programmingvol 106 no 1 pp 25ndash57 2006

[21] L T Biegler ldquoNonlinear programming concepts algorithmsand applications to chemical processesrdquo Siam vol 40 no 62010

[22] R Lougee-Heimer ldquo(e CommonOptimization INterface forOperations Research promoting open-source software in theoperations research communityrdquo IBM Journal of Researchand Development vol 47 no 1 pp 57ndash66 2003

[23] K Kondak and G Hommel ldquoComputation of time optimalmovements for autonomous parking of non holonomicmobile platformsrdquo in Proceedings of the 2001 ICRA IEEEInternational Conference on Robotics and Automation (CatNo01CH37164) vol 3 pp 2698ndash2703 Seoul South KoreaMay 2001

[24] ISO 167872017 Intelligent transport systemsmdashassistedParking System (APS)mdashperformance requirements and testprocedures httpswwwisoorgstandard73768html 2019

[25] D Hunter H Yu M S Pukish III J Kolbusz andB M Wilamowski ldquoSelection of proper neural network sizesand architecturesmdasha comparative studyrdquo IEEE Transactionson Industrial Informatics vol 8 no 2 pp 228ndash240 2012

[26] K G Sheela and S N Deepa ldquoReview on methods to fixnumber of hidden neurons in neural networksrdquo Mathe-matical Problems in Engineering vol 2013 Article ID 42574011 pages 2013

[27] Y Jia ldquoCaffe convolutional architecture for fast featureembeddingrdquo 2014 httpsarxivorgabs14085093

[28] Tass International PreScan Simulation of ADAS and ActiveSafety Tass International Helmond Netherlands 2018

18 Mathematical Problems in Engineering

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 19: Automatic Parking Controller with a Twin Artificial Neural ...

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom