Distributed user-centric scheduling for visible light communication networks

Visible light communication (VLC) networks, consisting of multiple lightemitting diodes (LEDs) acting as optical access points (APs), can provide low-cost highrate data transmission to multiple users simultaneously in indoor environments. However, the performance of VLC networks is severely limited by the interference between different users. In this paper, we establish a distributed user-centric scheduling framework based on stable marriage theory, and propose a novel decentralized scheduling method to manage interference by forming flexible amorphous cells for all users. The proposed scheduling method has provable low computational complexity and requires only the exchange of a few 1-bit messages between the APs and the users but not the feedback of the channel state information of the entire network. We further show that the proposed method can achieve both user-wise and systemwise optimality as well as a certain level of fairness. Simulation results indicate that our decentralized user-centric scheduling method outperforms existing centralized approaches in terms of throughput, fairness, and computational complexity. © 2016 Optical Society of America OCIS codes: (060.4510) Optical communications; (200.3050) Information processing; (230.3670) Light-emitting diodes; (060.4256) Networks, network optimization. References and links 1. T. Komine and M. Nakagawa, “Fundamental analysis for visible-light communication system using LED lights,” IEEE Trans. Consum. Electron. 50(1), 100–107 (2004). 2. S. Wu, H. Wang, and C. H. Youn, “Visible light communications for 5G wireless networking systems: from fixed to mobile communications network,” IEEE Networks 28(6), 41–45 (2014). 3. H. Elgala, R. Mesleh, and H. Haas, “Indoor optical wireless communication: potential and state-of-the-art,” IEEE Commun. Mag. 49(9), 56–62 (2011). 4. Z. Ghassemlooy, W. Popoola, and S. Rajbhandari, Optical Wireless Communications: System and Channel Modeling with MATLAB (CRC Press, 2012). 5. S. Zhang, S. Watson, J. J. McKendry, D. Massoubre, A. Cogman, E. Gu, R. K. Henderson, A. E. Kelly, and M. D. Dawson, “1.5 Gbit/s multi-channel visible light communications using CMOS-controlled GaN-based LEDs,” J. Lightwave Technol. 31(8), 1211–1216 (2013). 6. G. Cossu, A. Khalid, P. Choudhury, R. Corsini, and E. Ciaramella, “3.4 Gbit/s visible optical wireless transmission based on RGB LED,” Opt. Express 20(26), B501–B506 (2012). 7. J. Liu, P. W. C. Chan, D. W. K. Ng, E. S. Lo and S. Shimamoto, “Hybrid visible light communications in Intelligent Transportation Systems with position based services,” in 2012 IEEE Globecom Workshops (IEEE, 2012), pp. 1254–1259. 8. I. Stefan and H. Haas, “Hybrid visible light and radio frequency communication systems,” in 2014 IEEE Vehicular Technology Conference (IEEE, 2014), pp. 1–5. 9. Y. Tao, X. Liang, J. Wang, and C. Zhao, “Scheduling for indoor visible light communication based on graph theory,” Opt. Express 23(3), 2737–2752 (2015). Vol. 24, No. 14 | 11 Jul 2016 | OPTICS EXPRESS 15570 #263670 http://dx.doi.org/10.1364/OE.24.015570 Journal © 2016 Received 20 Apr 2016; accepted 13 Jun 2016; published 30 Jun 2016 10. Y. L. Lee, T. C. Chuah, J. Loo, and A. Vinel, “Recent advances in radio resource management for heterogeneous LTE/LTE-A networks,” IEEE Commun. Surveys Tuts. 16(4), 2142–2180 (2014). 11. L. Dai, S. Zhou, and Y. Yao, “Capacity analysis in CDMA distributed antenna systems,” IEEE Trans. Wireless Commun. 4(6), 2613–2620 (2005). 12. F. Boccardi, R. W. Heath, A. Lozano, T. L. Marzetta, and P. Popovski, “Five disruptive technology directions for 5G,” IEEE Commun. Mag. 52(2), 74–80 (2014). 13. D. Liu, L. Wang, Y. Chen, M. Elkashlan, K. Wong, R. Schober, and L. Hanzo, “User Association in 5G Networks: A survey and an outlook,” IEEE Commun. Surveys Tuts. 18(2), 1018–1044 (2016). 14. R. Zhang, J. Wang, Z. Wang, Z. Xu, C. Zhao, and L. Hanzo, “Visible light communications in heterogeneous networks: paving the way for user-centric design,” IEEE Wireless Commun. 22(2), 8–16 (2015). 15. X. Li, R. Zhang, J. Wang, and L. Hanzo, “Cell-centric and user-centric multi-user scheduling in visible light communication aided networks,” in IEEE International Conference on Communications (IEEE, 2015), pp. 5120– 5125. 16. D. Gale and L.S. Shapley, “College admissions and stability of marriage,” Amer. Math. Monthly 69(1), 9–15 (1962). 17. J. Kahn and J. Barry, “Wireless intrared communications,” Proc. IEEE 85(2), 265–298 (1997). 18. M. Xiao, N.B. Shroff, E.K.-P. Chong, “A utility-based power-control scheme in wireless cellular systems,” IEEE/ACM Trans. Netw 11(2), 210–221, (2003). 19. D. W. K. Ng and R. Schober, “Resource allocation and scheduling in multi-cell OFDMA systems with decodeand-forward relaying,” IEEE Trans. Wireless Commun. 10(7), 2246–2258 (2011). 20. D. W. K. Ng and R. Schober, “Cross-layer scheduling for OFDMA amplify-and-forward relay networks,” IEEE Trans. Veh. Technol. 59(3), 1443–1458 (2010). 21. X. Ling, J. Wang, X. Liang, Z. Ding, and C. Zhao, “Offset and power optimization for DCO-OFDM in visible light communication systems,” IEEE Trans. Signal Process. 64(2), 349-363 (2016). 22. A. E. Roth, “The evolution of the labor market for medical interns and residents: a case study in game theory,” J. Polit. Econ. 2(6), 991–1016 (1984). 23. A. Leshem, E. Zehavi, and Y. Yaffe, “Multichannel opportunistic carrier sensing for stable channel access control in cognitive radio systems,” IEEE J. Sel. Areas Commun. 30(1), 82–95 (2012). 24. S. Boyd and L. Vandenberghe, Convex Optimization (Cambridge University Press, 2004). 25. Z. Wang, C. Yu, W. D. Zhong, J. Chen, and W. Chen, “Performance of a novel LED lamp arrangement to reduce SNR fluctuation for multi-user visible light communication systems,” Opt. Express 20(4), 4564–4573 (2012). 26. B. Bensaou, D. H. Tsang, and K. T. Chan, “Credit-based fair queueing (CBFQ): a simple service-scheduling algorithm for packet-switched networks,” IEEE/ACM Trans. Netw 9(5), 591–604 (2001).


