On Descartes' rule of signs

A sequence of $d+1$ signs $+$ and $-$ beginning with a $+$ is called a {\em sign pattern (SP)}. We say that the real polynomial $P:=x^d+\sum _{j=0}^{d-1}a_jx^j$, $a_j\neq 0$, defines the SP $\sigma :=(+$,sgn$(a_{d-1})$, $\ldots$, sgn$(a_0))$. By Descartes' rule of signs, for the quantity $pos$ of positive (resp. $neg$ of negative) roots of $P$, one has $pos\leq c$ (resp. $neg\leq p=d-c$), where $c$ and $p$ are the numbers of sign changes and sign preservations in $\sigma$; the numbers $c-pos$ and $p-neg$ are even. We say that $P$ realizes the SP $\sigma$ with the pair $(pos, neg)$. For SPs with $c=2$, we give some sufficient conditions for the (non)realizability of pairs $(pos, neg)$ of the form $(0,d-2k)$, $k=1$, $\ldots$, $[(d-2)/2]$.

Introduction
In the present paper we consider a problem which is a natural continuation of Descartes' rule of signs. The latter states that the number of positive roots of a real univariate polynomial (counted with multiplicity) is majorized by the number of sign changes in the sequence of its coefficients. We focus on polynomials without zero coefficients. Such a polynomial (say, of degree d) is representable in the form P := x d + a d−1 x d−1 + · · · + a 1 x + a 0 , a j ∈ R * . Denoting by c and p the numbers of sign changes and sign preservations in the sequence 1, a d−1 , . . ., a 1 , a 0 and by pos and neg the number of positive and negative roots of P (hence c+p = pos+neg = d) one obtains the conditions (1.1) pos ≤ c , neg ≤ p , c + p = d , c − pos ∈ 2N ∪ 0 , p − neg ∈ 2N ∪ 0 , (−1) pos = sgn (a 0 ) (the condition neg ≤ p results from Descartes' rule applied to the polynomial P (−x)). We call sign pattern (SP) a sequence of + or − signs of length d + 1 beginning with a +. We say that the polynomial P defines the SP (+, sgn(a d−1 ), . . ., sgn(a 1 ), sgn(a 0 )). A pair (pos, neg) satisfying conditions (1.1) is called admissible. An admissible pair (AP) is called realizable if there exists a polynomial P with exactly pos positive distinct and exactly neg negative distinct roots.
Example 1. For c = 0, the all-pluses SP is realizable with any AP (which is of the form (0, d − 2k), k = 0, 1, . . ., [d/2], where [α] denotes the integer part of α ∈ R). Indeed, one can construct a polynomial P with d distinct negative roots and d − 1 distinct critical levels. Then in the family of polynomials P + t, t > 0, one 1 encounters polynomials with exactly d − 2, d − 4, . . ., d − 2[d/2] negative distinct roots and with no positive roots (as t increases, the polynomial P + t loses twoby-two its real roots; each time two coalescing real roots give birth to a complex conjugate pair).

Proposition 1.
(1) Any SP with c = 1 is realizable with any AP of the form (2) Any SP is realizable with the AP (c, p).
Proposition 1 is proved in Section 2. Part (1) of it shows that in terms of the value of c, the first truly nontrivial case is c = 2. Its study is the object of the present paper. We should point out that due to the possibility to consider instead of the polynomial P (x) the polynomial P (−x) (this change exchanges the quantities c and p and the quantities pos and neg), it suffices to consider (for a given degree d) the cases with c ≤ [d/2]. Notation 1. We denote by Σ m,n,q the SP consisting of m ≥ 1 pluses followed by n ≥ 1 minuses followed by q ≥ 1 pluses, where m + n + q = d + 1. For a given polynomial P , we denote by P R the corresponding reverted polynomial, i.e. P R := x d P (1/x). If the polynomial P defines the SP Σ m,n,q , then P R defines the SP Σ q,n,m . The roots of P R are the reciprocals of the roots of P .
For small values of m or n, we have the following result: (2) For n = 3 and d ≥ 5, any SP Σ m,3,q is realizable with the AP (0, d − 2). For d = 4, the SP Σ 1,3,1 is not realizable with the AP (0, 2).
Theorem 1 is proved in Section 3.

