Mathematical Problems in Engineering

Volume 2010 (2010), Article ID 172878, 29 pages

http://dx.doi.org/10.1155/2010/172878

## Driver's Behavior Modeling Using Fuzzy Logic

Faculty of Electrical and Computer Engineering, University of Tabriz, 51666-15813 Tabriz, Iran

Received 25 May 2010; Accepted 9 July 2010

Academic Editor: Alois Steindl

Copyright © 2010 Sehraneh Ghaemi et al. This 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.

#### Abstract

In this study, we propose a hierarchical fuzzy system for human in a driver-vehicle-environment system to model takeover by different drivers. The driver's behavior is affected by the environment. The climate, road and car conditions are included in fuzzy modeling. For obtaining fuzzy rules, experts' opinions are benefited by means of questionnaires on effects of parameters such as climate, road and car conditions on driving capabilities. Also the precision, age and driving individuality are used to model the driver's behavior. Three different positions are considered for driving and decision making. A fuzzy model called *Model I* is presented for modeling the change of steering angle and speed control by considering time distances with existing cars in these three positions, the information about the speed and direction of car, and the steering angle of car. Also we obtained two other models based on fuzzy rules called *Model II* and *Model III* by using Sugeno fuzzy inference. *Model II* and *Model III* have less linguistic terms than *Model I* for the steering angle and direction of car. The results of three models are compared for a driver who drives based on driving laws.

#### 1. Introduction

In recent years, by using new control ideas, safety in driving has been improved. MacAdam developed an optimal preview control algorithm; however, this algorithm could only be applied to single-input single-output systems. Fenton applied Linear Quadratic algorithm to design a controller for steering. Ackermann and Sienel used parameter space robust control to design the automatic steering controller. These models did not take the driver's preview behavior into consideration. Lee developed a discrete time preview control algorithm for four-wheel steering passenger vehicles and found that the control accuracy was improved substantially by taking the preview behavior into account. In [1] Yoshida and Kamada proposed a fuzzy logic lateral controller. Hessburg and Tomizuka [2] developed a fuzzy logic controller for vehicle lateral guidance which consisted of three sub-controllers: preview, feedback, and gain scheduling. Cai et al. investigated the influence of driver emotion on performance through platoon driving simulated with multiple simulators [3]. They induced two kinds of emotion states (anger and excitation) through realistic driver-driver interaction by using networked driving simulators. Drivers’ psychophysiological parameters changes were the indicators of emotions. In the anger and excitation states, drivers showed poorer lane control capability. In [3] the author investigated emotional behavior (anger, neutral, and excitation) of drivers by collecting driving performance data. The results demonstrated the feasibility and efficiency of using multiple networked driving simulators to study driver emotional behavior, for example, road rage.

Data describing characteristics of driving environments are not generally available to drivers in precise numerical format. Instead drivers perceive and describe the environment in imprecise terms such as “high speed” or “enough space to change lanes”. An important outcome of imprecision is the possibility of assigning more than one symbolic value at the same time to the same variable with different degrees of truth in each of these values. Because of fuzzy logic’s ability to handle these cases, it has been successfully used in modeling human behavior in general and driver behavior in particular (Seif El-Nasr and Skubic, 1998). The fuzzy logic has proven to be a very effective tool for handling imprecision and uncertainty, which are both very important characteristics of driving environments. This makes fuzzy logic a powerful candidate tool in most traffic engineering studies [4].

In many fields of science, including biology, psychology, and so on, human observers have provided linguistic descriptions and explanations of various systems. However, to study these phenomena in a systematic manner, there is a need to construct a suitable mathematical model, a process that usually requires subtle mathematical understanding. Fuzzy modeling is a simple, direct, and natural approach for transforming the linguistic description to a mathematical model [5].

In this study, we use new parameters to identify uniqueness of driving maneuver of each driver, the precision, age, and driving individuality. In modeling, the decision making process is based on three positions, one position in driving lane and two positions in opposite lane. By considering three positions, the speed, direction of car, and the steering angle, a fuzzy model (*Model I*) is presented for steering angle and speed control. Two models (*Model II, Model III*) are obtained based on fuzzy rules by using Sugeno fuzzy inference. The driver behavior is included in the model by changing the membership function of input and output variables of fuzzy rules. These membership functions are varied by applying the coefficients which are obtained by the hierarchical fuzzy system. We used two levels control for modeling. The low-level control system is responsible for modeling the steering angle and the speed variations enforced by the driver. The high-level control system is used for the decision-making process of the driver. For this purpose, first the fuzzified low level control is illustrated in Section 2. The high level control is presented in Section 3. The proposed models are illustrated in Section 4 and the simulation results are presented in Section 5. Finally Section 6 describes conclusions.