Introduction
Visible light communication (VLC), as a promising solution to indoor short-range wireless communication, has received increasing attention in recent years.Employing light-emitting diodes (LEDs), VLC accomplishes the two-fold goal of illumination and communication and enjoys the advantages of low cost, free spectrum, natural confidentiality, and low energy consumption [1].Hence, it is widely believed that VLC will play an important role in next generation wireless communication systems [2].As a result, extensive studies have been dedicated to point-to-point VLC technologies [3,4].For example, recently VLC data rates of Gbps have been reported in [5,6], and a hybrid VLC and RF system has been developed in [7].
The success of point-to-point VLC technologies paves the way for multiuser VLC, where multiple optical access points (APs) transmit data to multiple user receivers simultaneously.In indoor environments, there are usually many LEDs available which can act as APs and form a VLC network that can support high-rate communication for a number of users [8,9].On the one hand, this system architecture further increases the potential of VLC, but, on the other hand, it also introduces additional challenges for system design.Firstly, the density of APs and users in VLC networks is much higher than than in conventional cellular communication systems, implying a complicated network topology.Secondly, due to the associated high density, interuser interference is severe and may cause a serious performance degradation if not properly handled.Thirdly, user fairness becomes a critical issue in multiuser VLC networks due to interuser inference and limited system resources.Thus, interference management becomes a vital issue in VLC networks.
Existing RF cellular systems (such as the 4G LTE (Long-Term Evolution) [10] and the 3G CDMA (Code Division Multiple Access) [11] systems) generally adopt cell-centric designs, in which each user is assigned to a base station and interference among cells is suppressed by some frequency reuse methods, i.e., adjacent cells use different frequencies.However, such a design philosophy may cause a low spectrum utilization and limit system performance.Hence, user-centric network designs have been proposed for next generation wireless communication systems [12].In this case, rather than being a passive endpoint, every user is allowed to participate actively as a network component.Thereby, by utilizing the diversity of the users' locations and service requirements, virtual amorphous cells are formed to provide better service to each user.Compared with traditional cell-centric designs, user-centric designs offer higher spectrum efficiency, better service coverage, and higher flexibility for service provisioning [13].
User-centric scheduling provides a natural solution for managing the complicated interference scenario in VLC networks with high AP and user densities and high throughput demands of heterogeneous users [14].In addition, the vicinity of APs and users in indoor environments makes user-centric scheduling in VLC networks more practical than in RF cellular networks.However, user-centric scheduling relies on the joint coordination of all APs and all users, which, if designed in a centralized manner (such as in [9] and [15]), will require the gathering of the channel state information of the whole network at a central node and inevitably induce a heavy computational burden at this node.Besides, such a high signaling overhead and computational complexity conflict with the desired simplicity of VLC networks, which, instead, calls for distributed and low-complexity user-centric scheduling methods.
In this paper, we develop a distributed user-centric scheduling method for VLC networks with mutiple APs and mutiple users.Our design goals include: 1) optimizing the network performance; 2) providing fairness among users; 3) decentralized scheduling with limited signaling overhead; 4) low-complexity implementation.To achieve these goals, we establish a VLC scheduling framework based on the elegant concept of stable marriage [16] with general utilities.Based on this framework, a novel user-centric scheduling method is proposed and implemented in a decentralized manner.The proposed method only requires the exchange of a few 1-bit messages between the APs and the users.Neither centralized computation nor the feedback of the channel state information of the entire network are required.It is further shown that the proposed scheduling method can achieve both user-wise and system-wise optimality and has provable low computational complexity.Our simulation results show that, compared to existing centralized approaches, the proposed scheduling method provides better throughput performance and guarantees fairness while requiring lower signaling overheads and lower complexity.
The remainder of the paper is organized as follows.The VLC system model is described in Section 2, and the scheduling problem is stated in Section 3. Section 4 introduces the proposed stable marriage approach.We present and analyse the proposed decentralized usercentric scheduling method in Section 5. Simulation results are presented in Section 6, and conclusions are drawn in Section 7.