Remarks 1.
(1) If a SP Σ m,n,q is realizable with the AP (0, d − 2), then it is realizable with any AP of the form (0, d − 2k), k = 1, . . ., [(d − 2)/2]. Indeed, if a polynomial P with distinct nonzero roots realizes the SP Σ m,n,q , then one can perturb P to make all its critical levels distinct. In the family P + t one encounters (for suitable positive values of t) polynomials with exactly d − 2k distinct negative roots and no positive ones, for k = 1, . . ., [(d − 2)/2]. As t ≥ 0, the constant term of the polynomial P is positive hence P + t defines the SP Σ m,n,q .
Proposition 2 is proved in Section 4. Our next result contains sufficient conditions for realizability of a SP Σ m,n,q with the AP (0, d − 2): Theorem 2 is proved in Section 5.
(2) The condition of realizability (1.2) can be compared with the condition of nonrealizability κ ≥ 4 (see part (3) of Remarks 1). To this end the latter can be given the following equivalent form:
Suppose that for d = d 0 ≥ 2 all SPs with c = 0 or c = 1 are realizable by monic polynomials (denoted by P ). Then to realize for d = d 0 + 1 a SP with c = 0 or c = 1 with the pair (0, d 0 + 1) or (1, d 0 ) it suffices to apply Lemma 1 with P 1 = P and with P 2 = x − 1 (resp. P 2 = x + 1) if c = 0 and the last two signs of the SP defined by P are (+, −) (resp. if c = 1 and these last two signs are (−, −)).
To realize for c = 1 a SP with any AP (1, d − 1 − 2k), k ≤ [(d − 1)/2], it suffices to perturb a polynomial P realizing this SP with the pair (1, d − 1) so that all critical levels become distinct and then choose suitable values of t > 0 in the family of polynomials P − t.
To prove part (2) one has to apply d − 1 times Lemma 1. When it is applied for the first time one sets P 1 := x − 1 (resp. P 1 := x + 1) if the second entry of the SP is − (resp. +). Each time the polynomial P 2 equals x − 1 or x + 1.
Keeping in mind that e j > 0, y > 0 and z > 0, one gets The quadratic polynomial T has a positive discriminant e 2 3 − e 2 e 4 (this follows from Newton's inequalities). Hence it has two real roots, so the last inequality implies and as √ y > z 2 > e 1 2 , one deduces the condition One has e 1 e 2 − 2e 3 > 0. Indeed, every product a i a j a k is encountered exactly two times in 2e 3 and three times in e 1 e 2 (and there are also the products a 2 i a j in e 1 e 2 ). Hence one can take squares of both hand-sides of inequality (3.3) and then divide by e 2 to obtain the condition (3.4) e 2 1 e 2 + 4e 4 < 4e 1 e 3 . We are going to show that for d ≥ 3, (3.5) e 2 1 e 2 + 4e 4 > 4e 1 e 3 which contradiction proves part (4). For d = 3, one has e 1 e 2 ≥ 9e 3 (see Proposition 2 on page 2 of [6]). Suppose that (3.5) holds true up to degree d ≥ 3. We proceed by induction on d. Recall that we denote by (−a j ) the negative roots of P . For degree d + 1, we have to show that where e j are the elementary symmetric functions of the quantities a 1 , . . . , a d−2 , which is simplified to Newton's inequality e 2 1 ≥ 2d d − 1 e 2 implies the following ones: proves (3.6) and hence (3.5) as well.

Proof of Proposition 2
We give in detail the proof of part (1). For part (2), we point out only the differences w.r.t. the proof of part (1). These differences are only technical in character. In order to give easily references to the different parts of the proof, the latter are marked by 1 0 , 2 0 , . . ., 6 0 .
Proof of part (1) of Proposition 2. 1 0 . Suppose that there exists a polynomial P := RQ, where R := (x + u 1 ) · · · (x + u 7 ) , u j > 0 , and Q := x 2 + rx + s , which realizes one of the two SPs Σ 3,4,3 or Σ 2,4,4 with the AP (0, 7). We set P := 9 j=0 p j x j and Q := (x − a) 2 + b, a ∈ R, b ≥ 0. We show that for b = 0, there exists no polynomial satisfying the conditions Hence this holds true also for b > 0 because P = R · Q| b=0 + bR, and the polynomial R has all coefficients positive. This in turn implies that for b ≥ 0, there exists no polynomial P realizing the SP Σ 3,4,3 or Σ 2,4,4 . So from now on we concentrate on the case b = 0. 2 0 . Suppose that a polynomial P with b = 0 and u 1 ≥ u 2 ≥ · · · ≥ u 7 ≥ 0 satisfying the left or right couple of inequalities (4.8) exists. We make the change of variables x → u 1 x and after this we multiply P by (1/u 1 ) 9 (these changes preserve the signs of the coefficients), so now we are in the case u 1 = 1. Denote by ∆ ⊂ R 7 + = {(u 2 , u 3 , . . . , u 7 , a)} the set on which one has conditions (4.8). The closure ∆ of this set is compact. Indeed, one has p 1 ≥ 0 hence The set ∆ can be stratified according to the multiplicity vector of the variables (u 2 , . . . , u 7 ) and the possible equalities u j = 0, u i = 1 and/or a = 0. Suppose that the set ∆ contains a polynomial satisfying the inequalities (4.8).

Remarks 3.
(1) For this polynomial one has a > 0, otherwise all its coefficients are nonnegative. One has also u j > 0, j = 2, . . ., 7. Indeed, in the case of Σ 3,4,3 (resp. Σ 2,4,4 ), if three or more (resp. if four or more) of the variables u j are 0, then the polynomial P has less than two sign changes in the sequence of its coefficients and by the Descartes rule of signs P cannot have two positive roots counted with multiplicity. For Σ 3,4,3 , if exactly one or two of the variables u j equal 0, then the polynomial P is the product of x with a polynomial defining the SP Σ 3,4,2 or of x 2 with a polynomial defining the SP Σ 3,4,1 . However these SPs are not realizable with the APs (0, 6) or (0, 5) respectively, see [4] and [2]. For Σ 2,4,4 , if exactly one, two or three of the variables u j equal 0, then P is the product of x, x 2 or x 3 with a polynomial defining respectively the SP Σ 2,4,3 , Σ 2,4,2 or Σ 2,4,1 which is not realizable with the AP (0, 6), (0, 5) or (0, 4), see [4], [2] and [1].
(3) There exists δ * > 0 such that on the set ∆ • , one has also u j ≥ δ * . This follows from part (1) of the present remarks.
3 0 . We need some technical lemmas: Lemma 2. The minimum of the quantity p 3 + p 6 , resp. p 4 + p 7 , is not attained at a point of the set ∆ • with three or more distinct and distinct from 1 among the quantities u j , 2 ≤ j ≤ 7.
Thus to prove Proposition 2 we have to consider only the case when exactly one or two of the quantities u j are distinct from 1. We use the following result: 4 0 . Further we consider several different cases according to the multiplicity of u j0 , the smallest of the variables u j . In the proofs we use linear changes x → χx, χ > 0, followed by P → χ −9 P . These changes preserve the signs of the coefficients; the condition u 1 = 1 is lost and the condition u j0 = 1, j 0 = 1, is obtained. The aim of this is to have more explicit computations. In all the cases the polynomial R is of the form R = (x + 1) s1 (x + v) s2 (x + w) s3 , s 1 + s 2 + s 3 = 7, and one has v > 1, w > 1, but v and w are not necessarily distinct and we do not suppose that v > w or v < w (which permits us to assume that s 2 ≥ s 3 ). Allowing the equality v = w means treating together cases of exactly two or exactly three distinct quantities u j (counting also u 1 = 1). We list the triples (s 1 , s 2 , s 3 ) defining the cases: and (1, 3, 3) . The cases when there are exactly two different quantities u j one of which is u 1 = 1 can be coded in a similar way. E.g. (5, 2) means that R = (x + 1) 5 (x + u) 2 , u > 1. The nonrealizability of these cases follows automatically from the one of the above 9 ones (when v and w coalesce), with the only exception of R = (x + 1) 6 (x + w) (the case (6, 1)).
Lemma 5. Conditions (4.8) fail in case (6, 1). 5 0 . We consider the SP Σ 2,4,4 first. We compute using MAPLE the resultant Res (p 4 , p 7 , a) as a function of v and w. Then we set v := 1 + V , w := 1 + W , V > 0, W > 0. In all 9 cases this resultant is a polynomial in V and W with all coefficients positive. Hence for no value of V > 0 and W > 0 do the coefficients p 4 and p 7 vanish together.
As in the case of Σ 2,4,4 , we express Res (p 3 , p 6 , a) as a polynomial of v and w, and then of V and W . In cases (5, 1, 1), (4, 2, 1) and (3, 2, 2), this resultant has a single monomial with negative coefficient, this is U V . We give the monomials V W , V 2 and W 2 for these three cases: (3, 2, 2) −37632V W + 47040V 2 + 47040W 2 . The discriminants of these quadratic homogeneous polynomials are negative hence they are nonnegative (and positive for V > 0, W > 0). In the case of (3, 3, 1), there are exactly two monomials with negative coefficients, namely V W and V 2 W . The resultant equals (we skip all other monomials; their coefficients are positive). The two quadratic homogeneous polynomials have negative discriminants, so they are positive for V > 0, W > 0.
The rest of the reasoning goes by exact analogy with the case of Σ 2,4,4 .
We consider first the case of Σ 3,4,3 , i.e (µ, ν) = (3, 6). The 2-vectors of coefficients of x 3 and x 6 of the polynomials P ⋄ , xP ⋄ , x 2 P ⋄ and x 3 P ⋄ equal (B, 0), (C, 1), (D, A) and (E, B) respectively. For B = 0, the first two of them are not collinear. As E = 0 (see parts (2) and (3)  Proof of Lemma 3. For the polynomial (x + 1) 7 (x − a) 2 , we list its coefficients p 3 , p 4 , p 6 and p 7 and their roots: Hence for no value of a ≥ 0 does one have the left or the right two of conditions (4.8) together.
(2) In the proof of part (2) of Proposition 2 we define the set ∆ • ⊂ ∆ as the one on which one has p 5 + p 8 ≤ −δ/2. On this set one has a ≥ 2 −10 δ. Indeed, as P = x 2 R − 2axR + a 2 R, any coefficient of P is not less than −2aσ, where σ is the sum of all coefficients of R (they are all nonnegative); clearly σ ≤ 2 8 (follows from u j ∈ [0, 1]).
The proof is much the same as the one of Lemma 2. One sets (µ, ν) = (5,8). Each of the polynomials P vj and P a is a linear combination of P ⋄ := P v1,v2,v3,a := x 6 + Ax 5 + Bx 4 + Cx 3 + Dx 2 + Ex + F , xP ⋄ , x 2 P ⋄ and x 3 P v,w,a . The 2-vectors of coefficients of x 5 and x 8 of the polynomials P ⋄ , xP ⋄ , x 2 P ⋄ and x 3 P ⋄ equal (A, 0), (B, 0), (C, 1) and (D, A) respectively. If A = 0 or B = 0, there are two noncollinear among the first three of these vectors and the choice of v * j and a * is possible. If A = B = 0, then, as F = 0, either the polynomial P ⋄ or one of its derivatives is not with all roots real which is a contradiction.
One has Res (p 5 , p 8 , a) = 3969(w + 2) 2 (w − 1) 2 . We list the roots of p 5 and p 8 for w = 1/2, w = 1 and w = 2: As in the proof of Lemma 5, we conclude that the conditions p 5 < 0, p 8 < 0 fail for w > 0. 5 0 . We compute Res (p 5 , p 8 , a) as a function of v and w and then set v := 1 + V , w := 1 + W . Our aim is to show that in all 12 cases, the leading coefficients of p 5 and p 8 considered as quadratic polynomials in a are positive. The rest of the reasoning is done by analogy with part 5 0 of the proof of part (1) of Proposition 2.
6 0 . It is in the analog of 6 0 that there is much more technical work to be done. Of the twelve cases listed in 4 0 , in three there is a single monomial with a negative coefficient, and this is U V . We list the coefficients of the monomials U V , U 2 and V 2 of the cases (6, 1, 1), (5, 2, 1) and (4, 2, 2) respectively: Everywhere in 6 0 quadratic and biquadratic polynomials have negative discriminants. There are four cases in which exactly two monomials have negative signs, namely (4, 3, 1), (3,4,1), (3,3,2) and (2,4,2) in which we give only the monomials forming quadratic homogeneous polynomials with negative discriminants (multiplied by 1 or U ); we skip all other monomials (their coefficients are positive): In the cases (2, 5, 1) and (1, 6, 1) there are four and five negative monomials respectively. These cases are treated in a similar way: In the case (2, 3, 3), there are four negative monomials which we include in polynomials as follows: For the third polynomial in brackets its corresponding inhomogeneous polynomial −30618x 2 + 221130x 3 + 221130 − 30618x has one negative and two complex conjugate roots. For a univariate real polynomial with positive leading coefficient and having only negative and complex conjugate roots we say that it is of type P. It is clear that the homogeneous polynomial corresponding to a type P univariate polynomial (we say that it is also of type P) is nonnegative.
In the case (1, 5, 2), there are seven negative monomials: The third and fourth of the polynomials in brackets are of type P hence nonnegative. Finally, in the case (1,4,3) we have also seven negative monomials: The third and the last two polynomials in brackets are of type P.

Proof of Theorem 2
Consider the polynomial P = (x + 1) d−2 (x 2 − zx + y), where the quadratic factor has no real roots, i.e. z 2 < 4y. Hence y > 0 and z > 0 (otherwise all coefficients of P must be positive). If the polynomial P defines the SP Σ m,n,q , then any perturbation of P with d − 2 distinct negative roots close to −1 defines also the SP Σ m,n,q . We expand P in powers of x: where p j = C j d−2 − C j−1 d−2 z + C j−2 d−2 y with C ν µ = 0 if µ < ν. The coefficients of P define the SP Σ m,n,q , so p j > 0 for j = 1, . . . , m − 1 and for j = m + n, . . . , d , and p j < 0 for j = m, m + 1, . . . , m + n − 1 .


BCE: A Behavior-Learning-Based Crowdedness Estimation Mechanism for Crowdsensing Buses

This paper aims to develop a method that can accurately estimate the crowdedness level for crowdsensing buses. Multiple related features are reflected by passengers’ moving trajectories at the bus stops. Many state-of-the-art posture recognition approaches have high accuracy, which can ensure that the passengers motion monitoring results are reliable. Through these observations, we propose an improved behavior-learning-based crowdedness estimation mechanism, named BCE, to obtain the crowdedness level of a bus. The motion sequence and gait information of a passenger is obtained via sensors in smartphones and is described by feature vectors. Then the feature vectors are classified as bus crowdedness levels based on gcForest classifier for single-person bus’s crowdedness level estimation and on Recurrent Neural Network (RNN) for multipeople bus’s crowdedness level estimation. Additionally, the moving trajectories and the corresponding crowdedness of the passengers who do not involve in our system can be recognized passively through the motion information of adjacent involved passengers on the bus. The experiments prove that our mechanism achieves an accuracy of 92% overall.

I. INTRODUCTION
Crowdedness estimation for buses is mostly addressed in the research field of visual superintendence system [1]- [7], which use a set of cameras or other visual devices to obtain human operations with visual information to quantify the crowdedness of buses. The visual device is efficient in restricted occasions with abundant brightness and wide field of view. Poor brightness and bad vision cause for insufficient and defective visual information, which makes the estimation of crowdedness unacceptable. With these findings, we focus on another research field of visual-free data processing and weak signal processing using mobile devices, The associate editor coordinating the review of this manuscript and approving it for publication was Daxin Tian .
aiming to capture informative details in these invisible signal data. Nowadays, travel-related apps offer convenient realtime information (i.e., location, velocity, arrival time, etc.) of buses. However, none of them can provide the crowdedness information of buses. Passengers' motion (such as the walking time, the average stride while walking, moving trajectory and so on) of getting on the bus can reveal whether it is crowded or not inside the bus. Since the motion of passengers can be recognized with existing high-precision sensors on smartphones, it is attainable to use sensors on the phone to estimate passengers' behavior and deduce the crowdedness level of a busy bus.
In this paper, we propose a behavior-learning-based crowdedness estimation mechanism for crowdsensing buses, namely BCE, which exploits a trained 3-layer crowdedness VOLUME 7, 2019 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see http://creativecommons.org/licenses/by/4.0/ classification framework to obtain the crowdedness level of a bus. The participating passengers who are involved in the crowdedness measurement task act as behavior sensors. The sensors can perceive both participating passengers and the other uninvolved passengers for the crowdedness measurement inside buses. Once passengers get on a bus, sensors begin collecting data. According to different perceived objects, the perception in BCE is divided into active perception and passive perception. As for active perception, sensors collect posture information including motion and gait of participating passengers for BCE. Firstly, considering the monolayer support vector machine (SVM) classifier may not take the semantic relation into account and the hidden Markov model (HMM) [8] can make up for the disadvantages of the SVM classifier. An SVM-HMM classifier is trained to recognize motion. To obtain detailed gait information, a method with a low error rate proposed in [5] is utilized in our system. Then the posture information of an involved passenger from the time when the bus stops to the time when the passenger reaches a stable state at the bus is obtained and will be described by a feature vector. The feature vector of one passenger is the input of the second layer gcForest cascade framework trained in advance to extract the informative contexts between a sequence of postures or a motion. In passive perception, the moving trajectories of uninvolved passengers can be expressed by the behavior fluctuations of the adjacent active involved passengers. When the bus leaves for the next stop, the data of involved passengers on the bus is traversed for a possibly existed behavior fluctuation sequence. Once the sequence is obtained, the posture information of the passively recognized passenger can be calculated based on the attributes of these behavior fluctuations. Eventually, the third layer multipeople Long Short-Term Memory (mLSTM) network will comprehensively utilize the original data concatenated with informative contexts, obtained from the gcForest framework, and passive feature vector obtained from the passive perception to estimate the whole bus crowdedness level.
The major contributions of this paper consist of the following aspects: 1. Involved passengers are utilized as sensors. It can not only get passengers' behavior information directly from the participants' sensing data but also recognize the uninvolved passengers' information through processing the data provided by involved passengers.
2. We propose the BCE mechanism, an improved trained 3-layer crowdedness classification framework based on SVM-HMM, named gcForest, and LSTM to estimate crowdsensing buses' crowdedness level accurately with several participants' sensor data.
3. The BCE performs better than some existing methods in some cases according to the experiments below. It proves the BCE is feasible and efficient to give an estimation of the actual crowdedness level of a bus.
The following sections are organized as follows: Related works and preliminaries are shown in Section 2 and 3 respectively. Section 4 introduces the system design of BCE. In section 5, we evaluate the performance of the BCE. Then the conclusions are made in Section 6.

II. RELATED WORKS A. POSTURE RECOGNITION
In recent years, various sensors become smaller and more accessible, and activity recognition has higher accuracy with fewer sensors. Bayat et al. [9] proposed a fusion method of five normal classifiers to recognize activities such as dancing, stairs-down, slow-walk, running, stairs-up and fast work only based on acceleration data, which could reach an overall rate of 91.15%. Wei et al. [10] proposed a device-free activity recognition method which is based on channel state information, their experimental results show that this mechanism achieves recognition accuracy of 96% and is robust to environmental changes. Roemmele et al. [11] utilized a spatial-temporal bag-of-words model and a recurrent neural network to prove the possibility of perception from motion trajectories. Wang et al. [12] presented a context-associative approach to recognize activity with human-object interaction, which can recognize incoming visual content based on the previous experienced activities with promising experiment results on 3 datasets compared with other state-of-the-art techniques. The framework combined of SVM and HMM posed by Xiong et al. [8] and Wang et al. [13], both of which behave well on vehicle and action recognition. As for gait recognition, the accuracy of a mechanism proposed by Zhang et al. [14] could reach 95.8% based on acceleration data. Muaaz and Mayrhofer [15] and Alahi et al. [16] even utilized gait information for identity and trajectory prediction.

B. CROWDSENSING
Crowdsensing is a new paradigm that has been proposed in recent years to use mobile phones to perceive, collect and process data beyond the scale which was previously impossible [17]. There already exists lots of effective crowdsensing mechanisms. Guo et al. [18] linked quality needs with the macro and micro diversity needs and proposed a unified visual crowdsensing framework called UtiPay to measure and improve the quality of worker contributed visual data. Robicquet et al. [19] contributed a new large-scale dataset that collected videos of various types of targets (not just pedestrians, but also bikers, skateboarders, cars, buses, golf carts), which navigate in a real world outdoor environment such as a university campus. He et al. [20] adopted the notion of 'Walrasian Equilibrium' as a comprehensive metric, in which there exists a price vector for mobile users and an allocation for task initiators such that the allocation is Pareto optimal and the market gets cleaner to consider the interests of all participating parties.

C. CROWDEDNESS ESTIMATION
Crowdedness Level can be described as the sum number of people in a specific area. Zhang et al. [1] proposed a simple but effective Multicolumn Convolutional Neural Network (MCNN) architecture to map the image to its crowd density map that can accurately estimate the crowd count from an individual image with arbitrary crowd density and arbitrary perspective which outperforms all existing methods. A deep metric learning-based regression method is proposed by Wang et al. [2] to extract density related features, and learn better distance measurement, simultaneously, the effectiveness of which is proved. Depatla and Mostofi [3] and Liu et al. [21] both achieved crowd counting utilizing WiFi signals. Depatla and Mostofi [3] showed how to characterize the wireless received power measurements as a superposition of renewal-type processes, by borrowing theories from the renewal-process literature, they then showed how the probability mass function of the inter-event times carries vital information on the number of people. Based on the key intuition that now that it is too complex to model the crowd counting using Wi-Fi directly, Liu et al. [21] can use deep learning approaches to construct a complex function to fit the correlation between the number of people and Channel State Information (CSI) values with the accuracy of 82.3% in a rather effective and robust manner. Pipelidis et al. [4] proposed a novel approach for the extraction of reference pressure during the outdoor-to-indoor-transition of the user inside a building, which is identified through sensor fusion. Sindagi and Patel [6] proposed a novel end-to-end cascaded network of CNNs to jointly learn crowd count classification and density map estimation. Switching convolutional neural network present by Sam et al. [7] could leverage variation of crowd density within an image to improve the accuracy and localization of the predicted crowd count. The framework combined of patches from a grid within a crowd scene and independent CNN regressors gets better performance compared to current state-of-the-art methods. Zhou et al. [22] proposed a submodular method to select the most informative frames from the image sequences of crowds. The method selects the most representative images to guarantee the information coverage, by maximizing the similarities between the group of selected images and the image sequence, which achieves higher accuracy compared with the state-of-the-art regression methods and competitive performance with deep convolutional models. Shami et al. [23] regarded a head detector as a key feature and proposed a state-of-the art convolutional neural network for the sparse head detection in dense crowd, which behave better on UCF_CC_50, Shang-haiTech, and AHU-Crowd datasets. Hu et al. [24] investigated the use of a deep-learning approach to estimate the number of individuals presented in a mid-level or high-level crowd visible in a single image. Xiong et al. [25] proposed a variant of a recent deep learning model called convolutional LSTM (ConvLSTM) for crowd counting, which fully captures both spatial and temporal dependencies. Vandoni et al. [26] proposed a learning-to-count strategy with a generic detection algorithm which benefits from a counting regressor in order to identify crowded subregions with inadequate head detection performance. The experiment results showed the effectiveness with a count error of less than 5%.

III. PRELIMINARIES
A brief introduction to the crowdsensing bus, followed by definitions of some concept arose in this paper is given in this section.

A. INTRODUCTION ABOUT CROWDSENSING BUS
The crowdsensing bus [17], [27] system consists of a sensor data server, a wireless network and multiple sensor nodes. A sensor node is a mobile phone that passenger possesses on a bus. Each node should be allowed to collect location data and other sensor data and should be willing to send information to the data server. The sensor data server is responsible for the crowdsensing bus system, receiving and processing data from each sensor node.
Once the sensor data is received from participating passengers, the server would cluster the nodes into a group, which means that the bus estimates the degree of crowdedness in bus through all data received from nodes in the same group.
In fact, the amount of sensor data required in a bus crowdedness estimating task is very large. Therefore, data sources are a daunting problem. The crowdsensing bus system can perform more data collection tasks at lower cost and achieve higher quality data.

B. DEFINITIONS
Our method introduces four definitions for further comprehend.
Definition 1 (Stable State): A stable state means a final state of an involved passenger at the bus stops, which is the state of sitting or standing for more than three seconds. As for passengers-off, they cannot be sensed after they get off the bus. We set the state before they get off as the final stable state.
Definition 2 (Motion Sequence): A motion sequence is a sequence of postures, consisting of different activities including walking, standing, sitting, going downstairs and upstairs, which are listed in chronological order.

Definition 3 (Bus Crowdedness Level):
Considering the personal crowdedness, levels can only show the congestion situation of an area. To quantify the congested situation of one bus, we define 4 crowdedness levels: Level 1 means almost no passengers or only a few passengers on the bus; Level 2 means the number of passengers is roughly the same as that of the seats; Level 3 means about a quarter of passengers are standing on the bus and walking is affected obviously; Level 4 means it is hard to walk.
Definition 4 (Behavior Fluctuation): Uninvolved passengers' behavior which cannot be directly sensed will influence and change involved passengers' state. Involved passengers may sway or move when a uninvolved passenger passed by even they have already reached the stable state. We define this change as behavior fluctuation and quantify it by gyroscope VOLUME 7, 2019 data. If waves simultaneously take place in three axes of the gyroscope sensor, a behavior fluctuation is recognized. The details will be represented in chapter 4.5.

IV. SYSTEM DESIGN A. SYSTEM OVERVIEW
In this paper, we proposed a behavior-learning-based crowdedness estimation mechanism for crowdsensing buses, namely BCE, to obtain the quantified bus crowdedness level. Figure.1 sketches the architecture of our system. There are two major components.
On the mobile phone side, as shown in Figure.1, the mobile phone carried by the participants at the bus stations can continuously collect sensor data. After performing posture data preprocessing and posture recognition on the mobile phone, the phone will send the individual posture feature vector to the data server. The mobile phone performs data collection, transmission, and part of data processing.
The other part is the data server side. The server is primarily responsible for accepting and processing data sent from participant's mobile phones. This component consists of passive perception, single-person, and multipeople bus crowdedness level estimation.
In BCE, the collected data from participants can be divided into three moving states including getting on, getting off, and walking on the bus, which can be identified according to the action of going up and down stairs. We refer to three moving states as passenger-on, passenger-off and passenger-walking. First, we process the raw data to get some informative features.Then the features will be selected as the input of the SVM-HMM classifier model for training. After motion recognition and gait recognition, we obtain the moving trajectory (i.e. the motion sequence and the gait information). All the works mentioned above are completed on participant's mobile phones. And when the bus moves on, the mobile phone will send the obtained individual feature consisting of posture motion and gait information to the data server. The server will timely cluster the received data into different groups (i.e. different buses) according to the attached location information. Then the server may launch the process of passive perception, as well as the single-person bus crowdedness estimation based on gcForest classifier and multiperson bus crowdedness estimation using the mLSTM network in sequence.

B. DATA PREPROCESS
In this part, we invited eighteen males and eighteen females of different ages between 18 and 31 to collect data. Five actions, including walking, standing, going upstairs, going downstairs and sitting, are performed by every participant. Each process of collecting training data merely contains one action lasting more than 60s. Subsequently, each collected training data set is labeled with corresponding actions. The sampling frequency is set to 200Hz. And the sensor data of this part is collected to train the SVM-HMM model.
After that, these 36 participators are asked to perform getting on, getting off or only walking around on buses with different crowdedness levels while every sample data is labeled with corresponding crowdedness level. The process of this data collection lasts for one month and covers buses under a variety of conditions. These data are collected for training the SVM models used in estimation of the crowdedness level of individual and the bus.
Constrained to the ability of process data on mobile phones, a simple algorithm is utilized to eliminate stochastic noise of the raw data before the process of feature extraction.  Recursion average filtering method has high smoothness and good effect on recurrent noise. The method is shown as Eq.1 in which the x(i) means the collected sensor data. Figure.2 demonstrates the effectiveness of this method for disposing the acceleration data.
In view of the repeatability of these activities, frames are overlapped over analyze. After comparing the performance of different window size, we set the overlapping window size as 400 corresponding to 2 seconds of data and 50% overlapped.
The SVM classifier performs high accuracy among the existing motion recognition methods, but it may output some obvious wrong results. For example, an abrupt 'sitting' label during a series of 'walking' labels, which is ineluctable due to the established model. Hence we combine the SVM classifier with HMM [8], making a SVM-HMM model to correct the wrong output of the SVM classifier. Figure.3 shows the process of SVM-HMM model utilized in BCE.
Choosing useful features can obviously improve the accuracy of SVM classifier. SMA (Signal Magnitude Area) is an obvious feature to distinguish motionless state from motion state. The SMA can be obtained by Eq.2 in which x(t), y(t), z(t) denotes the 3-dimensional acceleration. We define the sum of all positive values in a window as Sumpos, and the sum of all negative values as Sumneg. After calculating the acceleration data in every window, a 40-feature vector is obtained, which consists of mean value, variance, skewness, kurtosis, SMA, APF [9], Sumpos, Sumneg, minimum, maximum, RMS (Root Mean Square), standard deviation of every axis (36 features), correlation between each two axis (3 features), VarAPF(1 feature) [9]. After labeling every feature vector with the corresponding action, a SVM classifier is trained for motion recognition.
The input of the HMM model's Viterbi algorithm is required to be probability values, while the output of SVM is a definitive number. There is a gap between the SVM classifier and the HMM model in the training process in BCE. Here, we adopt the sigmoid algorithm to map the number to a probability, which is shown in Eq.3.
where j denotes j-th motion, x denotes the feature vector, yi denotes the SVM output of the i-th kind motion. Parameter A and B can be estimated using cross-validation. In this paper we need to distinguish 5 states, hence 5 SVM classifiers are trained to distinguish one behavior from the other four activities. Every SVM classifier has two outputs (1,-1) to express whether the current sample belongs to this motion. Analogously 5 HMM models must be trained to correspond to 5 motions. While training a HMM model of one motion, a sample data belonging to the motion is inputted into the 5 SVM models then we get 5 integer results. After converting the integer into probability value, a vector is obtained. Using the same handler for all sample data belonging to a motion, a vector sequence is gained. A HMM model corresponding to a motion is trained using the appropriate motion vector sequence. The parameters of every HMM model can be determined by the Baum-Welch algorithm. Thus, the output probability can be calculated by Eq.4 in which n denotes the number of SVM classifiers. In BCE, n = 5.
After the motion recognition model is trained, the estimation process becomes simpler. At first, input the feature vector of segmented sample data into the SVM models and a series of classification results will be obtained. After converting the integers into probability values and inputting the probability values into the HMM models, the motion which has the biggest probability value is chosen as the final estimation result. We take probabilities of all postures in a timestep as a feature vector p t for the following classification. Additionally, we send the data labeled 'walking' into the gait recognition method.

2) GAIT RECOGNITION
In BCE, data sensed from acceleration and gyroscope sensor are utilized to calculate the gait informationg t = [stepnumber, averagestride,stridevariance,averageswinging range], which has been demonstrated to be remarkably accurate as indicated in [5].
This section is divided into two parts: one is step counting and stride estimation, the other is swinging times counting. The whole framework of gait recognition is shown in Figure.4. i) Step counting and stride estimation For step counting and stride estimation, BCE incorporates the method in [5], with the accuracy of over 94% in step counting and maximum error less than 8.7cm in stride estimation.
ii) Swinging times counting Swinging means the turn of moving direction. As is shown in Figure.5, every obvious peak represents a swinging. The height of the peak shows the range of change in some way. In case of the effect of the wrong estimations caused by noise peaks, a proper threshold is adopted to increase the validity of the algorithm. Any peak whose absolute height does not break the threshold will not be accepted as a heading state change motion. So the core of this part is finding and recording the qualified peak numbers and the average of the peaks' absolute values of each step returned by the step counting algorithm.