#### 2. Low Level Control

In order to implement the low-level control model, a simple car’s model is required. The schematic of a four-wheel-drive (4WD) vehicle is shown in Figure 1 [6].

The car states include the Cartesian position centered mid-way between the rear wheels and the car's orientation denoted by (2.1), where is the steering angle, is the car’s speed, and is the angle of the car with respect to the *X *axis and is the distance between center of rear and front wheels.
The driver controls *V* and . In order to model the complete low-level control procedure, we have assumed that apart from the information from the environment that the driver perceives, other information such as age and driver's individuality are influential in the driver’s control procedure. This can be formulated as
where determine car’s state, *Environment* is the information of the condition of *Climate*, *Road*, and *Car*, and *Driver *is the individual driver influence.

##### 2.1. Environmental Condition

The *Climate* condition is the information of luminosity, range of view, rain, temperature, and humidity. The *Road *condition is about the traffic surrounding the driver, road safety, quality of road materials, moving obstacle, and having enough signs, and finally the *Car* condition is the information of car's ergonomic, safety equipments performance, and agent of distraction in car. The information is considered as the input variables of fuzzy system (Figure 2).

###### 2.1.1. Fuzzy Rule Base and Membership Functions

Questionnaires have been provided to obtain the fuzzy rules, where the effects of climate, road, and car condition in driving have been questioned separately. We chose different expert drivers (200 persons) in age, graduating diploma, precision, personality, and different vision abilities. These drivers drive with different types of cars. Each expert driver answered each question in three manners, percent value, graphic representation, and linguistic term (Table 1).

In Table 1, the linguistic terms *very high, high, medium, low*, and* very low* are used and they are corresponding to 100, 80, 60, 40, and 20 (), respectively. The membership functions of linguistic terms for each parameter are supposed to be bell shaped as follows:
where is the member of universe, *c *is the median, and *d* represents the shape factor. The median, *c,* is obtained based on the number of linguistic terms which are optimized by PSO algorithm (Section 2.1.2). By using collected data, the shape factor for each expert driver (representing his/her precision) is calculated as follows:
where is the shape factor of th driver for the th parameter that is used for calculating *d*. For example, in Table 1 we have

and By using (2.4), the shape factor for the represented answer is 13.33.

For *n* expert drivers, we have
So is defined as
where is the range of universes for th parameter, is the number of linguistic terms for th parameter (obtained from PSO algorithm), and is the range of reference universe for th parameter. The average of *n* values of the shape factors (obtained from (2.4)) is considered as . For all of parameters, is fixed to The obtained information of questionnaires is considered as reference.

The importance of the parameters of climate, road, and car condition varies for different people. So we use a pairwise comparison table for determining the weights of different parameters. Table 2 shows a part of pair wise comparison table.

Table 2 shows that parameter A is more important than parameters B and C. But parameter D is more important than parameter A. The proposed method for determining weights of parameters in fuzzy rules is as follows.

First arrange the parameters. First parameter is the least important. Then is assigned to th parameter such that , where *i* is the priority index of parameter and *w* is the priority weight which is set to 2 in this study. When *k* parameters have equal importance, for all of *k* parameters. After that, we form the priority table () as follows.If th parameter (in row ) is more important than the th parameter (in column ), then . If the th parameter (in column ) is more important than the th one (in row ), then . For diagonal elements, .

Finally the weight of each parameter, , is obtained as follow:
where *m* represents the number of parameters. The average of the obtained weights of *n* drivers for each parameter is considered as weight of the parameter in fuzzy rules.
Table 3 shows pair wise comparison of climate parameters for one of questionnaires.

The obtained results of Table 3 show that the priority list of climate parameters is rain, temperature, and humidity, luminosity, and range of view, respectively.

The elements of priority table are then calculated as represented by Table 4.

So 6.9944 and weight of each parameter is obtained by using (2.7) as shown in Table 5.

The average of obtained weights for each parameter is used to generate fuzzy rules in Section 2.1.2. The similar tables have been used for road condition and car condition in questionnaires.