System model
Consider a downlink VLC network, consisting of a set of VLC APs, each of which employs an LED lamp installed, e.g., on the ceiling of a hall or a room.The layout of the system is illustrated in Fig. 1, where the LEDs are installed in a regular pattern (which is usually the case) on the ceiling of a hall, with the distance between adjacent APs denoted by d.Note that our proposed method is also applicable to irregular configurations of LEDs.
Suppose there are K VLC APs serving L users.Denote the set of all APs by .In such a system, from a user-centric perspective, a user can be simultaneously served by multiple APs through proper scheduling so that all available resources are fully and intelligently utilized.
According to [3], the signal attenuation of the optical channel from AP a i to the receiver of user u j is given by Here, l is the Lambert index and is given by l = −(log 2 (cos ψ 1/2 )) −1 , with ψ 1/2 being the semiangle at half-illuminance of the LED source.S j is the physical area of the photodiode of user u j 's detector, and r i j is the distance between user u j and AP a i .ψ is the angle of irradiance, ϕ is the angle of incidence, and ϕ F is half of u j 's Field of View (FOV).T s (ϕ) is the gain of the optical filter, and G(ϕ) represents the gain of the optical concentrator and is given by [17] where RI is the refractive index of the lens at the photodiode.From the above channel model, a VLC AP can serve a user only if the AP is within the FOV of the user's receiver.
In VLC, the performance of a user is determined by its signal-to-interference-plus-noise ratio (SINR).As a user could be served by multiple APs, the signal power of user u j is the aggregate electrical power received from the APs in set A j ⊆ A, where A j denotes the set of APs serving u j .The interference power impairing u j is the sum of the electrical powers received from the APs in set A c j , which is the complementary set of A j , i.e., A c j = A \ A j .Since VLC systems employ intensity modulation, the transmitted optical signals must be real and nonnegative.Consequently, the optical signals from different APs are added in phase at the photodetector, and the received signal power is the sum power of all received optical signals.More in detail, let p i be the transmitted optical power of AP a i , which is typically non-adaptive due to the illumination requirement [14].Then, the optical powers impinging on the photodetector of u j from the APs in A j and A c j are given respectively by P(u j , A j ) = ∑ i∈A j p i h i j (3) and P(u j , A j ) and P c (u j , A j ) are thereby the optical signal power and the optical interference power of user u j , respectively.
According to [4], the corresponding electrical currents generated by the photodetector are γ • P(u j , A j ) and γ • P c (u j , A j ), respectively, where γ [A/W] represents the photodetector's responsivity.Since the electrical power is proportional to the square of the amplitude of the current, we can express u j 's SINR as [3] where σ 2 N (u j , A j ) = σ 2 s (u j , A j ) + σ 2 t (u j ) is noise at the receiver and consists of two main parts [1], namely, the shot noise and the thermal noise where q = 1.6 × 10 −19 C is the electronic charge constant, I bg is the background current, I 2 is the noise bandwidth factor, B is the noise bandwidth, k B is Boltzmann's constant, T k is the absolute temperature, η c is the fixed capacitance of the photo detector per unit area, OV G is the openloop voltage gain, Γ is the field-effect transistor (FET) channel noise factor, I 3 = 0.0868, and g m is the FET transconductance.