D. SINGLE-PERSON BUS CROWDEDNESS LEVEL ESTIMATION
Normally the crowdedness level is expressed as the total number of people in a specific area. However, all the existing works about passengers-counting on a bus are based on image recognition, which may have many difficulties to be realized in practice. We find that passengers' walking trajectories can show the crowdedness level in some ways, for example, the bus where a passenger can sit down in a short time must be more spacious than the one where a passenger walks a long time in short steps then stand in the end. Even if the passengers' stable states for all cases are standing, it is obvious that the bus with straight moving trajectories for all the passengers may be less crowded than the bus where the passengers have to make some micro-turns while moving. So, it's possible to estimate the crowdedness level on the bus by the passenger's motion sequence at bus stops. When there are a few active passengers, gcForest performs better than other neural networks. A brief introduction to gcForest and approach to use it will be described in this section.

1) DATA PREPROCESSING
The single-person bus crowdedness estimation in BCE is based on gcForest classifier. After the posture recognition process, we concatenate p t and g t into a feature vector v t , and we combine all feature vectors at each time-step into a whole feature vector v for one single passenger, which will be denoted as v i in Section 4.6.

2) gcForest
A gcForest consists of an input and an output layer, as well as multiple hidden layers. Different from other neural networks, the hidden layers are the cascade forest structure. As illustrated in Figure.6, each level consists of different decision tree forests. In this case,we take two completelyrandom tree forests and two random forests in one level, and each forest will output a four-dimensional class vector, which is concatenated for the original input feature vector.
In addition, a gcForest contains a multigrained scanning layer, which can handle sequence data like recurrent neural networks. As Figure.7 shows, sliding windows are used to scan the raw features. In our case, we collect data once 3 seconds and the last 2 minutes. Thus there are 40 ninedimension vectors which can be reshaped as one 360-dim vector, and a window size of 26 features are used. A 26-dim feature vector will be generated by sliding the window for one feature and 335 feature vectors are produced totally. All the features vectors are used to train a completelyrandom tree forest and a random forest, and then the class vectors are generated and concatenated as transformed features, which are input feature vectors in the cascade forest. Additionally, if there is more than one type of sliding window,  multiple sliding windows can be used to produce multiple outputs, which are used in the following cascade forests in turn.