The general form of fuzzy rules for climate condition is as follows.*If* Range of View is … *and* Luminosity is … *and Rain* is …* and* Temperature is … *and* Humidity is …, *then* climate condition is …

For road condition: * if* Traffic is … *and* Road quality is … *and * Sign is … *and* Moving obstacle is … *and * Safety is …, *then* Road condition is …;

Finally for car condition, we have that:* if* Safety equipment operation is … *and * Ergonomic is … *and* Distract agent is …, *then* Car condition is …

###### 2.1.2. Particle Swarm Optimization

Particle Swarm Optimization (PSO) is an optimization algorithm which uses properties of a swarm to find an optimal solution [7]. In this work, the swarm is represented by 100 individuals (or *particles*) whose values change at each iteration. The performance of each particle is measured at each position using a “fitness” function. This function increases as the optimality of the solution increases; in this way, a particle with a higher fitness is considered to fit better than the one with a lower fitness. Also, a record of the best position (*pbest*) for each particle, as well as the best overall position (*gbest*) for all particles, is kept in memory. The entire swarm then searches around the *gbest* solution and each of the *pbest* solutions, all the while trying to find even better solutions.

* Particle Representation*

In order to optimize number of fuzzy rules, the number of linguistic terms of each parameter of climate, road, and car condition is optimized using PSO. The number of linguistic terms for each input parameter is randomly selected 3, 5, or 7, so maximum number of fuzzy rules will be is the number of input variables). The number of linguistic terms of output fuzzy variable is set to 5.

To optimize the number of fuzzy rules and linguistic terms, the following particle is considered for PSO:
In the presented particle, the first part *par_set* is related to number of linguistic terms and is defined as follows:

where *m* is the number of input variables and shows the number of linguistic terms of th input variable. The number of linguistic terms of output variable is always equal to 5. So the *par_set *has *m* elements.

The second part of particle *par_rules* is
Since the number of linguistic terms of output variable is set to 5, then0, 1, 2, 3, 4, 5 Suppose linguistic terms of output variable are then the allele value is 0 when the corresponding rule has not been selected as fuzzy rules, 1 when output variable is *very bad*, 2 when it is *bad*, and finally 5 when output variable is *very good*. By considering the maximum number of fuzzy rules (), in each *par_rule*, when the number of fuzzy rules is less than , other elements are considered to be zero.

A simple example is considered which has 2 input variables. Both of variables have 3 linguistic terms (named Lt1, Lt2, Lt3). So the maximum of fuzzy rules is nine.

All fuzzy rules are as follows.

Rule: *If* input_{1 } is Lt_{ 1} input_{2 } is Lt_{ 1}, output is *O _{R1}*.

Rule: *If* input_{1 } is Lt_{ 1} input_{2 } is Lt_{ 2}, output is *O _{R2}*.

Rule: *If* input_{1 } is Lt_{ 1} input_{2 } is Lt_{ 3}, output is *O _{R3}. *

Rule: *If* input_{1 } is Lt_{ 2} input_{2 } is Lt_{ 1}, output is *O _{R4}. *

Rule: *If* input_{1 } is Lt_{ 2} input_{2 } is Lt_{ 2}, output is *O _{R5}. *

Rule: *If* input_{1 } is Lt_{ 2} input_{2 } is Lt_{ 3}, output is *O _{R6}. *

Rule: *If* input_{1 } is Lt_{ 3} input_{2 } is Lt_{ 1}, output is *O _{R7}*.

Rule: *If* input_{1 } is Lt_{ 3} input_{2 } is Lt_{ 2}, output is *O _{R8}*.

Rule: *If* input_{1 } is Lt_{ 3} input_{2 } is Lt_{ 3}, output is *O _{R9}. *

The optimized *par_rules* are obtained by PSO algorithm as follows:
where first nine values are related to fuzzy rules. By considering the optimized *par_rules*, we have five rules: Rule Rule Rule Rule and Rule

* The Fitness Function*

In the fitness function, we need to use some valid fuzzy rules. In order to generate valid fuzzy rules, we select the worse and the best state (verbal value) of each input variable. The linguistic terms of them are *very bad* and *very good*, respectively. For the middle state (*medium*), value of 0.5 is assigned. If the input variable is defined by 5 linguistic terms, the state between the worse and middle state (*bad*) is set to 0.25 and the state between the best and middle (*good*) is set to 0.75. Also the center of gravity defuzzifier is applied as follows:
where *z _{i} and w_{i}* are the value and weight (Section 2.1.1, (2.8)) of input variable, respectively. All of the rules where gets one of values 0, 0.25, 0.5, 0.75, and 1, corresponding to linguistic terms of input variables, are considered as valid rules.

