Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 110 (2017) 304 311 The 12th International Conference on Future Networks and Communications (FNC 2017) Integrating Correlation Acquisition with Location Optimization for Accurate Indoor Lightwave Robot Positioning Chun-Chieh Liu, Jhe-Ren Cheng and Jen-Fa Huang* Advanced Optoelectronic Technology Center, Institute of Computer and Communications Engineering, Department of Electrical Engineering, National Cheng Kung University, Taiwan. Tel.: +886-6-2757575 ext. 62370; Fax: +886-6-2345482; E-mail:*huajf@ee.ncku.edu.tw Abstract In this paper, we proposed an indoor lightwave positioning system contains correlation operations with genetic algorithms. The implemented CDMA signaling system by spread spectrum (SS) codes can locate the position of the robot receiver as against noise interference. In the allocated LED transmitters, each channel of the transmitted signals is modulated into a series of maximal-length sequence code (M-sequence code) by LED light blinking. In the robot receiver, correlation peaks detection between received summed signal and each local replica signal is based to estimate the distance from each transmitter to the robot. We choose three transmitters among five to closest to the robot for more reliable positioning information. The robot positioning is first estimated by time difference of arrival (TDOA) and then genetic algorithm (GA) optimization is applied for more accurate robot location. We finally simulate out the TDOA result and analyze the accuracy of the robot position. 2017 The Authors. Published by Elsevier B.V. Peer-review under responsibility of the Conference Program Chairs. Keywords: Visible Lightwave Communication (VLC); Spread Spectrum (SS); Maximal-Length Sequence (M-sequence) Code; Time difference of Arrival (TDOA); Genetic Algorithm (GA). * Corresponding author. Tel.: 886-6-2757575 ext. 62371; fax: 886-6-2345482. E-mail address: huajf@ee.ncku.edu.tw 1877-0509 2017 The Authors. Published by Elsevier B.V. Peer-review under responsibility of the Conference Program Chairs. 10.1016/j.procs.2017.06.099
Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 305 1. Introduction In today s advanced technology, the robots are widely used in variety kinds of area. Like cleaning machine in the house, the assembler arms in the factory and others based on the indoor environment. The positioning methods are important issues for locating the robot. The designer of indoor positioning system must know the distance between the receiver and the facility of transmitters. Further, we must to estimate the accurate coordinate of the location of the robot receiver. There are many advantages by using white LEDs such as the benefit of long life expectancy, high luminance, no ultraviolet spectrum, and environmental protection, etc. These devices are considered common lighting systems and kinds of green energy. Moreover, they are not merely lighting devices but also applied for indoor light positioning. Factories, shopping malls and supermarkets are highly interested in indoor positioning, because demanders should find items quickly. Hence, visible light communication (VLC) 1, 2 has become an attractive way for indoor lightwave positioning. To capture object distance over VLC scheme, correlation acquisition among orthogonal code sequences is one of the proper techniques. There are several digital coding sequences can be applied on VLC, like maximal-length sequence (M-sequence) codes 3, Gold sequences 4, and Walsh-Hadamard codes 5. In this paper, we introduce an orthogonal codes based on their orthogonal correlation characteristics. By performing correlation acquisitions on coding lightwave signals with local code signal in the robot receiver, we can estimate the position of the robot receiver. Gregary B. Prince 6 present a two-phase hybrid algorithm to determine the receiver s location. First procedure is called coarse phase using receive signal strength (RSS) 7 and second procedure is called the fine phase using angle of arrival (AoA) 8. RSS is used LED anchors to transmit power of illuminant to determine. AoA improves RSS estimation by the azimuth and elevation direct the angle to the transmitter. The result show the VLC is feasible way for indoor communication. The positioning is very important for a robot and a person to navigate their destinations. When robots and persons who are outdoors, the GPS can give the directions. However, the positioning system cannot be used in indoor, because indoor positioning environment is quite complicated. Therefore, a lot of positioning systems have been investigated such as ultrasonic 9, RFID 10, Wi-Fi, ibeacon and so on. An overview on this paper is as follows. For orthogonal coding transmission through optical wireless channel, we introduce correlation detection techniques of M-sequence coding to estimate robot location. In Section 2, we illustrate the whole 3D environment and the characteristics of orthogonal codes. It is important for us to obtain the time of flight between visible lightwave transmitters and the robot receiver. These flight time are deeply connected with signals coding and acquisition techniques. Section 3 presents theoretical analysis and coordinates optimization of the robot receiver. Positioning algorithm of Time-Difference of Arrival (TDOA) is executed to make an initial estimation on the location of robot receiver. Simulation and estimation results for robot positioning accuracy are investigated in Section 4. Finally, concluding remarks and future research works are outlined in Section 5. 2. Architecture of Indoor Positioning System An indoor positioning system using LED lightwave for estimating the position of the robot receiver and the configuration of the system is depicted in 3-D environment in Figure 1. There are five LED transmitters in the system, except the central LED transmitter, which is placed at the middle of the room, other LEDs are installed at the corner of the ceiling. To generate five M-sequence codes by chips cyclic in the same code family and assign to different transmitters, each transmitter is connected to a central controller. The transmission signals are modulated by M- sequence codes and LED light wave carrier. The indoor positioning system is setting up in the room and the room size is 10 meters in length, 10 meters in width and 3 meters in height.
306 Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 Figure 1. Configuration of indoor robot positioning. The reason we use lightwave instead of other carrier wave is the indoor environments cannot without light. Many kinds of indoor positioning technologies have been widely researched such as infrared, Bluetooth and Wi-Fi. RF is investigated extensively and applied to indoor positioning, but has some security problem. RF signals can pass through the wall, that is why unsuitable for airplane and hospital which needs privacy. Infrared is more suitable for indoor positioning but for the short transmission distance and additional cost of the equipment. Indoor lightwave positioning utilizes LEDs to be the emitting source. Although the light speed is so fast that the localization error may be large, LEDs have many advantages such as long life expectancy, high lighting efficiency and environmental friendly. If we use white LED lamps as our positioning carrier, we can also solve the problem which mentioned above and reduce the cost significantly. In the paper, we will improve the accuracy of the positioning by using lightwave. 2.1. Code Acquisition for indoor mobile Robot Maximal-length sequence (M-sequence) codes are adopted in the proposed indoor lightwave positioning system. M-sequences can be generated with n-cells shift register to be a code period of 2 n -1 bits (chips). For linear feedback shift register constituted with n=3 memory cells, the generated M-sequence possesses a code period of 2 n -1=7 chips. Let C(X) C denote the basis codeword or code vector in code space C. Let T i C(X) denote the i-chips cyclic rightshift of C(X). The basis M-sequence code vector C(X) = (1, 1, 1, 0, 0, 1, 0) is assumed to assign to transmitter XTR#1. The i-chips cyclic shifted vector T i C(X) then is assigned to transmitter XTR#i for i = 2, 3, 4, 5. Figure 2. Correlation peaks to determine signal flight time from each transmitter to the robot; (a). XTR#1 is assigned with C 1 = (1, 1, 1, 0, 0, 1, 0); (b). XTR#2 is assigned with C 2 = (1, 1, 0, 0, 1, 0, 1); (c). XTR#3 is assigned with C 3 = (1, 0, 0, 1, 0, 1, 1).
Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 307 Assume that there are five LED bulbs installed in indoor ceiling, each bulb can deliver different spectral chips combination of coded signal. The combined coded signals are transmitted at different data rate. These coded spectral chips pass through wireless channel to the robot receiver to execute correlation operations. We adopt the well-known orthogonal M-sequence codes for easy separating the combined coded signals from the desired receiver signature code. From the measured correlation peaks, we can estimate the flight time and flight distance between each transmitter and the robot receiver. Figure 2 illustrates flight time measurement example on three coded signals sequences assigned for transmitters XTR#1 ~ XTR#3. In the proposed system, we assume that all transmitters and robot receiver are linked to a central controller to have synchronous clocking status. As soon as the signals are transmitted to the robot, we start the clocking timer. Although the chips sequences transmit at different data rate, the signals will mix with each other in the air channel. The robot moves around on the floor and carries with all M-sequence signature codes as its replica signals. We can separate the mixed signals by virtue of correlation characteristics of orthogonal M-sequence codes. The robot receiver calculates the correlation value continuously to find the flight time between each transmitter and robot. The continued correlation calculations on detecting correlation peaks can estimate not only the flight time but also the period of signals arrival time. With the information of the correlation operations results, the time of flight between transmitters and robot receiver can be determined. After obtaining the flight time between each transmitter, the distance can calculate from time of flight multiplied by the speed of the light. The initial position of robot receiver can be estimated by TDOA method and accurate location can be further made by GA optimization. 2.2. Division of LED Transmitter Service Range The base station selection strategy is an important issue for indoor or outdoor positioning system. In order to enhance the positioning accuracy, we divide the room into four areas, assign their service range, and select three nearby transmitters to be our base stations. We select three relatively close transmitters and use their information as positioning parameter. If the distance between transmitter and receiver is smaller, the parameter of positioning is more reliable. Figure 3. The service division of each transmitter. As shown in Figure 3, XTR#1 ~ XTR#3 are the assigned base stations when the mobile robot is located at site#1 and XTR#3 ~ XTR#5 are the assigned base stations when the mobile robot moves to site#2. We see that there are two features for using LED as transmitter in indoor lightwave positioning system, the object locating and the light illumination. Five LED lamps are therefore installed for serving base station and lighting brightness in the system. 2.3. Position Estimation By Using TDOA Method After the correlation acquisition, the arrival time from all transmitters are defined. By comparing the time of flight, and then selecting the three smallest to be our localization information. The functions of TDOA method is in expression (1) below to locate the position of the robot receiver. Equation (1) denotes hyperbolas and we will substitute
308 Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 the flight time difference into (1) to solve TDOA: d c ( T e ), where k l kl kl kl 2 2 2 2 x x k y y k x xl y yl (1) where (x, y) represents the position of the estimated robot receiver; (x k, y k) and (x l, y l) represent the position of k-th and l-th transmitter, k, l = 1, 2, 3; d kl are the value of distance difference of TDOA; c is the light wave speed; T kl is time difference between receiver to k-th and l-th transmitter which measured by code acquisitions; and e kl are the value of the time error of measuring error to subtract with each other. In the wireless communication system, the noise and interference will be more complicated than the channel in the cable. Therefore, we will discuss some indispensable optimization methods to enhance the accuracy of our architecture. 3. Evolutionary Computation with Genetic Algorithm In the beginning, genetic algorithm is proposed by Professor John Holland and bases on Darwin's theory of evolution. Genetic algorithms can be applied to solve the optimal solution in a lot of field. GA has many advantages of processing large amount of data, optimal the parameter of continuous and discontinuous and reduced the calculating time of computer. The entire process of GA is depicted in the Figure 4. The procedure of GA includes: Encoding, Initial population, Object function, Reproduction, Crossover and Mutation. Figure 4. The flow diagram of Genetic Algorithm. Step 1. Encoding: To make evolution more convenient, the optimization parameters are always transformed to the binary sequences. The straight binary algorithm transforms the real numbers to the binary bits in this step. The range of real number and the bit length should be defined. For example, a variable is ranging from 0 to 10, and the bit length is 3. The range of real numbers is assigned to each code uniformly. By utilizing the coding schemes, the real numbers of horizontal coordinate is transformed to the binary sequence. Each binary sequence represents as a different individual. Step 2. Initial population: After binary genetic algorithm encoding, the individual chromosome is represented by a bit sequence. The first generation which is called initial population generated through the random bit string generator. The size of population means the number of the initial population. The first generation is generated through the random bit string generator from the overlap of three circles.
Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 309 Step 3. Object function: The purpose of object function is designed to solve the problem. According to the optimal condition, we designed an object function to prove the chromosomes are better or worse. The chromosomes are more conformed to the object function, the higher probability of being selected for Reproduction. Step 4. Reproduction: Based on comparing the object function value, new population of individuals is generated by the selecting schemes. Individuals with better performance based on object function have a higher chance of being selected for the next generation. Step 5: Crossover and Mutation: Crossover and mutation operators are applied to produce new generations. The new generations will be repeated execution step 3 and compared to the last generations. These schemes are designed to promote the performance of individual s multiplicity. 4. Simulation Result on Robot Positioning We adopt MATLAB to simulate the accuracy of the proposed visible light positioning system. The robot receiver is placed on the floor of the room. The five transmitters are placed at the coordinate (x=0m, y=10m, z=3m), (x=10m, y=10m, z=3m), (x=5m, y=5m, z=3m), (x=0m, y=0m, z=3m), and (x=10m, y=0m, z=3m). The transmitted signals are modulated into a group of M-sequence code in the same family. The M-sequence signature C 1(X) = (1, 1, 1, 0, 0, 1, 0) is assigned to transmitter XTR#1. One chip cyclic shift of C 1(X) becomes signature C 2(X) = (1, 1, 0, 0, 1, 0, 1), assigned to transmitter XTR#2. Two chips cyclic shift of C 1(X) becomes signature C 3(X) = (1, 0, 0, 1, 0, 1, 1), assigned to transmitter XTR#3. In this way, we will have signature codes C 4(X) = (0, 0, 1, 0, 1, 1, 1) and C 5(X) = (0, 1, 0, 1, 1, 1, 0), respectively assigned to transmitters XTR#4 and XTR#5. All LED transmitters and indoor robot receiver are connected to the central controller, under assumption that all transceivers are synchronized. The robot receiver operates correlation calculations on the received summed chips sequence and the local signature codes until correlation peaks are detected. For the i-th correlation peak, signal arrival time between robot receiver and transmitter XTR#i, i=1, 2,, 5, are measured. Compare these measured flight time, the nearest three transmitters are chosen as our base stations. Figure 5 shows the detected correlation peaks on robot receiver with LED transmitters XTR#1~XTR#5. Simulation results on correlation peaks occur at 18 ns for XTR#1, at 22 ns for XTR#2, at 11 ns for XTR#3, and at 28 ns and 32 ns for XTR#4 and XTR#5. We calculate the time-difference on-arrival (TDOA) among these transceivers flight time and find that XTR#1, XTR#2 and XTR#3 are the most suitable transmitter sources for the discussed positioning system. Figure 5. Robot receiver correlation calculations with each LED transmitters; (a). with transmitter XTR#1; (b). with transmitter XTR#2; (c). with XTR#3; (d). with XTR#4; (e). with XTR#5.
310 Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 Line-of-sight (LOS) and non-line-of-sight (NLOS) are two significant issues in indoor positioning system. Although the LOS is a basic case, LOS is an important situation. In the wireless communication channel, the measurement errors are unavoidable. The equations include NLOS and measurement errors are depicted in expression (2) below: ct d d e n (i = 2, 3) (2) i i 1 i NLOS where c is the light speed, t i is the time difference between transmitter XTR#i and transmitter XTR#1, d i is the distance between XTR#i and receiver, d 1 is the distance between XTR#1 and receiver, e i is the error of measuring time and always independent identically distributed Gaussian random variables and n NLOS is the NLOS error. Because we don t consider the NLOS situation, the value of n NLOS is zero. In the paper, we assumed that the robot receiver can only move on the floor. In order to estimate the position of the robot, we will modelled the environment in a space of two dimensions and then operate the TDOA method to estimate the coordinate of robot. In the general case, two transmitters can decide a set of hyperbolic and the intersection of the hyperbolas is the position of our target receiver. However, each hyperbola is affected by different measurement errors and leads to the offset of the hyperbolic position. The TDOA measured noise is considered in our simulation and the result of the TDOA is showed in Figure 6. The five transmitters are represented by blue circle and the robot receiver is represented by green square. If the measurement errors are too big, the intersection area will become large. The area within the purple line is the service range of these three transmitters. The limited scope is utilized in the system, the error range will not be expanded continuously. The position of the receiver is must be located in the intersection of red, blue and green hyperbolic at the same time. On the other words, the possible position of the receiver is situated in the hexagon. The general formula of the hexagon is expressed in (3) below: 2 2 2 2 d e x x y y x x y y (3) kl i k k l l The hexagon is determined by solving the six simultaneous equations and the region is satisfied by their intersection at the same time. The possible location of the robot is in the hexagon and the intersection of the region formed by any four hyperbolic is impossible location of the receiver. Figure 6. Measured error effect on TDOA location estimation. In addition to satisfy the object function, we utilize the simulation to illustrate the result which is executed after the object function. In the Figure 7, we show the result of four different generations. At the first time, we totally run 30 coordinates in random within the hexagon which is formed by different measurement errors hyperbolas and follow the steps of GA to optimize the robot coordinates. After 17 times of iterations, the distance of the coordinate far away from the robot will be abandoned and the better parent chromosome will be left to generate the offspring chromosome. As the result of the process of the iterations, we can see the distribution of the 30 points are gradually concentrated to the robot. The more times of iteration, the more centralized distribution will be obtained.
Chun-Chieh Liu et al. / Procedia Computer Science 110 (2017) 304 311 311 Figure 7. The result of four different generations. Based on Figure 7 on iteratively optimizing indoor robot locations, note that if we increase the number of iterations, the computation time will be longer. On the other hands, if we decrease the number of iterations, the positioning accuracy will become worse. Therefore, how to choose appropriate number of iterations is an important issue for our further research work. With the simulation results, we prove that the basic GA is effective to improve the accuracy of the positioning and to reduce the influence of the measurement error. 5. Conclusions and Future Work In the paper, we proposed an indoor positioning system for integrating correlation operations with genetic algorithms. At first step, we construct a family of M-sequence code and select five code sequences and assign to each transmitter. The selected M-sequence codes modulated with light source and transmitted to robot receiver. With the characteristic of the M-sequence codes, we can separate all signals from each transmitter. Then the second step, the code acquisition method is executed to obtain the time of flight between transmitters and robot receiver. In the simulation result, we can see the estimated robot localization is very close to the real robot. Therefore, we can prove that the proposed architecture is effective to improve the accuracy of the robot positioning. References 1. Ye-Sheng Kuo, Pat Pannuto, Ko-Jen Hsiao, and Prabal Dutta. Luxapose: indoor positioning with mobile phones and visible light, Mobile Computing and Networking, pp. 447-458, Sept. 2014. 2. Mohammad Shaifur Rahmant, Md. Mejbaul Haquet, Ki-Doo Kim. High Precision Indoor Positioning Using Lighting LED and Image Sensor, the 14th International Conference on Computer and Information Technology, pp. 22-24, Dec. 2011. 3. K.M. Chugg and M. Zhu, A new approach to rapid PN code acquisition using iterative message passing techniques, IEEE Journal on Selected Areas in Communications, vol. 23, no. 5, pp. 884 897, 2005. 4. M. Gouda, A. El-Hennawy, A.Ezzat, "Detection of Gold Codes Using Higher-Order Statistics," Informatics and Computational Intelligence (ICI), pp. 361-364, 2011. 5. Walsh JL, A closed set of normal orthogonal functions. AJM. vol. 45. 5-24, 1923. 6. Gregary B. Prince, Thomas D.C. Little. A Two Phase Hybrid RSS/AoA Algorithm for Indoor Device Localization using Visible Light, Symposium on Selected Areas in Communications, pp. 3347-3352, Dec. 2012. 7. E. Elnahrawy, X. Li, and R. P. Martin, The Limits of Localization using Signal Strength: A Comparative Study, the 1st IEEE International Conference on Sensor and Ad hoc Communications and Networks (SECON), Santa Clara, CA, pp. 406-414, Oct. 2004. 8. Niculescu and Badri Nath, "Ad hoc positioning system (APS) using AOA," IEEE INFOCOM 2003. The 22nd Annual Joint Conference of the IEEE Computer and Communications Societies, pp. 1734-1743, vol. 3, 2003. 9. Y. Itagaki, A. Suzuki and T. Iyota, "Indoor positioning for moving objects using a hardware device with spread spectrum ultrasonic waves," 2012 International Conference on Indoor Positioning and Indoor Navigation (IPIN), Sydney, NSW, pp. 1-6, 2012. 10. H. Liu, H. Darabi, P. Banerjee and J. Liu, "Survey of Wireless Indoor Positioning Techniques and Systems," IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), vol. 37, no. 6, pp. 1067-1080, Nov. 2007.