3) IMPLEMENTATION DETAILS
gcForest has fewer hyper-parameters than other traditional deep neural networks. If we want to apply the gcForest to our feature extracting task, it is still necessary to adjust its parameters to optimize it. Thus, we make some adjustment to gcForest as described below.
1) In multigrained scanning, formally, we adjust the size and number of sliding window and the type and number of forests to keep the feature vectors produced having proper dimension. 2) In the cascade forest, we can adjust the type and number of forests to make the final loss acceptable. 3) In this case, we select four different sizes of sliding windows, respectively 1*6, 1*9, 1*13, 1*26 and group a random forest and a completely-random tree forest in multigrained scanning. In cascade forests, two random forests and two completely-random tree forests for each layer are adapted and we set 90% as the final expected estimation accuracy.

E. PASSIVE PERCEPTION
Before passive perception, we need to obtain behavior fluctuations. According to definition 4, we analyze gyroscope data to find behavior fluctuations. As Figure.8 shown, when L 2 norm or the root of the squares sum of the three peak values is over a threshold, we recognize it as a behavior fluctuation. The area is the region between two nearest peak point and we calculate L 2 norm of the area blew the three peak values by integration as the magnitude of the behavior fluctuation. The threshold should be chosen to reflect real behavior fluctuations in adjacent participatory passengers.
In our experiments, the threshold is 2.4 and we can get four behavior fluctuations pointed in Figure.8. Once the bus moves on, the server will receive a series of structured data, which can describe the congestion situation of the vicinity of every involved passenger on the bus. Such structured data consists of the individual crowdedness levels of current involved passengers, the credibility of the person estimation result, the occurrence relative time of the estimation result, the waiting time from reaching the stable state to the bus moving on, the relative location of the involved passengers (front, middle or rear), the behavior fluctuation times and the attribute (i.e. occurrence time, fluctuation range, etc.) of every behavior fluctuation. By analyzing the behavior fluctuations from the adjacent involved passengers on the same bus, we can recognize the walking track of the uninvolved passenger. If there exists at least one behavior fluctuation, we regard it that a new uninvolved passenger is recognized. Furthermore, the posture information of the uninvolved can be deduced referring to the definition of feature vector v t mentioned above. More specifically, the walking velocity and final location of the new uninvolved passenger can be roughly estimated. Since the locations of the involved passengers who have already reach the stable state are known, combining the time differences of the fluctuations' occurrence time and the known distances of the previous passengers, the stride can be calculated. The walking time, total time and total step number can be obtained using the average stride and the final location. Standing time is set as 0. Swinging times and average swinging range are obtained through the information of the fluctuations which consist of the motion sequence that is regarded as a passively-recognized passenger. Then the vector g t consisting of step number, average stride, stride variance and the average swinging range is obtained. Considering there exists many behavior fluctuations during the whole moving process, in other words, a behavior fluctuation cannot take place on a bus where all the passengers are sitting, the final stable state of the passively-recognized passenger is set as standing. That is to say, during the process of passive perception, the recognized uninvolved passenger is regarded as walking all the way then stand in the end. Considering the definition of p t is that the probabilities of all postures, we set the probability value of motion ''walk'' satisfying normal distribution during the whole passive perception process. Meanwhile, the probabilities of other motions are set as the same value to ensure the sum of the five probabilities is 1.
Then a process of passive perception is completed. Concatenate p t and g t into a feature vector v t and then combine all the v t as vp,which will be a part of the input in the multipeople LSTM network, as represented in Section 4.6.