Problem statement
To arrive at a general problem formulation, we introduce an utility function f j (ξ j ) to measure the performance of user u j , where each f j (•) is only required to be nonnegative and nondecreasing with respect to the input variables.A commonly used utility is the spectral efficiency f j (ξ j ) = log 2 (1 + ξ j ), which represents an upper bound on the throughput in a unit bandwidth that user j can achieve for a given SINR ξ j and is often used to evaluate VLC performance [8,9,15].Note that our framework is general enough to include many other utilities (see, e.g., [18]).One of our design goals is to properly match each LED or AP to a user so that the users' utilities are maximized.For this purpose, we characterize the system by a graph.Specifically, we introduce a graph G = (V, E), where V = U ∪ A is the node set (including all users and APs) and E is the edge set, where e = (u, a) ∈ E indicates that AP a is within the FOV of user u.Recall that an AP can serve a user only if it is within the user's FOV.Therefore, E actually contains all possible links between the users and the APs.The scheduling problem can be formulated as finding a subset of E, say M, which defines the matching between the users and the APs.
In parallel to utility optimization, fairness is also an important issue in scheduling [19,20].Firstly, different users should be provided with similar average utilities over time.Secondly, serving user u j should not significantly decrease other users' performance.Based on these two principles, we introduce the fairness index function for AP a i serving user u j as where f j denotes the average utility of u j up to the current time slot and d i ( j) is the number of users that may suffer from inter-user interference due to the service that a i offers u j .More specifically, f j is obtained and updated as follows where f j,T is the average utility of u j over the past T time slots and f j is u j 's current utility.
indicates how much interference is generated if a i serves u j .Denote the set of the neighbouring users that are affected by user u j by Then, d i ( j) is equal to the cardinality of N(u j ), i.e., FI i (u j ) measures the level of fairness when AP a i serves user u j .From ( 8), it is easily seen that then either the utility function of u j is infinite or serving u j may affect an infinite number of users and cause severe performance degradation to other users.If FI i (u j ) = 1, then f j,T = 0 and d i ( j) = 0, meaning that u j has never been served in the past and serving u j will not generate any interference to other users, which indicates that a i shall serve u j .Consequently, the scheduling problem for the VLC network comprises several objectives.In particular, the utilities of all users should be maximized, which essentially amounts to multi-objective optimization.At the same time, fairness among users should also be achieved.Consequently, it is difficult to formulate the scheduling design for VLC networks as a single optimization problem as is done in the traditional scheduling approaches that can only deal with a single objective (e.g., the sum rate or fairness objectives).Traditional scheduling problem formulations lead to nonlinear discrete optimization problems, which are often NPhard and entail prohibitive computational complexity to obtain the globally optimal solution.Furthermore, solving these problems requires centralized processing and collecting the channel state information of all APs and users.These requirements conflict with the prospect of VLC as a low-cost communication technique.Therefore, low-complexity and decentralized scheduling methods that only need very limited signaling exchange are preferable in practice.In the following, by borrowing elegant concepts from stable marriage theory, we will propose a novel decentralized scheduling method for VLC networks with provable user-wise and system-wise performance.

Stable marriage approach
Stable marriage, a nobel prize winning framework, was first proposed by Shapley and Gale [16], and facilitates an in-depth analysis of matching men and women from two distinct sets.The model includes a number of men and women who would like to be matched based on their preference list for each other.Such a matching problem is often not formulated as a single utility optimization problem, but seeks an efficient solution via individual decision making by the men and women according to their preferences.Thus, a very interesting question, which may lead to an objective, is that whether there is a stable way to match each gentleman with a lady.A matching is unstable if there is a man and a woman who prefer each other over their current partners.Such a pair is called a rogue couple.Thus, a matching of N men with N women is stable if and only if there is no rogue couple.An example of the marriage market is shown in Fig. 2. Three men, namely, m 1 , m 2 , m 3 , and three women, namely, w 1 , w 2 , w 3 , are involved in this instance.Each person's preference list is also illustrated in the Fig., e.g., (w 2 > w 1 > w 3 ) on the top-left means that man m 1 loves w 2 most, and prefers w 1 to w 3 .The matching shown in this instance, ((m 1 , w 2 ), (m 2 , w 1 ), (m 3 , w 3 )), is stable.Note that (m 1 , w 1 ) is not a rogue couple.It is true that lady w 1 would rather be with gentleman m 1 than with her current partner.Unfortunately for her, man m 1 would rather be with his current partner than with her.For the same reason, (m 2 , w 2 ) is also not a rogue couple.Note that both m 3 and w 3 are paired with their least favorite choices in this matching.Nonetheless, the given matching is stable, since none of their preferred choices would rather be with them.One extension of stable marriage is college admission, where each college is able to enroll multiple students while each student can only enter one college.Further details regarding the college admission problem can be found in [16,22].
From the above example, one can see that stable marriage is an elegant framework to handle discrete multi-agent competition with conflicting objectives, which is particularly suitable to address our scheduling problem in the VLC network.Recall that our design goal includes both optimizing the users' utilities and maintaining fairness among the users.Therefore, we can view the users and APs in the VLC network as the men and women in the marriage market (or, more exactly, colleges and students in college admission).The users want to maximize their utilities by choosing their preferred APs, while the APs are responsible for achieving fairness by choosing their preferred users.Consequently, the user-centric scheduling problem is transformed into finding a good matching of the APs to the users according to the stable marriage concept.To this end, we shall first answer the questions outlined in the following three subsections.

How to formally describe a matching?
Our first mission is to describe the matching of users and APs mathematically.Recall that sets U and A represent all users and APs in the VLC network, respectively.Based on this notation, the matching problem is specified by the tuple consisting of the user set U, the AP set A, the set of preference relations of the APs {> u } u∈U , the set of preference relations of the users {> a } a∈A , and the quota q u , where q u indicates how many APs a user u can have at most.A matching is then described as follows.Note that the user-centric VLC network scheduling is a many-to-one matching problem.Thus, M(a) represents the matched user of AP a and if AP a is not matched with any user, a selfmatching M(a) = a is conducted; M(u) represents the set of APs matched to user u and if user u is not matched with any AP, a self-matching M(u) = {u} is conducted.Note that if |M(u)| < q u , then u is called an under-subscribed user.