For example if linguistic terms of traffic, road quality, sign, moving obstacle, and safety are considered to be medium, then values of all of them is 0.5. Then by considering appropriate weight for each input variable (Section 2.1.1, (2.8), the obtained results of 200 drivers), will be obtained as follows:
The obtained value is corresponding to *medium* linguistic term for . By this way, the following valid rule is obtained.

* Rule: If* Traffic is medium *and* Road quality is medium *and* Sign is medium *and* Moving obstacle is medium *and* Safety is medium, *then* Road condition is medium.

Finally the fitness function used for the optimization of the membership functions is defined by where is the number of rules, is its weighting factor ( is set to 0.01), is the number of input data set which have same output for reference fuzzy rules and the rules generated by PSO, and is its weighting factor ( is set to 1) [8].

##### 2.2. Driver’s Behavior

The personality (individuality) of each person is very important in the task performance, because it affects on driver’s decisions and acts. We consider drivers personality into three groups, risky person, normal person, and attentive person. Also, people have different reactions in different ages. So we include age of driver in modeling of driver’s behavior. In addition, the precision of each person affects the calculation of distance. So we include it by considering graduating diploma and the measure of necessary precision in his work (Fuzzy system *I*). Figure 3 shows the hierarchical fuzzy system which models driver behavior in decision making. For obtaining fuzzy rules in the hierarchical fuzzy system, we use the applied method to generating valid rules for calculating fitness function in PSO algorithm.

The general form of fuzzy rule for Fuzzy system *I* is as follows:*if* Graduating diploma is … *and* Precision in work is …, *then* Precision is …

For Fuzzy system *II*, * if* Environmental condition is … *and* Precision is … *and * Age is … *and* Personality is …, *then* Steering coefficient is …*and* Speed coefficient is …*and* Time distance coefficient is …

By applying the obtained coefficients from proposed hierarchical fuzzy system in the membership function universes of the speed change and steering angle change also the ideal low and high speed for each person and calculating time distance with other cars (Section 4), we can easily model the different behavior under take over conditions.

#### 3. High Level Control

##### 3.1. Structure of Road and Existence Cars

Two-lane road is considered as the movement trajectory of cars. In the simulation, four cars are considered (Figure 4). The A car is the car which we intend to control it by fuzzy rules; it is called *Controlled car*. The B car is the back car which intends to pass *Controlled car* and it is called BSDOL. The C car is the front car which moves in opposite lane. If C car moves in the same direction as *Controlled car,* then it is called FSDOL and if the direction of movement is in opposite direction, then it is called FODOL. The D car is the front car which moves in the same lane of *Controlled car*. If D car moves in the same direction as controlled car, then it is called FSDSL and if it is in opposite direction then it is called FODSL.

##### 3.2. Effective Cars in the Decision Making of Driver

When a person drives a car on the road, movements of other cars affect his/her decision making. For example, FODOL is more important than FSDOL car. When driver decides to pass FSDSL car, location of BSDOL and FODOL is very important. The three important cars in decision making of driver are shown in Figure 5.

##### 3.3. Decision-Making Process

###### 3.3.1. Road Partitions in Decision Making of Driver

Drivers drive in different positions of road. When a driver intends to pass the leading car, he/she moves toward the middle of road while in low speed and dangerous conditions, the car moves toward the shoulder of road. So in decision making, we divide the road to four divisions: *Left lane, Middle lane, Right lane,* and *Shoulder of road lane *as shown in Figure 6 and summarized in Table 6. Among four decision lanes, *Middle lane* and *Shoulder of lane* are the transient lanes. A driver is driving in the right lane and only when he/she is passing the leading car, he/she drives in the left lane.

In Table 6, is start position of road, is end position of road, is middle of road (Figure 6), *W_car* is the width of car, and is position of *Controlled car*.

###### 3.3.2. Fuzzy Rule Base for Decision Making of Driver

The decision-making process is categorized into four scenarios.

*(1) Right lane** Staying in the same lane and continuing the path* No car is in front. The car continues its path. A car is in front and the time distance with it is low, the driver starts to make a decision based on his/her desired speed, safety priorities but FODOL car is near or there is BSDOL car, then the driver decreases the car’s speed and continues the path. *Going to the shoulder of road*