F. BUS CROWDEDNESS LEVEL ESTIMATION
To make the best of the information hidden in both active and passive feature vectors, we utilize a deep learning framework based on RNN to estimate the bus crowdedness level. Although both based on semantic relation, RNN can take more early information into consideration than the HMM model. In addition, RNN can handle input data of arbitrary length, which is very suitable for our demand of an uncertain number of sensed passengers on one bus. The framework is shown in Figure.9 The underlying network is a standard LSTM network, then the results will be followed by a softmax function to estimate the bus crowdedness level.
LSTM networks have been successfully used in isolated sequences like handwriting [28] and speech [23]. Inspired by this, we build a LSTM based model for our bus crowdedness level estimation problem as well. We develop one LSTM for each active passenger and estimate crowdedness level as shown in Figure.9.
The LSTM unit is shown in Figure.10 In standard RNN, every unit has an identical and simple structure to try its best  to make use of the information input before while quickly forget the information hidden in the earliest input although repeat in the meanwhile. Thus, the structure of every repeat unit in LSTM is designed to be different and able to analyze the inputs covering longer time periods. The core of the LSTM unit is the cell state, and the information goes through every unit with little linear interaction to keep its invariability. The forget gate decides which part of the information will be discarded from the current cell state and the update gate decides which part of the new input will be updated into the current cell state. Finally based on the results mentioned above and the tanh and sigmoid layer it completes this update action. Then a result via sigmoid and tanh layer will be the output of this part. The cell state continues to be passed once a new input is received. For this paper, we build our LSTM architecture through this hidden layer function L, which is implemented by the following composite functions(Eq.5,Eq.6,Eq.7,Eq.8,Eq.9): However, the naÃŕve use of one single LSTM model per person does not capture the interaction of people on a bus. The original LSTM is agnostic to the influence of other passengers. We address this limitation by connecting all LSTMs through a new shared strategy visualized in Figure.10.

1) SHARING UNIT
We expect the hidden states of an LSTM to capture the timevarying motion-properties and interaction between passengers. In order to obtain the interaction, we share the states between all LSTMs. Hence, we need a compact representation which combines the information from all neighboring states. We handle this by introducing Sharing Units as shown in Figure11. At each time-step, the LSTM cell receives shared hidden-state information from the LSTM cells of other passengers. While sharing the information, we try to preserve the interaction information as shown below.
The hidden state h i t of the LSTM at time t captures the latent representation of the i th active passengers on the bus. We share this representation with other LSTMs by building a shared unit or parameter C t . Given a hidden-state dimension D, and number of active passengers N p , Eq.refeq:hidden is the presentation of C t . We embed the stared unit C t and original feature vector into a new input vector x i t . These embeddings are concatenated and used as the input to the LSTM cell of the corresponding passengers at time t. This introduces the following representation(Eq.11, Eq.12): where φ (.) is an embedding function with ReLU nonlinearity, and W v is an embedding weight. The LSTM weights are denoted by W l . The parameters of the LSTM model are learned by minimizing the negative log-Likelihood loss L i (Eq.13): where φ(·) is an embedding function with ReLU nonlinearity, and W v,c is generated by concatenating W c and W v . Thus W v,c can be recognized with weights of a hidden layer in a LSTM network rather than additional parameters. We jointly back-propagate through multiple LSTMs at every time-step.

2) DATA AUGMENTATION
To improve the performance of the mLSTM network and to prevent overfitting, we have artificially enlarged the scale of training datasets by data augmentation. Data augmentation is the application of one or more deformations applied to the labeled data without changing the semantic meaning of the labels. In our case, we add Gaussian noise with apposite variance to generate a different input feature but with equal semantic information.

3) IMPLEMENTATION DETAILS
At each time-step, we use a dimension of 5 for the motionproperty and 4 for the gait information before using them as input to the LSTM. Also, we embed the shared unit C t into the input. We set the fixed hidden state dimension to be 6 for all the LSTM models. Additionally, we can set C 0 by calculating all passengers' contribution through single-person predicting results.

V. EVALUATIONS
We will evaluate the accuracy of the BCE in this section.
In these experiments, 58 volunteers from Wuhan University were selected to collect data. Each volunteer holds a mobile phone in his hand and collects data. Data was collected including volunteers getting on the bus, getting off the bus, and waiting in line around the bus. Considering that young people give seats to the elderly can significantly affect our VOLUME 7, 2019 experimental results and reduce the accuracy of the method. There are no elderly groups in the volunteers we selected. The bus route map is shown in Figure.12. There were 20 volunteers on each line to collect data, and we collected 2,000 data in one day. The data collection work lasted for two months, and the data covered various car crowdedness situation, taking into account many factors (such as time, traffic, etc.). We tag the data according to the level of crowdedness to detect the accuracy of the BCE method. In addition, we used 70% of the collected data as the training set, 20% as the verification set, and the rest as the test set. The experimental results and related instructions will be shown in the following section.

A. EVALUATION OF POSTURE RECOGNITION 1) MOTION RECOGNITION
The accuracy of SVM, HMM-SVM, and SVM-HMM classifier in this evaluation is shown in Table 1. As shown in Table 1, five motions can be recognized with high accuracy. So, the motion sequence obtained is reliable enough to ensure the validity of the data input into the second layer method.
Since the recognition accuracy for sitting is lower than for standing, the reliability of the samples whose stable state is sitting may be lower than those whose stable state is standing.

2) GAIT RECOGNITION
Upon the data is collected, some hidden information like the actual step numbers and swinging times of the volunteers are recorded in the collected data. The evaluation of gait recognition includes step counting, swinging times counting and stride estimation.