How to properly define preferences?
Since the APs are responsible for maintaining fairness among the users, their preferences shall be based on fairness, which can be described by the fairness index function introduced in Section 3. Thus, it is natural to assign the AP preferences according to the fairness index function.For an AP a i , the higher the value of its fairness index function when serving a user u, the higher the preference given to user u.More specifically, given any u, u ∈ U, u > a i u , if and only if FI i (u) > FI i (u ).Self-matching indicates that an AP does not match any user.Each AP a is assumed to prefer serving to self-matching, so for an AP a in the FOV of user u, we have u > a a.Also, the users will not be served by an AP outside their FOVs, so for an AP outside the FOV of user u, we have a > a u.
The preferences of the users shall reflect their utilities.Existing works on resource assignment often adopt a matching independent utility function for each user, i.e., a user's utility does not depend on a specific matching of users and APs.For example, in [23] each AP is assumed to provide a fixed gain to a user, which does not depends on other APs.However, such an assumption is not justified for VLC networks.Recall from Section 3 that the utility function of user u j , f j (ξ j ), where the SINR ξ j = ξ j (A j ), depends on A j , i.e., the set of APs that serve user u j .Moreover, f j (ξ j ) is a general nonnegative and nondecreasing function without specific form.Hence, f j (ξ j ) cannot be directly used to define the preferences of the users.
To overcome this difficulty, we define the preferences of the users not based on their utilities, but based on the power received from an AP.Specifically, a user prefers one AP to another one if and only if the optical power received from the former is great than that from the latter.Recall that in Section 2, p i denotes the transmit power of AP a i , and h i j represents the channel gain from AP a i to user u j .Hence, the received power of u j from AP a i is p i h i j .Thereby, for a fixed user u j and two given APs a i and a k , a i > u j a k if and only if p i h i j > p k h k j .The intuition behind this definition is that the more power a user can receive from an AP, the higher the SINR that the user can attain.Yet, there arises a question: Does the preference of a user reflect its utility function, or in other words, are users' utilities optimized by using this definition of preference?Surprisingly, the answer to this question is positive.We will consider this aspect more in detail in Section 5.
Similar to the APs, self-matching of a user means that the user does not match any AP.Each user u is assumed to prefer being served to no service.Thus, for any AP a within the FOV of user u, a > u u.User u will not attempt to call for service from APs that are outside its FOV, so for any AP a outside the FOV of user u, u > u a.

How to formally describe stability?
To formally describe stability, we first introduce the following two concepts.
1) A matching M is individually rational if there exists no AP a for which a > a M(a), and there exists no user u such that u > u a for some a ∈ M(u).Individual rationality avoids invalid service, which occurs when a user is matched to an AP outside its FOV.In such a case, no signal can be received by the user from the AP, so the service from the AP to the user is invalid.In other words, individual rationality prevents a matching M from providing invalid service.
2) A matching M is blocked by a pair (u, a) ∈ U × A if one of the following two conditions holds: (i) u > a M(a) and |M(u)| < q u ; (ii) u > a M(a) and for some a ∈ M(u), a > u a .If |M(u)| < q u , then user u has (q u − |M(u)|) additional partners which are all by themselves.Thus, condition (i) can be explained as that AP a prefers user u over its current partner M(a) and user u also prefers to be matched to AP a compared to itself.Condition (ii) indicates that AP a prefers user u over its current partner M(a), and user u is willing to replace one of its partners with AP a.A stable matching shall exclude any blocked pair, i.e., there is no single pair of user and AP which prefer being matched to each other instead of being matched to their current partners.
Therefore, a stable matching is defined as follows.
Definition 2 A matching M is stable if and only if M is individually rational and not blocked by any pair (u, a) ∈ U × A.
Consequently, the user-centric scheduling problem is transformed into finding a stable matching according to the APs' and users' preferences.Note that this is a many-to-one matching problem and finding its stable solution is difficult.In the next section, we provide a decentralized method to achieve this goal.

User-centric scheduling
In this section, we present a user-centric scheduling algorithm along with its decentralized implementation to achieve a stable matching for the VLC network.We further analyze the optimality and complexity of the proposed algorithm.

Distributed scheduling algorithm
For clarity, we first show the principle of the proposed algorithm, which we refer to as the Decentralized Stable Matching Scheduling Algorithm (DSMSA), in Fig. 3.
DSMSA works as follows.Recall from Section 4.1 that a user u is called under-subscribed if |M(u)| < q u .In every iteration, each under-subscribed user attempts to link to the favorite AP in its Potential Partner List (PPL), which includes the APs within its FOV, and then deletes it from the PPL, while each AP decides to accept or reject these requests.The users and APs make their decisions based on their preferences (as introduced in Section 4).The mechanism terminates either when all users are matched with sufficiently many APs (i.e., are not under-subscribed) or each under-subscribed user has been rejected by every AP.Therefore, DSMSA will terminate within a finite number of steps.
Algorithm 1 describes in detail how DSMSA is implemented in a distributed manner.In each iteration, each under-subscribed user requests a new link based on its preferences, which, according to Section 4.2, depend on its received power from each AP and can be measured locally.An AP who receives a link request decides whether or not to accept the request and replace its current partner with the new one.From Section 4.2, an AP's preference is determined by the fairness index function which depends on the users' average utilities and the numbers of their neighbors.Such information can be locally inferred by the APs if they are interconnected or periodically reported by the users at a low rate.Therefore, in each iteration, APs and users Link: Each under-subscribed user links to its most favorite AP; and then deletes it from its PPL; Accept/reject: Each AP keeps the most favorite users according to its PPL among the requests; and then rejects the rest; Check: Is there any undersubscribed user?
Check: Are all under-subscribed users' PPL empty?
Terminate: A stable matching between the users and APs has been found.Theorem 3 confirms that DSMSA also provides system-wise optimality in terms of the sum utility of all users.Although it is possible to find among all possible matchings (i.e., also including the non-stable ones) the one with the maximum sum utility, this requires an exhaustive search that has prohibitive complexity (usually increasing exponentially with the number of users and APs).In addition, an exhaustive search is generally centralized.On the other hand, the proposed DSMSA is a decentralized scheme and guaranteed to attain the highest sum utility among all stable matchings, which are already Pareto optimal.We will further show that DSMSA enjoys low computational complexity in the next subsection.