A car is in front and the time distance with it is very low; but FODOL car is near and BSDOL car is near. So the takeover from the *left lane* is impossible. In order to avoid collision, the driver must move the car to the shoulder of road.*Going to Middle lane to passing*

When the driver decides to change lane and overtake, he/she moves the car to the *middle lane*.

*(2) Middle lane*

As mentioned before, this lane is a transient lane. If the takeover conditions are satisfied, the driver increases the speed and continues with the same direction to enter the *left lane*. Otherwise he/she decides to stay in *Middle lane* or to return to *right lane*.

After taking over, driver with the same speed from this lane enters to *right lane. *

*(3) Left lane*

Before takingover, if the takeover conditions are satisfied, the driver continues the path with high speed. Otherwise he/she goes to *Middle lane* and decides to stay there until the takeover conditions are provided or he/she returns to

After takingover, the driver with the same speed from this lane goes to *Middle lane* in order to go to the

*(4) Shoulder of road lane*

As mentioned before, a driver in order to avoid collision goes to this lane. So he/she must stay in this lane until he/she could return.

#### 4. Proposed Models

##### 4.1. The Fuzzy Modeling

###### 4.1.1. Model I

By considering estimated time distances with cars in three mentioned positions (Figure 5), and information about the speed, movement direction, and the steering angle of car, the following fuzzy model for controlling steering angle and speed is obtained.

In this model, the general form of fuzzy rules is as follows. *Rule i: if **is* … *and **is* … *and ** is* … *and V is* … *and *Dir* is* … *and ** is* … *then ** is* … *and ** is* …,

where is the time distance of *Controlled *car with BSDOL car, is the time distance with the front car moving in the same lane (FSDSL or FODSL car), is the time distance with the car which is moving in the opposite lane (FSDOL or FODOL car), *V *is the speed of *Controlled *car, Dir is the moving direction of *Controlled *car, and is its steering angle. These are input variables of fuzzy rules. The output variables are the change of speed and changing on direction of steering.

Each of the input variables , and has four linguistic terms: *very low, low, medium,* and *high*. In fuzzy rules, we have
The speed has three linguistic terms: *low, medium,* and *high*. The car direction and the steering angle direction have five linguistic terms (*very right*, *right*, *zero*, *left,* and *very left*). The changes of steering angle direction and speed have five linguistic terms. All of membership function is defined for a *normal *driver who drives according to driving laws. For including driver behavior, the membership function is changed by obtaining coefficients of the hierarchical fuzzy system which is represented in following.

###### 4.1.2. The Membership Function of Time Distance with Other Cars

As mentioned, the membership function of time distance with other cars is defined for a *normal *driver who drives according to driving laws. For example, membership functions of time distance with FSDSL car for three persons with different are shown in Figure 7.

In all of membership functions of time distance with other cars, three points of membership functions are important.The point where the membership of second linguistic term (*low*) begins to increase from zero. It is called *P _{1}*.The point of second linguistic term (

*low*) at which the membership returns to zero. It is called

*P*. The point of third linguistic term (

_{2}*medium*) at which the membership returns to zero. It is called

*P*.

_{3}We formed the time distance vector as .

For example, in Figure 7(a), For modeling different behaviors of driver, we apply the coefficient for time distance vector, obtained by hierarchical fuzzy system.

By considering the purposed time distance vectors for different drivers are shown in Table 7. In Table 7, we have After obtaining with other cars, we have The coefficients of membership functions for time distance with other cars which are obtained by (4.3) are represented in Table 8,

in which

###### 4.1.3. The Membership Function of Speed of Car

The coefficients of membership functions for speed are obtained by (4.3) and are represented in Table 9,

in which *Lv _{n}* is the lowest speed and

*Hv*is the highest speed for

_{n}*normal*driver.

*Lv*is the lowest speed and

*Hv*is the highest speed for different driver.

###### 4.1.4. The Membership Function of Change of Speed

The change of speed has five linguistic terms (*very decrease, decrease, not change, increase, and very increase*). The coefficients of membership functions for change of speed which are obtained by (4.3) are represented in Table 10,

in which:
and are the initial and end point of universes of the speed change, respectively.
and are defined for *normal *driver (km*⁄*h, km*⁄*h) and *Kv* is the coefficient speed which is obtained from the hierarchical fuzzy system.

###### 4.1.5. The Membership Function of Change of Steering Angle