a: STEP COUNTING AND STRIDE ESTIMATION
Since the gait cycle count is the basis for the swinging count and the step size estimation, its accuracy directly affects the subsequent recognition accuracy. The results of step counting are credible with an accuracy over 90%. Howbeit compared with the result in [5], the accuracy of the method we proposed is a little lower. The reason for this situation may be that there is some wrong output from motion recognition, in other words, the data labeled 'walking' may not correspond to the motion walk, which results in the extra or missing steps.
Everyone's true stride is measured in advance. Figure.13 shows the stride estimation results. X-axis presents the serial number of participants.

b: SWINGING TIMES COUNTING
Based on the gyroscope data for each gait cycle, the swinging times counting algorithm also has the problem mentioned in the step counting algorithm. Figure.14 shows the precision and recall level of this algorithm. X-axis presents the serial number of participants. As shown in this figure, since the corresponding gyroscope data can reflect the swinging motion obviously, the recall accuracy stays 100% for the swinging motion. The accuracy is a bit lower as a result of the ignored and extra step caused by the SVM-HMM model's wrong judgment.

B. CROWDEDNESS ESTIMATION 1) SINGLE-PERSON BUS CROWDEDNESS LEVEL CLASSIFICATION
As shown in Figure.15, the BCE achieves different estimating accuracy in different levels of the bus crowdedness. When the level of the bus crowdedness is 3, the BCE has the highest prediction accuracy. The accuracy of level 1 and level 4 indicates that fewer people and more people may have an impact on the estimation and reduce the accuracy. The variance sizes vary from the bus crowdedness level, which is also the smallest when the level is 3. Figure.16 shows that the accuracy of the crowdedness estimation at four different levels is affected by the passengers' walking distance. As shown in Figure.16, the relationship between the accuracy and the distance traveled by participants is non-linear. For four different levels of the crowdedness, the highest accuracy occurs at different walking distance. The longer walking distance of the participants results in a lower accuracy when the bus crowdedness level is 1, but when the level is 4, it can form the highest accuracy. The lowest accuracy, which is over 84%, proves the effectiveness of this part.

2) MULTIPEOPLE BUS CROWDEDNESS LEVEL CLASSIFICATION
According to the experiments result, the average accuracy of the multipeople bus crowdedness level through BCE with passive perception is over 92.8%. Figure.17 shows the accuracy of two multipeople estimations, both are mLSTM networks but one with passive perception involved. As is shown in the figure, the accuracy of mLSTM with passive perception increases more rapidly than the other one when there are several participants. The mLSTM with passive perception performs much better than the other one when the participants are not saturate. With participant people increasing, it also achieves a little higher accuracy than the latter one since passive perception extract more intrinsic relationship between passengers. In addition, as shown in Figure.18, there are 8 participants in the experiment getting on the bus from the head, middle, tail of the waiting team in order. Then we   find the one from the tail performs best in these three cases since the bus crowdedness will be stable in that moment.
As shown in Figure.19, the accuracy of bus crowdedness estimation process will rise obviously with the increment of the number of involved passengers. As the number of data increases, the mLSTM with sharing units performs better, which leads to a higher accuracy of bus crowdedness level estimation than the single-person one. The same as the single-person crowdedness level classification, the accuracy of level 3 is the highest for its less interfere and sufficient information.
As is shown in Figure.20, compared with the accuracy of a monolayer SVM system utilizing raw sensor data and a people counting algorithm based on still images proposed in [4] namely NCE, our system has better performance. The monolayer SVM system has very low accuracy, which means it does not have the ability to estimate the crowdedness level. BCE performs a bit better than NCE due to some limit circumstances, low-quality images caused by dark environment in the night leads to lower average accuracy than BCE. Because of passive perception and mLSTM with sharing units that can capture the relationship between passengers, BCE performs better than HCE [29].

VI. CONCLUSIONS AND FUTURE WORK
This paper proposes a behavior-learning-based method, namely BCE, to estimate the crowdedness level on a bus. Compared with the existing equipment-based methods, BCE only relies on motion sensors in the participatory passengers' smartphone but has better performance. BCE improves HCE by adding passive perception to achieve better accuracy in multi-people bus crowdedness level estimation. The experimental results reveal that the high accuracy motion recognition algorithm based on hierarchical SVM-HMM classifier ensures the input data quality of the gait recognition, which also guarantees the validity of the data input into the gcForest-based single-person crowdedness level estimation. The uninvolved passenger can be recognized passively from the crowdedness information of the passengers who provide information proactively, then all the passengers' crowdedness information is utilized in the three layer mLSTM classifier to estimate the multipeople bus crowdedness. We adopted trajectory data sets generated by over 10000 pieces of sensor data to evaluate our mechanism, and the high accuracy of the results proves the feasibility of our system.
In the BCE, we asked participants to hold their phones and keep the phones parallel to the ground. It makes our system less practical because no one will just hold their phones still. Most of them will text messages, browse news or play games with their phones on the bus. In the future work, we need to further preprocess the contaminated mobile phone attitude data to ensure the extracted features high reliability. In addition, The BCE is only applicable to some traditional buses. The states and postures we defined are constrained to the traditional single-decker buses. We may consider some other activities like going downstairs and upstairs as significant actions if the BCE is built for the double-decker buses. Also, we plan to extend categories of states and postures for different buses to improve the generality and accuracy of BCE.
DA SHEN received the B.S. degree in computer science and technology from the Computer Science School, Wuhan University, in 2017, where he is currently pursuing the master's degree with the Computer Science School, under the supervision of Prof. X. Niu. His research interests include mobile sensing, machine learning, and indoor localization.
ZEJUN ZHANG is currently pursuing the B.S. degree in computer science and technology with Wuhan University. She is the student of Prof. X. Niu whose study interests include mobile sensing, indoor localization, deep learning, and the Internet of Things. And she has studied for more than two years under the guidance of Prof. X. Niu. Her research interests include mobile sensing, indoor positioning, and machine learning. She was a recipient of the National Scholarship of China.
ZHEN WANG received the B.S. degree in computer science and technology from the Computer Science School, Wuhan University, in 2017, where he is currently pursuing the master's degree with the Computer Science School, under the supervision of Prof. X. Niu. His research interests include mobile sensing, machine learning, and indoor localization. VOLUME 7, 2019 JIAWEI WANG received the B.Eng. degree in computer science from the Computer Science School, Wuhan University, in 2017, where he is currently pursuing the master's degree. He is the student of Prof. X. Niu. He is one of the researchers, also made parts of contribution. His research interests include information security, sensor and the Internet of Things, and indoor location.
HAIMING CHEN received the B.Eng. and M.Eng. degrees in computer engineering from Tianjin University, China, in 2003 and 2006, respectively, and the Ph.D. degree in computer science from the Institute of Computing Technology, Chinese Academy of Sciences, in 2010. He is currently an Associate Professor with the Department of Computer Science, Ningbo University. He has authored or coauthored over 50 articles in areas of wireless, ad hoc, sensor networks, and networked embedded computing systems.


Study on Bio-Mimetic Portable Robotic Arm

