Ultra-Dense Edge Caching under
Spatio-Temporal Demand and Network Dynamics
This paper investigates a cellular edge caching design under an extremely large number of small base stations (SBSs) and users. In this ultra-dense edge caching network (UDCN), SBS-user distances shrink, and each user can request a cached content from multiple SBSs. Unfortunately, the complexity of existing caching controls’ mechanisms increases with the number of SBSs, making them inapplicable for solving the fundamental caching problem: How to maximize local caching gain while minimizing the replicated content caching? Furthermore, spatial dynamics of interference is no longer negligible in UDCNs due to the surge in interference. In addition, the caching control should consider temporal dynamics of user demands. To overcome such difficulties, we propose a novel caching algorithm weaving together notions of mean-field game theory and stochastic geometry. These enable our caching algorithm to become independent of the number of SBSs and users, while incorporating spatial interference dynamics as well as temporal dynamics of content popularity and storage constraints. Numerical evaluation validates the fact that the proposed algorithm reduces not only the long run average cost by at least 24% but also the number of replicated content by 56% compared to a popularity-based algorithm.
Upcoming 5G systems are expected to become ultra-dense networks (UDNs) due to relentless user demand growth , . Limited backhaul capacity is however unable to cope with a huge number of small base stations (SBSs) in a UDN. In this respect, edge caching is a promising UDN enabler that alleviates backhaul congestion by storing popular content during off-peak hours at the network edges, i.e. SBSs – , yielding to an ultra-dense edge caching network (UDCN). This paper aims at proposing a UDCN caching control algorithm by solving the following three fundamental issues in UDCNs.
1. Caching control complexity. Edge caching network performance relies on how much amount of users request the content cached in SBSs, i.e. cache hits. If user demand is fully correlated, caching the most popular files would be an optimal control policy. However, user demand in reality is heterogeneous, and therefore leads to the fundamental trade-off in the edge caching: maximizing individual user’s cache hits while minimizing replicated content caching at SBSs. Solving this trade-off in a centralized manner is too complicated to be implemented in practice, so preceding works suggest semi-distributed caching control algorithms where each SBS only exploits the local caching decisions of neighboring SBSs . Unfortunately, the number of neighboring SBSs in a UDCN is much larger than that of a traditional network, and thus existing algorithms are computationally infeasible under ultra-dense SBS environment. To make these worse, the following two spatio-temporal aspects of UDCNs further increase the caching control complexity.
2. Temporal dynamics of user demand. Content popularity among users evolves over time, so demand prediction error exists when caching files at SBSs. Minimizing this prediction error straightforwardly brings about huge complexity increase, but nevertheless UDCN caching control cannot overlook this misprediction impact. The reason is that numerous users amplify individual misprediction loss in a UDCN. A large number of SBSs also lead to significant redundant caching due to misprediction, increasing congestion at both backhauls and cache storages.
3. Spatial dynamics of interference. In the downlink, interference amount and variance increase linearly with the number of SBSs . This significant impact of interference should thus be carefully considered in UDCN caching control design. Many preceding works apply somewhat simplified interference modelings such as the average interference  with fixed SBS locations. Incorporating the interference distribution that specifies random locations of SBSs however incurs additional complexity in UDCN caching control.
On the basis of these issues, our objective is to propose a UDCN caching control algorithm that incorporates spatio-temporal demand, cache storage and interference dynamics with low computational complexity while minimizing the long run average (LRA) cost. The cost is defined such that it increases with (i) backhaul use, (ii) cache storage use, and (iii) content replication, while decreasing with (iv) spectral efficiency.
To this end, we tackle the aforementioned triple difficulty in reverse order by using stochastic geometry (SG) and mean-field game (MFG) theory. SG first plays a key role to specify the interference dynamics at a randomly selected user, i.e. a typical user. In UDNs, the interference normalized by BS densification becomes deterministic , , which allows us to simplify the spatial dynamics of UDCNs. Based on this result, MFG captures temporal dynamics of demand and its corresponding caching behavior by using two partial differential equations (PDEs), Hamilton-Jacobi-Bellman equation (HJB) and Fokker-Planck-Kolmogorov equation (FPK). In a UDCN, remarkably, no matter how many SBSs and users exist, only a single pair of HJB-FPK can describe the entire caching control and the resultant LRA cost dynamics , achieving fixed computational complexity. Solving these HJB and FPK equations provides the desired optimal UDCN caching control.
Related works. A recent study on caching  considers interference dynamics using SG for the spatial domain. Caching policy adaptive to time-varying user request  is proposed to enhance the local caching gain. The authors of  considered temporal dynamics of SBSs’ states, replicated contents, and interference on caching control in UDN environment. They, however, neglected temporal evolution of content popularity and spatial dynamics of interference determined by user locations. None of the works on caching jointly considers the spatio-temproal dynamics of user demand and network (interference and SBSs’ backhaul and storage capacities) in ultra-dense scenarios.
Under these spatio-temporal dynamics, it is hard to improve the caching gain while minimizing the replicated content caching . The replication problem becomes more severe in UDCN, since the increased number of candidate SBSs serving the same user induces that only one of them transmits the cached data. Furthermore, the amount of replicated contents varies according to the aforementioned dynamics. A caching strategy dealing with the dynamically evolving replication remains an open problem in UDNs.
Contributions. The contributions of this paper are summarized as below.
A novel caching control algorithm for UDCNs is proposed, which minimizes LRA cost while incorporating spatio-temporal demand and interference dynamics with fixed computational complexity, independent of the numbers of SBSs and users (see Proposition 1). Specifically, the algorithm does not need to get full knowledge of other SBSs’ caching strategies or storage states.
The proposed algorithm’s gains in LRA cost and replicated contents are numerically validated (Figs. 5 and 6).
The unique mean-field equilibrium (MFE)  is verified by numerical evaluation (Fig. 4) as well as by analysis (Proposition 1).
Ii Network model and spatio-temporal dynamics
Ii-a Ultra-dense network
We consider a UDN with SBS density and user density . Their locations follow independent homogeneous Poisson point processes (PPPs), respectively. We set , according to the definition of UDN . User receives signals from SBSs within a reception ball centered at with radius , which represents the average distance that determines a region where the received signal power is larger than noise floor, as depicted in Fig. 1. When goes to infinity, the reception ball model is identical to a conventional PPP network.
Transmitted signals from SBSs experience path-loss attenuation. The attenuation from the -th SBS coordinates to the -th user coordinates is , where is the path-loss exponent. The transmitted signals experience independent and identically distributed fading with the coefficient . We assume that the coefficient is not temporally correlated. The channel gain from SBS to user is . The received signal power is given as , where denotes transmit power of an SBS.
The SBS directionally transmits signal by using number of antennas. Its beam pattern at a receiver follows a sectored uniform linear array model  where the main lobe gain is with beam width assuming that side lobes are neglected and the beam center points at the receiver.
Ii-B Edge caching model
Let us assume that there is a set consisting of SBSs within the reception ball with radius . Each SBS has data storage unit size assigned for content . The storage units allow SBSs to download contents a priori from a server connected with non-ideal backhaul link as depicted in Fig. 1. We assume that there is a set consisting of contents, and the server has all the contents files in the set . Users request content from the contents set with probability , and the size of the content is denoted by . The goal of SBS is to determine a vector of caching probabilities , where is a probability that SBS downloads content through its own backhaul link at time . The control variable can also be interpreted as a fraction of the file in case that each content file is encoded using a maximum distance separable dateless code .
According to the definition of UDN, multiple SBSs can serve a user  unlike traditional unidentified networks as show in Fig. 1. We assume that a reference user is associated to one of the SBSs storing the requested content within the threshold distance . If there are multiple SBSs having the same content within the region, the serving SBS is randomly chosen. If no SBS has cached the requested content, one of the SBSs within fulfills the user request by downloading it from the server through the backhaul.
Ii-C Spatio-temporal dynamics of user demand and network
Evolution law of time-varying content popularity. The probability that users request a content, representing popularity, varies over time in reality. We use Ornstein-Uhlenbeck process  to model this temporal fluctuation as a stochastic differential equation (SDE):
where is the probability that users request content at time , and respectively denote popularity increment and decrement for content , is a positive constant, and is a Wiener process.
Temporal dynamics of cache storage size. The remaining cache storage capacity varies according to the instantaneous caching policy. Let us assume that SBS discards content files at a rate of in order to make a space for downloading other data. Considering the discarding rate, we model the evolution law of storage unit as follows
where denotes the remaining storage size dedicated to content of SBS at time , and is data size of content . represents instant data size of content downloaded by SBS at time .
Spatial dynamics of interference. In UDN, an SBS having no associated user within its coverage becomes dormant, not transmitting any signal. Locations of users determine activation of SBSs, characterizing spatial distribution of interference. Consider a randomly selected typical user. We assume that active SBSs have always data to transmit regardless of their own caching policy. It indicates that the aggregate interference is imposed by active SBSs with active probability . Assuming that is homogeneous over SBSs yields . It provides that density of arbitrary interfering SBSs is equal to . Then, active SBSs’ coordinates, consisting a set , determine dynamics of interference .
The signal-to-interference-plus-noise (SINR) with number of transmit antennas is
In the following section, we present the spatially averaged version of .
Iii Problem Formulation
The goal of each SBS is to determine its own caching probability for content in order to minimize a long run average (LRA) cost. The LRA cost is determined by other SBSs’ caching policies, states of content request probability, wireless channel, backhaul capacity, and remaining storage size. Caching strategies of other SBSs also vary according to the spatio-temporal dynamics.
Iii-a Interactions: Replication and Interference
There are inherent interactions among SBSs with respect to their own caching strategies. These interactions depend on replicated contents and interference, which are major bottleneck for optimizing distributed caching. Our purpose is to estimate these interactions in a distributed fashion without full knowledge of other SBSs’ states or actions.
Replication. As shown in Fig. 1, there may be replicated contents downloaded by multiple SBSs within . The overlapping contents increase redundant cost due to inefficient resource utilization . It is worth noticing that the number of replicated contents is determined by other SBSs’ caching strategies. We define the replication function as the expected value of the overlapping content size per unit storage size .
where is a vector of caching probabilities of all the other SBSs except SBS , and denotes the number of contents whose request probability is asymptotically equal to that of content . Specifically, is the cardinality of a set where is sufficiently small.
Interference. Interactions among SBSs through interference can be bottlenecks for optimizing distributed caching. To incorporate this spatial interaction, we adopt an analysis of  on interference in UDN. It provides , the interference normalized by SBS density and the number of antennas as follows:
It gives us an average downlink spectral efficiency (SE) in UDN as follows:
where is the noise power. Eq. (7) allows us to investigate the effect of interference on the upper bound of an average SE.
Iii-B Cost Functions
An instantaneous cost function defines the LRA cost. It is affected by backhaul capacity, remaining storage size, spectral efficiency, and overlapping contents among SBSs. SBS cannot download more than , the allocated backhaul capacity for downloading content at time . If , the backhaul cost is model as . Otherwise, the cost function goes to infinity, preventing the download rate of content from exceeding the available backhaul rate. This form of cost function is widely used as in .
As cached content files occupy the storage, it causes processing latency  or delay to search requested files by users. We consider this storage cost as follows:
Then, the global instantaneous cost is
With this cost function, we define an average total cost over the long run, called long run average (LRA) cost.
Iii-C Stochastic Differential Game for Edge Caching
The state of SBS and content at time is defined as , . The stochastic differential game (SDG) for edge caching is defined by where is the state space of SBS and content , is the set of all caching controls admissible for the state dynamics, and is the LRA cost over a time window defined as follows:
where is the cost of having a remaining storage size at the end of the time window . Thus, the SDG is formulated as follows:
The existence of a Nash equilibrium of problem P1 is guaranteed if there exists a joint solution of the following coupled HJB equations for all and :
If the smoothness of the drift functions (A) and (B) in the dynamic equation (14) and the cost function (9), we can assure that a unique solution of the equation (14) exists . Unfortunately, it is complex to solve the coupled HJB equations. We thus release complexity of this system in the next section.
Iii-D Mean-field Game for Caching
It is hard to react to each individual SBS’s caching strategy in solving the SDG P1. Mean-field game (MFG) theory enables us to transform these multiple interactions into a single interaction, called MF interaction, via MF approximation. According to , this approximation holds under the following conditions: a large number of players, excahngeability of players under the caching control and finite MF interaction.
Remark that the first condition corresponds to the definition of UDNs. Players in the SDG are said to be exchangeable or indistinguishable under the control and the states of players and contents, if the player’s control is invariant by their indices and decided by only their individual states. In other words, permuting players’ indices cannot change their control policies. Under this exchageability, we can focus on a generic SBS by dropping its index .
Respective MF interactions (5) and (6) should asymptotically converge to a finite value under the above conditions. MF replication (5) goes to zero when the number of contents per SBS is extremely large, i.e. . Such a condition implies that the cardinality of the set consisting of asymptotically equal content popularity goes to infinity. In other words, goes to infinity yielding that becomes zero. In terms of interference, MF interference converges as the ratio of SBS density to user density goes to infinity, i.e. . Such a condition corresponds to the notion of UDN  or massive MIMO (). That is, the conditions enabling MF approximation to inherently hold under ultra-densified caching networks.
To approximate interactions from other SBSs, we need a state distribution of SBSs and contents at time , called MF distribution . It is defined by a counting measure . We assume that the empirical distribution converges to , which is the density of contents and SBSs in state . Note that we omit the SE from the density measure to only consider temporally correlated state without loss of generality.
The MF distribution is a solution of the following Fokker-Planck-Kolmogorov (FPK) equation.
Let us denote the solution of the FPK equation (15) as . Exchangeability and existence of the MF distribution allow us to approximate the interaction as a function of as follows:
Remark that we can estimate the interaction from replication (16) without observing other SBSs’ caching strategies. Thus, it is not necessary to have full knowledge of the states or the caching control policies of other SBSs. It provides that an SBS only need to solve a pair of equations, the FPK equation (15) and the following modified HJB one from (14):
We can solve this equation in backward and find the solution of the stochastic optimization problem P1. It is worth mentioning that the number of PDEs to solve for one content is reduced to two from . The respective processes of solving P1 in ways of SDG and MFG are depicted in Fig. 2.
Proposition 1. The optimal caching probability is given by:
The optimal caching probability is calculated by water-filling fashion, where the allocated backhaul capacity determines the water level. Noting that SE increases with the number of antenna and SBS density , SBSs cache more contents from server when wireless capacity is improved. The partial derivative implies the effect of the current decision on the final LRA cost.
The respective solutions and of (15) and (17) define the mean field equilibrium (MFE) which corresponds to the notion of Nash equilibrium in the MFG framework . Note that existence and uniqueness of the optimal caching control is guaranteed. It verifies that the optimal caching algorithm converges to a unique MFE, when the initial conditions , , and are given.
The optimal caching algorithm in Proposition 1 becomes more tractable when each SBS affords high storage capacity enough to ignore cost for storage usage. Thus, we can obtain the following corollary of Proposition 1.
Corollary 1. When the storage capacity is sufficiently high (), the optimal caching control is given by
where is a constant. Proof: When the storage capacity goes to infinity, the instantaneous cost function for storage usage (8) is given as follows: Hence, the partial derivative of LRA cost with respect to the remaining storage size also has a constant value of .
It is worth noticing that the optimal caching control becomes independent from the LRA cost dynamics with respect to the storage state.
Iv Numerical Results
In this section, we present numerical results for cases in which content request probability remains static and temporally varies according to its evolution law (1). Let us assume full knowledge of contents request probability and their evolution laws. The initial distribution of the SBSs is given as a normal distribution . We assume that the storage size belongs to a set . Assuming Rayleigh fading with mean one, we set the parameters as follows: .
Iv-a Static content request probablity
We numerically analyze the algorithm performance when the content request probability is static. In this case, the problem becomes simplified, because the caching control strategies does not depend on the evolution law of the content popularity. Specifically, in HJB (17) and FPK (15) equations, the derivative terms with respect to content request probability become zero.
Fig. 3 shows the evolution of the optimal caching probability for a content with respect to storage state. We observe that the value of is lower than the content request probability at all time slots and decreases when available storage space becomes small. The reason is that SBSs restrain replication of the content and save storage capacity for downloading more popular contents.
Fig. 4 represents evolutions of MF distribution for a content with different popularity. Note that indicates the density of SBSs whose unoccupied storage size is equal to at time . We observe that the unoccupied storage space of SBSs does not diverge from each other. It validates that the proposed algorithm achieves the MFE. In this equilibrium, the amount of downloaded content file decreases when the content popularity becomes low. This tendency corresponds to the trajectory of the optimal caching probability in Fig. 3. Almost every SBS has downloaded the content over time, but not spent its whole storage. The remaining storage saturates even though the content popularity is equal to . It implies that SBSs reduce the downloading amount of the popular content in consideration of the expected replication amount, which increases with the popularity.
Iv-B Dynamic content request probablity
We investigate the performance of the proposed MF caching algorithm under temporal dynamics of the content popularity (1). Note that the temporal dynamics constrains the optimal caching strategy to follow the optimal trajectory , a set of solutions to the coupled equations (17) and (15).
Fig. 5 shows the LRA cost of the proposed MF caching algorithm compared to results of a popularity based algorithm and random caching one. The blue dot in the figure indicates the minimal LRA cost obtained by an exhaustive search. A slight disagreement between the proposed and exhaustive algorithm by full search appears from two reasons; one is that each segment size of time and storage capacity is not infinitesimal, leading to inaccurate partial derivative values, and the other is the finite number of SBSs. Nevertheless, the proposed caching strategy reduces about of the LRA cost as compared to an algorithm that determines caching probability in proportional to the request probability. This performance gain results from allowing the system to avoid the expected replication of contents and interference varying according to the spatio-temporal dynamics.
Fig. 6 shows the amount of replicated contents per storage usage as a function of initial content probability . The proposed MF caching algorithm reduces caching content replication averagely 56% compared to popularity based caching. However, MF caching algorithm yields the higher amount of replication than random caching does when the content request probability becomes high. The reason is that the random policy downloads contents regardless of their own popularity, so the amount of replication remains steady. On the other hand, MF caching increases the downloaded volume of popular contents.
V Concluding Remarks
In this paper, we proposed an edge caching algorithm for ultra-dense edge caching networks (UDCNs), taking into account the spatio-temporal user demand and network dynamics. Leveraging the frameworks of MFG theory and SG, our algorithm enables SBSs to distributively determine their own caching strategy without full knowledge of other SBSs’ caching strategies or storage state. The proposed MF caching algorithm reduces not only the long run average cost but also the replicated content amount compared to a caching control that is merely based on content popularity. Future work can extend to an optimal caching strategy to cope with imperfect knowledge of content popularity dynamics.
Vi Appendix: Proof of Proposition 1
The optimal control strategy is the argument of the infimum term of the HJB equation (14).
Solving (20) for all time is immediate by convexity of the objective function, of which the critical point is the unique optimal control calculated as described in (18). Note that is a function of the solutions of the equations (15) and (17). The expression of (18) provides the final versions of the HJB and FPK equations composing MFG as follows:
From these equations, we can find the values of and . Note that the smoothness of the drift functions and in the dynamic equation and the cost function (9) assures the uniqueness of the solution .
This research was supported by the Korean government through the National Research Foundation (NRF) of Korea Grant (NRF-2014R1A2A1A11053234), the Institute for Information & communications Technology Promotion (IITP) grant funded by the Korea government (MSIP) (No. 2015-0-00294, Spectrum Sensing and Future Radio Communication Platforms), the Academy of Finland CARMA project, the FOGGY project and the ERC Starting Grant 305123 MORE (Advanced Mathematical Tools for Complex Network Engineering).
-  M. Kamel, W. Hamouda, and A. Youssef, “Ultra-Dense Networks: A Survey,” IEEE Commun. Surveys Tuts., vol. 18, no. 4, pp. 2252–2545, Fourth quarter. 2016.
-  S. Samarakoon, M. Bennis, W. Saad, M. Debbah, and M. Latva-aho, “Ultra Dense Small Cell Networks: Turning Density Into Energy Efficiency,” IEEE J. Sel. Areas Commun., vol. 34, no. 5, pp. 1267–1280, May. 2016
-  E. Baştuǧ, M. Bennis, and M. Debbah, “Living on the Edge: The Role of Proactive Caching in 5G Wireless Networks,” IEEE Commun. Mag., vol. 52, no. 8, pp. 82-89, Aug. 2014.
-  K. Poularakis, G. Iosifidis, V. Sourlas, and L. Tassiulas, “Exploiting Caching and Multicast for 5G Wireless Networks,” IEEE Trans. Wireless Commun., vol. 15, no. 4, pp. 2995–3007, Apr. 2016.
-  S. Tamoor-ul-Hassan, M. Bennis, P. H. J. Nardelli, and M. Latva-aho, “Caching in Wireless Small Cell Networks: A Storage-Bandwidth Tradeoff,” IEEE Commun. Lett., vol. 20, no. 6, pp. 1175–1178, Jun. 2016.
-  T. Wang, L. Song, and Z. Han, “Dynamic Femtocaching for Mobile Users,” Proc. IEEE Wireless Commun. and Netw. Conf. (WCNC), pp. 861–865, Mar. 2015.
-  M. Haenggi, “Stochastic Geometry for Wireless Networks,” Cambridge Univ. Press, 2012.
-  D. Liu and C. Yang, “Will Caching at Base Station Improve Energy Effi- ciency of Downlink Transmission?,” Proc. IEEE Global Conf. Signal Inf. Process. (GlobalSIP), pp. 173–177, 2014.
-  J. Park, M. Bennis, S.-L. Kim, and M. Debbah, “Spatio-Temporal Network Dynamics Framework for Energy-Efficient Ultra-Dense Cellular Networks,” Proc. IEEE Global Commun. Conf. (GLOBECOM), Washington, D.C., Dec. 2016.
-  J. Park, S. Y. Jung, S.-L. Kim, M. Bennis, and M. Debbah, “User-Centric Mobility Management in Ultra-Dense Cellular Networks under Spatio-Temporal Dynamics,” Proc. IEEE Global Commun. Conf. (GLOBECOM), Washington, D.C., Dec. 2016.
-  O. Guéant, J.-M. Lasry, and P.-L. Lions, “Mean field games and applications,” ParisPrinceton Lectures on Mathematical Finance 2010, Springer Berlin Heidelberg, pp. 205–266, 2011.
-  B. Perabathini, E. Baştuǧ, M. Kountouris, M. Debbah, and A. Conte, “Caching at the Edge: a Green Perspective for 5G Networks,” Proc. IEEE Int. Conf. on Commun. (ICC), London, UK, Jun. 2015.
-  M. Gregori, J. Gómez-Vilardebó, J. Matamoros and D. Gündüz, “Wireless Content Caching for Small Cell and D2D Networks,” IEEE J. Sel. Areas Commun., vol. 34, no. 5, pp. 1222–1234, May. 2016.
-  K. Hamidouche, W. Saad, M. Debbah, and H. V. Poor, “Mean-Field Games for Distributed Caching in Ultra-Dense Small Cell Networks,” Proc. 2016 American Control Conf. (ACC), Boston, MA, USA, Jul. 2016.
-  B.-G. Chun, K. Chaudhuri, H. Wee, M. Barreno, C. H. Papadimitriou, and J. Kubiatowicz, “Selfish Caching in Distributed Systems: A Game-Theoretic Analysis,” Proc. ACM Symp. Principles of Distributed Computing, pp. 21-30, Jul. 2004.
-  J. Park, S.-L. Kim, and J. Zander, “Tractable Resource Management with Uplink Decoupled Millimeter-Wave Overlay in Ultra-Dense Cellular Networks,” IEEE Trans. Wireless Commun., vol. 15, no. 6, pp. 4362–4379, Jun. 2016.
-  K. Venugopal, M. C. Valenti, and R. W. Heath, Jr, “Interference in Finite-Sized Highly Dense Millimeter Wave Networks,” Proc. Inform. Theory and Applicat. Workshop (ITA), Feb. 2015
-  V. Bioglio, F. Gabry and I. Land, “Optimizing MDS Codes for Caching at the Edge,” Proc. IEEE Global Commun. Conf. (GLOBECOM), San Diego, CA, USA, Dec. 2015.
-  F. Mériaux, S. Lasaulce, and H. Tembine, “Stochastic Differential Games and Energy-Efficient Power Control,” Dyn. Games and Appl., vol. 3, no. 1, pp.3–23, Mar. 2013.
-  S. M. Yu and S.-L. Kim, “Downlink Capacity and Base Station Density in Cellular Networks,” Proc. IEEE WiOpt Workshop on Spatial Stochastic Models for Wireless Networks (SpaSWiN 2013), May. 2013.
-  Y. cao, M. Tao, F. Xu, and K. Liu, “Fundamental Storage-Latency Tradeoff in Cache-Aided MIMO Interference Networks,” available at: http://arxiv.org/pdf/1609.01826v1.pdf.
-  B. Oksendal, Stochastic Differential Equations. Springer, 2003.