The change of steering angle has five linguistic terms (*very right, right, not change, left, and very left*). The coefficients of membership functions for change of steering angle which are obtained by (4.3) are represented in Table 11,

in which
and are the initial and end point of universes of steering angle change, respectively.
and are defined for *normal *driver (,) and is the coefficient steering angle which is obtained from the hierarchical fuzzy system.

##### 4.2. From Fuzzy Model to Mathematical Model

After transforming the linguistic descriptions into fuzzy rules, Sugeno fuzzy inference has been applied to obtain the mathematical model during passing. We have applied fuzzy rule base of decision making which is used by *normal* driver during passing, to obtain *Model II* and *Model III*. Both models have been obtained based on fuzzy rules. Both models have three linguistic terms for steering angle and direction of car. But *Model II* has two linguistic terms and *Model III* has four linguistic terms for estimating the time distances with other cars. The models are obtained as follows.

###### 4.2.1. Model II

*(1) Right Lane*

When time distance with FSDSL car is low, then the driver intends to take over. So the decision of passing is interpreted by fuzzy rules as follow:

if is *low,* then

if is *high*, then ,

where is time distance with FSDSL car and *Dpass* is decision for passing. Also *Y* and *N* are positive values and where dot symbol over each term indicates its differentiation. Here means deviation in decision for passing in time unit.

The possibility of passing is interpreted by fuzzy rules as follows:

if is *low* or is *low*, then

if is *high* and is *high,* then

where is possibility of passing, is time distance with BSDOL car and is time distance with FODOL car. represents the deviation in possibility of passing in time unit.

By considering decision and possibility of passing, the pass is interpreted by the following rules:

if is *low*, then

if is *high* and is *low*, then

if is *high* and is *high*, then

The time distance with BSDOL, FSDSL, and FODOL car has two linguistic terms, *low* and *high*. The membership functions of them for *low* have been obtained by
where and coefficients are shown in Table 12. Also (4.11) has been used for memberships of *high*:
The same membership functions are applied for and

By applying Sugeno fuzzy inference, the model of and will be obtained as [9]
Finally, the driver continues the path or goes to *Middle lane* for passing. If he/she continues the path, the angle of car’s direction is hold unchanged and in the case of passing the leading car, it is moved toward the left side. The applied fuzzy rules for passing are summarized as follows:

if car goes to the left, then

if car goes straight ahead or goes to the right, then

where is change of steering angle, and are negative and positive values of steering angle, respectively ((in degree)).

When the driver must continue the path, fuzzy rules are summarized as follows:

if car goes to the left, then

if car goes straight ahead, then

if car goes to the right, then .

The steering angle and direction of car are defined by three linguistic terms (“*left*”, “*zero*”, “*right*”). The membership functions of them are shown in Figure 8.

For speed change of car, fuzzy rules are

if speed of car is decreased, then

if speed of car is fixed, then

if speed of car is increased, then

where is speed change of car, and *Lv,* and *Hv* are the lowest and the highest values of car’s speed, respectively, (*Lv* = 20 Km/h, *Hv* = 80 Km/h for *normal *driver).

In *Model II,* the changes of steering angle and car’s speed are obtained from fuzzy rules as follows:

in which
where Dir is direction of Controlled car and *left*(*x*), *zero*(*x*), *right*(*x*), *low*(*x*), *med*(x), and *high*(*x*) show the member of *x* in *left, zero, right, low, med,* and *high* membership functions, respectively.

*(2) Left lane*

We categorize this lane into two stages: before passing and after passing the leading car. In both of them, we check the return conditions. If FODSL car is near, the driver must return to the right lane. For returning to right lane, fuzzy rules are

If is *low,* then

If is *high*, then

where is time distance with FODSL car and Dret is the decision for returning to right lane.

As we know, if before passing, FSDOL car increases speed and becomes far, then driver must return to right lane. So before passing, we have the fuzzy rules as follows:if is *low* and Dret is *low*, then if is *high* and Dret is *low*, then if Dret is *high*, then

where denotes the return to right lane before passing and is the time distance with FSDOL car. After passing, when distance with BSDOL is sufficient then the driver returns to right lane. So after passing, the fuzzy rules are as follows: if is *low* and Dret is *high*, then if is *low* and Dret is *low*, then if is *high*, then

where denotes return to *right lane* after passing. The membership functions for time distance with FODSL, FSDOL, and BSDOL cars, Ret and Dret are obtained by (4.10) and (4.11) with coefficients represented in Table 12.