Copyright © 2019 by author(s) and International Journal of Trend in Scientific Research and Development Journal. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (CC BY 4.0) (http://creativecommons.org/licenses/ by/4.0) ABSTRACT The purpose of the project is to encourage automation in almost every activities which require much labor for the completion of the job. Many industries spend a lot of money and time in hiring the labors to carry out their day to day physical activities like transportation of goods, assembly of delicate components in electronics industry, packaging of products etc. Moreover, a variant of this robot model can be employed in areas which risks the human life for example, in Coal Mines, Deep tunnels within the surface of the earth, Defusing bombs, In other defense works etc. The main purpose of the gripper is to hold the items and place them as per the user requirement. For control system, the model constitutes of a microcontroller whose responsibility is to control the motions of the model, DC motor, Motor Drivers, Servo motors, Potentiometers, Joystick controls.

INTRODUCTION
What is the first thing that comes to mind when you think of a robot? For many people it is a machine that imitates a human-like the androids in Star Wars, Terminator and Star Trek: The Next Generation. However much these robots capture our imagination, such robots still only inhabit Science Fiction. People still haven't been able to give a robot enough 'common sense' to reliably interact with a dynamic world. However, Rodney Brooks and his team at MIT Artificial Intelligence Lab are working on creating such humanoid robots.
The type of robots that you will encounter most frequently are robots that do work that is too dangerous, boring, onerous, or just plain nasty. Most of the robots in the world are of this type. They can be found in auto, medical, manufacturing and space industries. In fact, there are over a million of these type of robots working for us today.
Some robots like the Mars Rover Sojourner and the upcoming Mars Exploration Rover, or the underwater robot Caribou help us learn about places that are too dangerous for us to go. While other types of robots are just plain fun for kids of all ages. Popular toys such as Teckno, Polly or AIBO ERS-220 seem to hit the store shelves every year around Christmas time.
But what exactly is a robot? As strange as it might seem, there really is no standard definition for a robot. However, there are some essential characteristics that a robot must have and this might help you to decide what is and what is not a robot. It will also help you to decide what features you will need to build into a machine before it can count as a robot.
A robot has these essential characteristics: Sensing: First of all your robot would have to be able to sense its surroundings. It would do this in ways that are not un similar to the way that you sense your surroundings.
Giving your robot sensors: light sensors (eyes), touch and pressure sensors (hands), chemical sensors (nose), hearing and sonar sensors (ears), and taste sensors (tongue) will give your robot awareness of its environment.
Movement: A robot needs to be able to move around its environment. Whether rolling on wheels, walking on legs or propelling by thrusters a robot needs to be able to move. To count as a robot either the whole robot moves, like the Sojourner or just parts of the robot moves, like the Canada Arm.
Energy: A robot needs to be able to power itself. A robot might be solar powered, electrically powered, battery powered. The way your robot gets its energy will depend on what your robot needs to do.

IJTSRD23394
International Journal of Trend in Scientific Research and Development (IJTSRD) @ www.ijtsrd.com eISSN: 2456-6470 Page: 1525 Intelligence: A robot needs some kind of "smarts." This is where programming enters the pictures. A programmer is the person who gives the robot its 'smarts.' The robot will have to have some way to receive the program so that it knows what it is to do.

So what is a robot?
Well it is a system that contains sensors, control systems, manipulators, power supplies and software all working together to perform a task. Designing, building, programming and testing a robots is a combination of physics, mechanical engineering, electrical engineering, structural engineering, mathematics and computing. In some cases biology, medicine, chemistry might also be involved. A study of robotics means that students are actively engaged with all of these disciplines in a deeply problem-posing problem-solving environment.

BLOCK DIAGRAM
The above figure refers to the circuit diagram and the working of this robot is as follows. Firstly, the switch of the battery is turned ON to activate the robot and then the program is loaded into the processor.
Then later, when we make any gestures like moving our elbow joints up and down, then by the help of potentiometers connected to the elbow joints, the slider of the potentiometer rotates and this cause a variation in resistance.
The variations in resistance are sent to arduino atmega 2560 through wires which then rotates the servo motor in particular angle accordingly by using a map function which maps the analog potentiometer values to angle values for servo motor. Thus when the servo motors rotates, the mechanism is in such a way that it lifts the robotic arms connected to the servo motors.
When we need to lift some heavy objects, we take the help of joystick module which helps us to close and open the grippers which indirectly means rotates the mini servo motor in particular angle by which the grippers open and close by which holding of objects is done. While the grippers are holding the objects, we can once again move your elbows by which lifting of arms will be performed and then the objects are lifted.
With the help of joystick module we can drive the motors and the robot can be carried to anywhere we want and can place the objects. The main application of this robot finds in industries where the lifting of heavy objects can take place. For example in cargo loading and un-loading. The Arduino Mega 2560 is a microcontroller board based on the ATmega2560 (datasheet). It has 54 digital input/output pins (of which 14 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. The Mega is compatible with most shields designed for the Arduino Duemilanove or Diecimila.

SERVO MOTOR
The servo motor is most commonly used for high technology devices in the industrial application like automation technology. It is a self-contained electrical device that rotate parts of a machine with high efficiency and great precision.

POTENTIOMETER
These resistors can be broadly classified as fixed and variable resistors. As their respective names suggest, a fixed resistor has a single fixed value of resistance, whereas a variable resistor has resistance value over a defined range. Out of the numerous linear and Non-linear variable resistors available, the most common is the Potentiometer.
The value of the resistance can be changed from zero to a defined upper limit, by just manually sliding the contact over a resistive strip. As the resistance changes, the current through the circuit changes and hence according to the ohms law, the voltage across the resistive material also changes.
Since its covert's rotary or linear motion by the operator into a change in resistance (hence a change in electric parameter), it can be called an electro-mechanical transducer. They are passive in nature, therefore dissipate power rather than supplying power to the circuit

JOYSTICK
Joystick is an input device. Analog joystick is sometimes called as Control Stick. It is used to control the pointer movement in 2-dimension axis. The joystick has two potentiometers to read user's input. One potentiometer is used to get the analog output voltage for X-Direction movement and the other potentiometer is used to get the analog output voltage for Y-Direction movement. The potentiometers are connected between +VCC and Ground. They simply behave as Voltage Divider Network.
The joystick has one freewheeling Holder. According to the holder movement, the potentiometer knob changes its position and resistance of the potentiometer.

SOFTWARE DESCRIPTION
A software is a set of instructions and associated documentation that tells a computer what to do or how to perform a task or it mean all the software on a computer, including the applications and the operating system.
Arduino is a prototype platform based on an easy-to-use hardware and software. It consists of a circuit board, which can be programed and ready-made software called Arduino IDE (Integrated Development Environment), which is used to write and upload the computer code to the physical board.
The key features are: Arduino boards are able to read analog or digital input signals from different sensors and turn it into an output such as activating a motor, turning LED on/off, connect to the cloud and many other actions. You can control your board functions by sending a set of instructions to the microcontroller on the board via Arduino IDE. Unlike most previous programmable circuit boards, Arduino does not need an extra piece of hardware (called a programmer) in order to load a new code onto the board. You can simply use a USB cable. Additionally, the Arduino IDE uses a simplified version of C++, making it easier to learn to program. Finally, Arduino provides a standard form factor that breaks the functions of the microcontroller into a more accessible package.

CONCLUSION
Finally, our robot helps to lift the heavy objects which cannot be lifted by normal people by mimicking the actions made by us.
This robot can be easily controlled or driven to where ever required with ease because it is controlled by joystick.

FUTURE SCOPE
This robot can be further extended by adding a GPS sensor by which the robot can go fully wire-less.
By creating algorithms which automatically tells the robot to lift the objects and place them in particular order when a destination or a source is reached.


extfieldsofstudy:
Engineering
Computer Science
Mathematics

text:
Learning the Wireless V2I Channels Using Deep Neural Networks

For high data rate wireless communication systems, developing an efficient channel estimation approach is extremely vital for channel detection and signal recovery. With the trend of high-mobility wireless communications between vehicles and vehicles-to-infrastructure (V2I), V2I communications pose additional challenges to obtaining real-time channel measurements. Deep learning (DL) techniques, in this context, offer learning ability and optimization capability that can approximate many kinds of functions. In this paper, we develop a DL-based channel prediction method to estimate channel responses for V2I communications. We have demonstrated how fast neural networks can learn V2I channel properties and the changing trend. The network is trained with a series of channel responses and known pilots, which then speculates the next channel response based on the acquired knowledge. The predicted channel is then used to evaluate the system performance.

I. INTRODUCTION
Since the first generation (1G) wireless communication network entered the market in the 1980s, the world has been dramatically changed by the development of mobile communication technologies. It has gone through several evolutions in the past few decades, from 1G to 5G, and due to the huge potential demand all over the world, the technology will continue to upgrade rapidly [1]. While 2G, 3G and 4G were about connecting people and parts of things, 5G will connect everything and it can provide unlimited access to anywhere, anytime, anybody and anything [2].
In recent years, orthogonal frequency division multiplexing (OFDM) has become a popular choice for fast-speed and highquality communication systems. However, channel modelling and channel estimation are two major challenges affecting the performance of OFDM systems. In order to estimate the channel response, pilot-based channel estimation is commonly adopted, in which a training sequence composed of known data symbols (pilots) is transmitted, and the channel parameters are initially estimated using the received pilot signals [3]. Minimum mean-square error (MMSE) and least squares (LS) are two traditional estimation approaches.
Vehicle-to-Infrastructure (V2I) communication is about the data transmission between vehicles and infrastructure on the roads. V2I communication system is normally wireless and two-way: infrastructure like traffic lights can provide information to cars and vice-versa. This communication system can provide quantitative and real-time information that can be used for safety, mobility, and environmental benefits. When V2I communications are widely used, revolution of roadways will occur all over the world. For example, self-driving vehicles will become reality and it is vital to make successful and safe autonomous cars. To make this huge change happen, the basic theory and techniques must now be developed urgently.
To enhance the performance of communication systems and to solve signal processing and communications problems, deep learning (DL) has recently drawn utmost popularity [4]- [7]. A deep neural network (DNN) is an algorithm with learning ability and optimization capability that can approximate many kinds of functions. Particularly, problems without any precise numerical model can now be solved using DL methods [8]. In order to leverage the advantages of using a large group of data for communication performance improvement, several machine learning methods including supervised, unsupervised and reinforcement learning have been proposed based on the traditional approaches. The machine learning can be useful in analyzing communication environment variance, making decisions autonomously, transmission routing, network security, and system resource management [6], [8].
Recently, some works have concentrated in the area of channel estimation using DL methods [9]- [13]. The authors in [10], [11] proposed the back propagation (BP) learning algorithm to build a multilayered perceptron (MLP) neural network as an estimator for OFDM communication channels. In [11], a method of implicit channel state information (CSI) estimation and direct recovery of transmission symbols based on deep learning has been proposed. The authors in [12] proposed an approximate information passing network for millimetre-wave massive multiple-input and multiple-output (MIMO) systems based on learned denoising which is a deep learning model that can analyze channel structure and estimate channel from a big training database. In [13], the authors developed a CSI feedback model by spreading a new learned CSI perception and restoration architecture. By learning the spatial features directly and combining the correlation of samples in timevarying MIMO channels, the system greatly improves the quality of recovery and the trade-off between the compression ratio (CR) and the recovery quality [13].
All of the above works [9]- [13] have developed DL-based channel estimation techniques in traditional quasi-stationery wireless communication systems. However, with the trend of high-mobility wireless communications between vehicles and vehicles-to-infrastructure (V2I), many rising problems appear because of the high variances in communication environments, which are fundamentally different from traditional wireless communication problems. For the communication with large Doppler-shift and fast-varying channels, the above methods may not work because in fast time-varying fading environment channel response is difficult to obtain in real time and the outdated CSI exhibits a significant negative impact on the performance. The critical point to fit high-mobility networks is to develop future informatized and intelligent vehicles combined with machine learning to benefit the communication networks [14].
In this paper, we address the adverse effects of imperfect CSI on V2I communication systems by developing a DL-based channel prediction approach. Two major challenges facing V2I channel estimation addressed in this paper are i) the way to find CSI in real-time with the knowledge of vehicle information including position and velocity, ii) the technique to estimate the fast time-variant channel properly and recover the information with minimum error. The major contributions of this paper are as follows: • Firstly, an OFDM modulation based V2I channel estimation technique is introduced as a baseline to verify effectiveness of the DL-based approach. • Secondly, DL-based channel prediction method is proposed to deal with the channel estimation problem in V2I communication system in high-mobility environments. • Thirdly, the performance of the proposed DL-based approach is compared with other common algorithms through extensive numerical simulations.