Computational complexity
As mentioned above, the proposed DSMSA can not only be implemented in a decentralized manner but also enjoys the advantage of low complexity.Note that in each iteration, at least one AP is deleted from some user's PPL.Thus, the computational complexity of DSMSA is bounded by the sum of the initial cardinalities of all PPLs.Furthermore, in the distributed implementation, each user is actively involved in the scheduling process, so the complexity only depends on the maximum run times of the individual users.Moreover, each user u's run time is proportional to the cardinality of the user's initial PPL, i.e., |{a ∈ A|a > u u}|.Hence, we have the following result.
Proof: Please see Appendix A4.Theorem 4 indicates that the run time of DSMSA is proportional to the maximum number of APs inside a single user's FOV.For example, there are typically 4 to 6 APs inside a user's FOV observed in the simulation.Thus, DSMSA will terminate within at most 6 iterations.The low computational complexity and decentralized implementation make DSMSA particularly suitable for VLC networks that aim to provide high quality wireless service at low cost.

Performance evaluation
In this section, we present comprehensive simulation results to evaluate the proposed scheduling method.We consider both regular and irregular arrangements of APs adopting the same configurations as in [9,25].Specifically, we first consider a regular arrangement of 8 × 8 APs installed equidistantly on the ceiling of a square room as shown in Fig. 4. The simulation parameters are the same as in [9] and are listed in Table 1, where the distance between any two adjacent APs is denoted by d and the height from the ceiling to the horizontal plane on which the receivers of the users are placed is denoted by h.The transmitted optical power of each AP is set to P to , i.e., p 1 = • • • = p K = P to , and each receiver has an FOV of 50 degrees.The LED deployment has been checked to satisfy illumination requirements.The distribution of the received optical power is shown in Fig. 5, where the entire area can be roughly divided into two parts, namely, the central area and the edge area.The received power in the 12m × 12m central area varies between -26 to -23 dBm, while the edge area has significantly lower received power.
To demonstrate the performance of the proposed distributed user-centric scheduling algorithm, i.e., DSMSA, the simulation results are averaged over 5000 independent tests, in each of which a certain number of users are randomly distributed in the room.Our proposed method is compared with three baseline scheduling methods.In the first baseline method, referred as APRS, each AP is randomly chosen to serve one of the users whose FOVs cover this AP.The second baseline method, referred as FR, is the traditional frequency reuse method from RF cellular systems, which can be realized via DCO-OFDM techniques [21] in VLC networks.The key idea of FR is to eliminate interference by forcing adjacent APs to use different frequencies, where two APs are adjacent if and only if they are within the FOV of the same user.In FR,  to maximize the sum rate, the frequency reuse factor, which is the rate at which the same frequency can be used in the network, is chosen as large as possible under the constraint that there is no interference between any users.The third baseline method is from [9] and referred as GWMIN, whose principle is to force the inter-user interference to zero and then maximize the sum rate using an approximation algorithm based on graph theory.In each time slot, GWMIN first builds an interference graph, where each vertex denotes a user and there is an edge between two vertices if and only if there is potential interference between the corresponding users, i.e., their FOVs cover the same AP.Then, GWMIN performs centralized optimization over the interference graph by gathering the channel state information of the entire network.
For both the proposed DSMSA and the state-of-the-art GWMIN, the scheduling in the current time slot depends on the average rate achieved so far, which is computed based on a time window.Thus, it is necessary to run the algorithms for a number of time slots in each experiment so that the average rate of a certain time slot can be computed based on the rates of the previous slots.Following the setting in [9], each test runs for 50 time slots.and has to collect the channel state information of all users at a central node.