By applying Sugeno fuzzy inference, the models of Dret and Ret are obtained as

Finally, the driver continues the path or goes to *Middle lane* to return. If he/she continues the path, the fuzzy rules for continuing the path (as mentioned for *Right lane*) is applied and in the case of returning to the right lane, the following fuzzy rules are applied:if car goes to the left or goes straight ahead, thenif car goes to the right, then

Fuzzy rules of car’s speed in *Left lane* are similar to that of *Right lane*. Finally the models of changes of steering angle and speed are obtained as follows:

*(3) Middle Lane*

As mentioned before, this lane is a transient lane. If conditions for overtaking are satisfied, the driver increases the speed and continues in the same direction to enter the left lane. In this case, the fuzzy rules of *Right lane* are applied and the models of changing steering angle and speed of car are
After overtaking, if the return conditions are satisfying, driver enters with the same speed from this lane to right lane. In this case when the return conditions are satisfied, the fuzzy rules of *Left lane* are applied. Therefore, changes of steering angle and speed of car are obtained as

###### 4.2.2. Model III

As mentioned before, we apply the membership functions of the time distances with BSDOL, FSDSL, and FODOL which are used in *Model I*.

*(1) Right lane*

In this model, when a person drives in right lane, passing is based on time distance with BSDOL, FSDSL, and FODOL cars which are represented, respectively, as , and . So we have
Then,
Because of applying the membership functions and fuzzy rules of the change of steering angle in *Model II*, the change of steering angle model is the obtained model in *Model II*. By applying Sugeno fuzzy inference, the change of speed model is obtained as follows.
where

*(2) Middle lane*

When from the diving lane the car enters to *Middle lane*, the models are
After overtaking, because of applying the fuzzy rules and the membership functions of the change of steering angle in *Model II*, the change of steering angle model is the obtained model in *Model II*. The change of speed is

*(3) Left lane*

The return to the driving lane is as follows:
where

The change of steering angle model is the obtained model in *Model II*. The change of speed model is

#### 5. Results

The obtained weights of each of environmental parameters from (2.8) are summarized in Table 13. This table shows that among climate parameters, range of view is the most important parameter. Safety is the most important among the road parameters and safety equipment operation is the most important among the car parameters.

The obtained optimum number of linguistic terms for environmental parameters, as input variables, by PSO algorithm is shown in Table 14. The number of linguistic terms of output variables (climate, road, and car condition) is fixed and is equal to 5 sets.

In all of simulations, environmental parameters are as represented by Table 15.

Two strategies for the *Controlled car* are considered. *Controlled car* must wait until FODOL car passes then it takes over (Figures 9(a) and 10(a)); it has enough time to pass the leading car (Figures 9(b) and 10(b)).

In all of figures, the paths of *Controlled car* of *Model I* are shown with solid lines and paths of *Controlled car* of *Model II* and *Model III* are shown with dash lines. Also before passing, the paths of FSDSL and FODOL cars with solid lines and during passing with “▸” are shown. When BSDOL car is not near, the *Controlled car* intends to pass. Therefore, BSDOL car is not shown in simulation results. In Figure 9(a), the start times of passing of two models are equal but in Figure 9(b) the start time of *Model II* is later than that of *Model I*. Because in *Model II*, we have used two linguistic terms for estimating time distance with other cars and in *Model I* we have four linguistic terms; hence it seems that using two linguistic terms for time distance does not lead to appropriate results. Figure 9(b) shows that in *Model I* driver decides to pass earlier than in *Model II*, but in Figure 9(a), drivers of both models wait until FODOL car passes and approaches the FSDSL car. In both conditions, the time of return to right lane is almost equal for two mentioned strategies.

Of course, by considering four linguistic terms for estimating the time distance in *Model III*, the results obtained by *Model I* and *Model III* will be more similar as shown in Figure 10. We have a similar model with less fuzzy rules.

We investigate the behavior of different drivers under overtaking condition. The comparison of behavior of three drivers under equal passing conditions is shown in Figures 11 and 12. As it is seen in Figure 11, *normal driver* and attentive old driver with very high precision pass the leading car. But attentive old driver with very low precision waits until the FODOL passes and then he/she passes the leading car. The paths of cars before passing are shown by solid lines. The very low precision person’s error is higher than the very high precision person in calculating distance with other car. Because of being attentive, the driver waits for passing the leading car to collision avoidance. The car’s speed of each driver shows the driver’s behavior and decision under equal conditions. The *normal driver* decided to pass and increases the speed. The movement of car is smooth. The old person with very high precision has more steering direction change because he/she is attentive and old and needs more time of passing than normal driver. The old person with very low precision is late in decision making and waits. After that he/she is passing the leading car and returns the right lane as soon as because of being attentive.