II. SYSTEM MODEL
We consider a high-mobility vehicular communication system (cf. Fig. 1) in which a vehicle intends to communicate with a roadside infrastructure, which can be a traditional cellular base station (BS), traffic lamppost, building or any other fixed structure. At both BS and the vehicle, only one antenna for transmitting and receiving is considered. For simplification, only 2D horizontal plane is considered where the vehicle travels at a constant speed along a straight road. Hence, at the same position the channel is highly similar even at different time slots, and it can be considered as position related channel estimation which means that change of channel is related to the position of vehicle. The channel power gain between the vehicle at position n and the BS is defined as [15] where G(n) is assumed to be exponentially distributed fast fading power gain, β(n) is the log normal shadow fading component, A is the constant pathloss, d(n) is the distance between the vehicle and the BS, and γ is the pathloss exponent. For a frequency-selective multipath fading channel, the channel impulse response (CIR) is given by where L is the total number of multipath component and φ l , τ l , and α l = where c = f c λ c is the speed of light, λ c is the wavelength of the arriving plane wave (carrier signal), τ l = d l /c, d l is the length of the lth path, and f D,l is the maximum Doppler shift of the lth propagation path. For OFDM transmission, the mth modulated time domain symbols can be expressed as where X m (l) is the mth modulated symbol, n is the subcarrier index and N is the total number of subcarriers. Cyclic prefix is then appended to the symbols to prevent inter-symbol interference (ISI). The signals are then transmitted through the wireless channel and the signal received at the BS can be expressed as where ⊗ indicates the convolution operation and w m (n) is the additive white Gaussian noise for the mth subcarrier. At the receiver, the cyclic prefix is removed first from the received signal, followed by parallel conversion to frequency domain by applying fast Fourier transform: Thus in the frequency domain, the input-output relationship can be expressed as Consequently, the system can be described as a set of N independent parallel Gaussian channels: For convenience, we rewrite (10) using matrix notations as [3] y = XFg + w, is the DFT matrix with F n,k = 1 √ N e −j2πnk/N . The objective of this study is to estimate the CIR H m (k) from the observation of Y m (k) with known pilot signal X m (k). In the following, we will first discuss the conventional channel estimation approaches, and then develop a deep learning based channel estimation algorithm for the V2I system (7).

III. CONVENTIONAL CHANNEL ESTIMATION TECHNIQUE
In conventional communication systems, both blind and non-blind channel estimation techniques have been considered for estimating the CIR. Popular channel estimation algorithms include maximum likelihood (ML), least mean square (LMS), minimum mean square error (MMSE) and least square (LS) methods. These methods have been studied thoroughly to estimate CSI within a certain time and frequency range. Although the LS algorithm has a worse performance in timevarying environments compared to the other approaches, its implementation is very simple. On the other hand, the MMSE algorithm can be well-behaved in all general fading channels with both frequency and time selectivity.

A. The LS Algorithm
The LS algorithm tries to minimize the squared error (i.e., Euclidian distance) between the transmitted and the received signals which is expressed as Taking the derivative of (12) and equating the derivative to 0, the LS estimate of the channel frequency response is given bŷ Since the optimal training sequence is orthonormal [17], [18], eventually reduces tô B. The MMSE Algorithm The MMSE channel estimator takes the effect of channel noise into consideration. Meanwhile, the MMSE estimate of g is given byĝ are the corresponding covariance matrices and σ 2 w is the noise variance E |w k | 2 . Since the columns of F in (11) are orthonormal, the frequency-domain MMSE estimate of h is given by [3] h

IV. PROPOSED MACHINE LEARNING APPROACH
It has been shown in [11] that a multi-layer neural network (MLNN) can provide a very good approximation of channels. Hence in the following, we propose a deep learning based V2I channel estimation algorithm using back propagation technique.

A. Defining the Neural Network
As shown in Fig. 2, the neural network contains two inputs and two outputs and n h hidden nodes. The inputs to the network are the received signals, and the estimated channel response parameters are the outputs. The two inputs and outputs of the MLNN are connected to the real and imaginary components of the corresponding complex numbers, since neural networks work only with real numbers.
For the machine learning based channel estimation scheme, we consider a supervised learning approach which estimates the CIRs using a fully connected neural network. Note that we do not consider any bias inputs to the neurons at any layer. We apply sigmoid function for the activation of the hidden neurons, while the activation function at the output layer is linear. The output of each neuron is generated by computing the weighted sum of the inputs coming into that node and then applying the activation function.
Let us now assume that w (1) i,j is the ith input to jth hidden neuron weight and w (2) j,k is the jth hidden node to the kth output node weight. The hidden layer activation function is the sigmoid function Thus, the hidden layer output is defined as i,j , n in is the number of input layer nodes and X in i is the ith input to the DNN. Similarly, each output node computes its net output as j,k . Then, the sum of weighted inputs to the nodes is applied to the output layer activation function which is assumed to be a linear function. Thus the network outputs can be calculated as

B. Training the Neural Network
In training process, the weights of all the layers are adjusted according to the mismatches between the outputs and the targets. In each epoch, the direction of changes are that tending to minimize the mean-squared error (MSE). Accordingly, we define the cost function as the MSE between DNN output and the target output as where t k is the kth desired output and n o is the number of outputs (2 in this case). The gradient descent based back propagation learning rule is exploited to optimize the weights for improving the DNN performance. The gradient descent method minimizes the cost function ε by updating the weights in the opposite direction of the gradient of the objective function w.r.t. to the weights [19]. Thus the weight update in each iteration is given by where 0 < η < 1 is the learning rate that determines the size of the steps in each iteration. Thus the update of hidden-tooutput-layer weights can be expressed as Note that the gradient of output layer activation function is always unity. Similarly, the back propagated updates of the input-to-hidden-layer weights can be expressed as For training the DNN, we first generate a large set of pilot symbols following a particular modulation scheme. We then use a series of historical channel responses between moving vehicle and BS for optimizing the weights of the neural network. The training process continues until the target accuracy is reached. The overall training procedure is summarized in Fig. 3.

V. NUMERICAL SIMULATIONS
In this section, we perform numerical simulations to demonstrate the effectiveness of the proposed machine learning based channel estimation method for wireless V2I communications. Throughout this section, we compare the performance of the proposed approach against the conventional LS and MMSE based estimation schemes in [3]. We first demonstrate the estimation accuracy of the DNN method considering a lowmobility environment. We then test the trained DNN performance for V2I channel estimation.
We assume that the multipath V2I channel has time delays and data is transmitted using 4-QAM modulation. The neural network is designed to have a single hidden layer with 10 neurons and single output layer with two nodes. Sigmoid and linear activation functions has been utilized in the hidden layer and the output layer, respectively. The DNN algorithm is implemented in two ways. The first one is built from sketch using the structure illustrated in Section IV (identified as 'build' in the figures), and the second one is implemented based on the ANN toolbox in MATLAB, whose performance has also been compared in simulations where applicable. Fig. 4 shows the performance of the proposed DNN approach in the training process according to normalized MSE at different SNR environment. We run for 20 epochs for each training data set and It is clear that the error between network outputs and the targets is being minimized as the training progresses. It can also be found that with higher SNR, which  means the noise power is low compared with signal power, the error of the estimated channel response becomes lower.
Then, Fig. 5 compares the bit error rate (BER) performances of all the methods. It can be seen that the LS algorithm results in the worst behaviour compared to the others and it cannot correctly estimate the channel especially when SNR is very low. From this figure it is clear that the performance of proposed back propagation DNN approaches are much better than the LS algorithm at low SNR values as well as high SNR values. The results also show that both DNN approaches perform close to each other in a low-mobility environment, and are very close to the MMSE algorithm. Obviously, the MMSE algorithm performs the best according to the simulation results.
Next, simulations of a V2I wireless communication system in a fast time-varying fading channel are carried out to demonstrate the performances of different channel estimation methods. Figs. 6 to 9 show the training process of DNN for V2I channel prediction. In these simulations, the entire data set is divided into three subsets namely: training (70%), validation (15%) and testing (15%), respectively. During the training process, the MSE reduces sharply and the best estimate is  achieved at the 49th epoch with the minimum error distribution. Fig. 8 shows the histogram of each subset. From Fig. 9, it can also be seen that the outputs fit the targets very well.
Finally, we plot the BER performance of the algorithms in Fig. 10. It can be seen from the results that the BER performance of the traditional DNN methods is significantly worse than the other methods. The reason for this is that the channel estimation in V2I communication is influenced by many factors, such as fast variation of channels, large Dopplershift, high interference and noise. These results further justify the effectiveness of the proposed DL-based approach for V2I channel estimation.

VI. CONCLUSION
We have introduced a deep learning based channel estimation approach for V2I wireless communication systems. We have demonstrated that the channels in high-mobility environment can be estimated using DNN based prediction methods with a group of historical CIR to solve the outdated CSI problem. Extensive simulation results illustrate that the proposed channel prediction method is able to dramatically   improve the performance of channel estimation in particular in high-mobility environment. Considering the nonuniform movement of vehicles, including variant position and changing velocity in the training process of DNN can be an interesting future work.