Sum rate performance
Figure 6 shows the sum rate of the four considered scheduling schemes.The data rate of each user u j is obtained by adopting the utility function f j (ξ j ) = log 2 (1 + ξ j ), which is normalized by the bandwidth and has the unit bps/Hz.It can be observed that the sum rate of FR is relatively low since the frequency reuse factor must be large enough to avoid inter-user interference.Although APRS can achieve a higher sum rate than FR when the number of users is small, the gap decreases when the number of users increases and eventually APRS is outperformed by FR.The reason for this behavior is that as the user density increases, inter-user interference becomes the dominant factor limiting the system performance, which is not taken into account by APRS.GWMIN may obtain a higher sum rate than FR and APRS, since it applies an effective approximation algorithm to mitigate interference.Nevertheless, DSMSA can achieve an even higher sum rate than GWMIN.This is because the proposed method intelligently manages the inter-user interference instead of forcing it to zero or using rigid frequency reuse to avoid it.More importantly, the proposed scheme can be implemented in a distributed manner requiring a small signalling overhead, while GWMIN is a centralized algorithm

Fairness
Fairness is another important factor in VLC networks.To measure fairness among users, we adopt the service fairness index (SFI) [26], one of the most widely used fairness indicators, as performance metric, which is defined as follows where w j is the service weight factor, L is the number of users, and r j is the average rate of user u j obtained by averaging the utility value of the user u j over the 50 past time slots.For clarity, we assume all users have the same service weights and thus set the service weight factors to 13) can be simplified to Apparently, a lower SFI indicates higher fairness.If SFI is 0, then all users have the exact same data rate, which means absolute fairness is achieved.
The service fairness indices of the four methods are shown in Fig. 7. APRS has the largest SFI since it does not take into account fairness but serves users randomly.Both FR and GWMIN have a smaller SFI since they aim at proportional fairness.Compared with FR, APRS, and GWMIN, DSMSA achieves a significantly lower SFI and thus maintains a higher degree of fairness.Besides sum rate and fairness, the active user ratio (AUR) also plays an important role in VLC networks.The active user ratio is the ratio of the average number of active users to the total number of users and is defined as where K is the number of time slots, N k is the number of active users in each time slot, and L is the total number of users.In the following simulation, K = 5000 × 50 = 250000 since there are 5000 independent tests and 50 time slots in each test.The active user ratio is a measure for shorttime fairness as well as communication delay.Obviously, a larger active user ratio indicates that more users can be served in a given time slot and thus a higher fairness is achieved.More importantly, it also means that an individual user is active in more time slots and thus the delay is shorter.
The corresponding simulation results are shown in Fig. 8. Thereby, GWMIN has the smallest active user ratio, meaning that many users in the VLC network have to wait for several time slots to be served, resulting in a larger delay.The active user ratio for APRS is highest, as expected, because of the random service strategy.The proposed DSMSA scheduling method achieves a higher active user ratio than FR and GWMIN.In fact, the active user ratio of DSMSA is no less than 90% when the number of users does not exceed 14 and 87% when there are 16 users.

FOV impact
Next, we would like to investigate the impact of the FOV on the performance of the proposed DSMSA.As shown in Fig. 9, the sum rate decreases for large FOVs and has a maximum at a FOV of around 35 to 25 degrees.This is because as the FOV increases, the interference between the users also increases.It is interesting to see that the lowest SFI and the highest active user ratio are also achieved at a FOV of 35 degrees.Notice that DSMSA maintains a good active user ratio, which is always greater than 0.75, for all considered FOVs.

Irregular AP arrangement
DSMSA can be applied for any network topology.To demonstrate this, we consider the irregular AP arrangement that was used in [9,25] to reduce the SNR fluctuation in the room.As shown in Fig. 10, in this arrangement there are 12 circle-APs and 4 corner-APs in a 5m×5m area.The vertical distance from each AP to the receiver of a user is 2.2m.The radius of the AP-circle is 2.0m and the distance between the corner-APs and their nearest walls is 0.1m.The power of each AP is 2W and the FOV is set to be 40 degrees.
As shown in Fig. 11, the proposed DSMSA still achieves a similar performance advantage compared to the three baseline schemes as for the regular AP arrangement.More exactly, DSMSA achieves the highest sum rate, the lowest SFI, and the second highest active user ratio among the considered state-of-the-art scheduling methods, despite the distributed implementation of DSMSA.We also show the impact of the FOV in this case in Fig. 12.As the FOV decreases, the sum rate increases as the interference between different users decreases.On the other hand, the SFI increases as the FOV decreases since there are fewer APs available to serve a certain user.

Performance comparison
Our findings regarding the four investigated methods with respect to the four investigated performance metrics are summarized in Table 2.The proposed DSMSA has the highest sum rate and the lowest SFI.Thus, it can simultaneously achieve the largest data throughput and the highest degree of long-term fairness among the four considered schemes.Although APRS has the highest active user ratio, its SFI value is the largest, which means that it cannot provide different users with similar data rates and fairness cannot be guaranteed.Yet, the proposed DSMSA also leads to a high active user ratio and thus ensures that user delay is small and short-term fairness is maintained.

Conclusion
In this paper, we considered the scheduling problem in VLC networks from a user-centric perspective.We adopted a stable marriage approach and transformed the scheduling problem into a many-to-one matching problem.Then, we proposed a distributed scheduling method to optimize both the users' utilities and fairness while limiting the signaling overhead.The provided simulation results show that, compared to existing centralized methods, the proposed method can achieve a better sum-rate performance while providing both long-term and shortterm fairness.
Thus, the assumption of the existence of a blocked pair is false and matching M is stable.