Figure 12 compares a *normal driver* with a young driver. In equal conditions, the risky young driver passes the leading car. But the attentive young driver and normal driver waits until the FODOL car is passed. The speeds of cars are shown in Figure 12(d).

#### 6. Conclusion

We used two levels for controlling of car: the low and the high levels. In low-level control, the fuzzified three-position system has been presented and in high-level control, a fuzzy hierarchical system has been proposed. The fuzzy hierarchical system is used for modeling of driver’s behavior. In fact, the low level control system is responsible for modeling the steering angle and the speed variations enforced by the driver. The high level control system is used for the decision making process of the driver. In this paper, *Model I* is based on fuzzy modeling; *Model II* and *Model III* are obtained based on Sugeno fuzzy inference. Different drivers behavior is included in modeling by changing the membership function of input and output variables of fuzzy rules. These membership functions are varied by applying coefficients which are obtained by the hierarchical fuzzy system.

The obtained results of Sugeno fuzzy inference models are similar to fuzzy model. Of course in *Model II*, less fuzzy rules are used. But by applying more fuzzy rules in *Model III*, *Model I* and *Model III* become similar models. Because of using three linguistic terms for defining the steering angle and direction of car in *Model II* and *Model III*, both of them have less fuzzy rules than *Model I *(in this model five linguistic terms are used). The obtained models from Sugeno fuzzy inference (*Model II* and *Model III*) can be used to simulate, test the influence of parameters, and predict the behavior of the system.

The obtained results of *Model I* show that in equal conditions an attentive old driver with very high precision passes the leading car, but attentive old driver with very low precision waits until FODOL car passes and then he/she passes the leading car. The very low precision person’s error is higher than that of the very high precision person in calculating distance with other car. The attentive person needs more time distance with FODOL car than risky person to passing the leading car and returns to the right lane as soon as possible. This method also provides a basis for modeling individual driver behavior characteristics that may be tuned and used in automatically guided vehicles.

#### References

- M. Yoshida and H. Kamada, “A visual control system using image processing and fuzzy theory,” in
*IEEE Round Table Discussion on Vision Based Vehicle Guidance*, pp. 111–128, 1990. - T. Hessburg and M. Tomizuka, “Fuzzy logic control for lateral vehicle guidance,” in
*Proceedings of IEEE Conference on Control Applications*, vol. 2, pp. 581–586, September 1993. - H. Cai, Y. Lin, and R. R. Mourant, “Study on driver emotion in driver-vehicle-environment systems using multiple networked driving simulators,” in
*Proceedings of the Driving Simulation Conference North America (DSC '07)*, Iowa City, Iowa, USA, September 2007. - S. Hoogendoom, S. Hoogendoom-lanser, and H. Shouurman, “Perspectives of fuzzy logic in traffic engineering,” in
*Proceedings of the 78th Annual Meeting of the Transportation Research Board*, Washington, DC, USA, January 1999. - E. Tron and M. Margaliot, “Modeling observed natural behavior using fuzzy logic,” in
*Proceedings of IEEE International Conference on Fuzzy Systems*, vol. 1, pp. 74–78, 2003. - M. W. Spong, S. Hutchinson, and M. Vidyasagar,
*Robot Modeling and Control*, John Wiley & Sons, New York, NY, USA, 2006. - J. Kennedy and R. Eberhart,
*Swarm Intelligence*, Morgan Kauffman, San Franscisco, Calif, USA, 2001. - T. Pal and N. R. Pal, “SOGARG: a self-organized genetic algorithm-based rule generation scheme for fuzzy controllers,”
*IEEE Transactions on Evolutionary Computation*, vol. 7, no. 4, pp. 397–415, 2003. View at Publisher · View at Google Scholar · View at Scopus - M. Sugeno and G. T. Kang, “Structure identification of fuzzy model,”
*Fuzzy Sets and Systems*, vol. 28, no. 1, pp. 15–33, 1988. View at Publisher · View at Google Scholar · View at Zentralblatt MATH · View at MathSciNet