A2. Proof of theorem 2
We prove the result by contradiction.Suppose that there exists another matching M by which M is pareto-dominated.Let U * = {u|M(u) = M (u)} denote all users that have different partners in M and M .The total number of APs does not depend on the matching, so we have Thus, there exists some u j ∈ U * such that |M(u j )| ≥ |M (u j )|.M is pareto-dominated by M, so f j (ξ j (M )) ≥ f j (ξ j (M)).Also, u ∈ U * indicates M (u j ) = M(u j ).Thus, f j (M ) > f j (M).Let a i be the AP with the largest p i h i j which is in M (u j ) but not in M(u j ).|M(u j )| ≥ |M (u j )| and f j (ξ j (M )) > f j (ξ j (M)) indicates that there exists some AP a s ∈ M such that p i h i j > p s h is , i.e., a i > u j a s .Since M is pareto-dominated by M , we have FI i (M (a i )) ≥ FI i (M(a i )), which implies M (a i ) ≥ a i M(a i ).Thereby, u j = M (a i ) > a i M(a i ) because M(a i ) = u j .Hence, (a i , u j ) is a blocked pair in M, which leads to a contradiction since M is stable.

A3. Proof of theorem 3
We first introduce the following two useful definitions.
Definition 3 Let the reduced AP list of user u be ral(u) = {a ∈ A|∃ some stable matching M such that (u, a) ∈ M}.
Note that if a does not belong to ral(u), then user u cannot connect to a.For simplicity, let r u denote the cardinality of ral(u), i. which represents the best partners that user u can have in a stable matching.
The main proof consists of two parts.Firstly, we prove that the matching M generated by DSMSA satisfies M(u) = oal(u).Suppose that the first iteration when a user u is rejected by an AP a which is in the optimal AP list oal(u) is iteration k.In this iteration, a rejects u in favor of another user u * since u * > a u.By definition of oal(u), there exists a stable matching M * in which M * (a) = u.We will argue that (u * , a) is a blocked pair in M * , thus contradicting stability.Since M * (a) = u, we have u * > a M * (a).If |M * (u * )| < q u * , then (u * , a) is a blocked pair in M * .If |M * (u * )| = q u * , then by definition of oal(u * ), |oal(u * )| = q u * .Iteration k is the first iteration when some user is rejected by one AP in its optimal AP list, so in the kth iteration, u * has not been rejected by any AP in oal(u * ).Since in the kth iteration u * is paired with a, u * likes a at least as much as some AP in oal(u * ).In other words, there are at most |q u * | − 1 elements in oal(u * ) which u * strictly prefers to a. Thus, there are at most |q u * | − 1 elements in M * (u * ) which u * strictly prefers to a.In other words, there exists some AP a ∈ M * (u * ) such that a > u * a , which indicates that (u * , a) is a blocked pair in M * .Thus, the assumption is not true, and M(u) = oal(u).
Secondly, we prove that the sum of the utility functions is maximized.Consider any user u j .Without loss of generality, we assume ral(u j ) = {a 1 , a 2 , • • •, a r u } with a 1 > u j a 2 > u j • • • > u j a r u .Since f j (ξ j ) is monotonically nondecreasing, f j (ξ j ) is maximized if and only if ξ j is maximized.Let C j = ∑ i∈A p i h i j .By (3) and (4), P c (u j , A j ) = C j − P(u j , A j ).According to (5), ξ j can be expressed as ξ j = γ 2 • P(u j , A j ) 2 σ 2 N (u j , A j ) + γ 2 • (C j − P(u j , A j )) 2 (17) which is monotonically nondecreasing in P(u j , A j ).Note that P(u j , A j ) = ∑ i∈A j p i h i j and a k > u j a l implies p k h k j > p l h l j , so P(u j , A j ) is maximized if and only if A j = oal(u j ).Hence, ∑ m j=1 f j (ξ j ) is maximized if and only if ∀ j, A j = oal(u j ).A j is the set of all APs that serve u j , i.e., A j = M(u j ).Hence, the matching M generated by DSMSA maximizes the sum utility among all stable matchings.

A4. Proof of theorem 4
By proof of Lemma 1, the computational complexity is bounded above by O(∑ u∈U |p * (u)|), where p * (u) is the cardinality of user u's initial PPL.In DSMSA's distributed implementation, each user is actively involved in the scheduling process, so the complexity only depends on the maximum run time of the individual users.Each user u's run time is proportional to the cardinality of user u's initial PPL, i.e., |{a ∈ A|a > u u}|.Hence, the computational complexity is bounded above by O(max u∈U |p * (u)|).

Definition 1 A
matching M is a function from the set U ∪ A into the set of unordered families of elements of U ∪ A such that: (1).|M(a)| = 1 for each AP a ∈ A and M(a) = a if and only if M(a) / ∈ U; (2). 1 ≤ |M(u)| ≤ q u for each user u ∈ U and M(u) = {u} if and only if M(u) ⊆ A; (3).M(a) = {u} if and only if a ∈ M(u).

Fig. 12 .
Fig. 12. Impact of the FOV in the irregular AP arrangement.

Table 1 .
Parameters used in the simulation.

Table 2 .
Comparison of the four scheduling methods.