Future Generation Computer Systems (
)
–
Contents lists available at ScienceDirect
Future Generation Computer Systems journal homepage: www.elsevier.com/locate/fgcs
Tag localization in a two-dimensional RFID tag matrix Yunsik Son a , MyoungHwan Joung b , Yong-Wook Lee c , Oh-Heum Kwon b , Ha-Joo Song b,∗ a
Department of Computer Engineering, Dongguk University, 263-Ga Phil-Dong, Jung-Gu, Seoul, South Korea
b
Department of IT Convergence and Engineering, Pukyong National University, 45 Yongso-ro Nam-gu Busan, South Korea
c
Department of Electrical Engineering, Pukyong National University, 45 Yongso-ro Nam-gu Busan, South Korea
highlights • Localization of passive RFID tags in a two dimensional space. • Estimation of relative tag positions using a moving RFID reader. • The proposed scheme can be useful for practical usages.
article
info
Article history: Received 15 October 2015 Received in revised form 4 January 2016 Accepted 23 March 2016 Available online xxxx Keywords: RFID Passive tag Localization Relative position
abstract Localization schemes based on RFID technology are mostly estimating the location of tags either in a two dimensional or in a three dimensional space. In some applications, however, only the relative positions of the tags are needed instead of the exact locations. In this paper, we propose a RFID based localization scheme that estimates the row and column indexes of tags that are spread in a two-dimensional matrix using the movement of an RFID reader. The movement of a reader brings changes in the set of tags that are scanned in consecutive read operations. Based on the changes, the proposed scheme estimates relative positions of tags in a tag matrix. Proposed scheme does not need additional equipment such as reference tags and readers. Therefore it can be easily applied to various applications that need relative positions among tagged objects. © 2016 Elsevier B.V. All rights reserved.
1. Introduction Readers and tags are the two main components of RFID (radio frequency identification) systems to archive their functionality [1,2]. A reader coupled with one or more antenna interrogates multiple tags. A reader activates the tags and receives the identification data sent back from the tags. Therefore RFID technology has been used to identify the tagged objects in inventories. However as the RFID technology is widely adopted, it is also used for various purposes such as localization techniques. RFID based localization techniques are to estimate the locations of the tags or the readers in places where GPS is not applicable, for example, indoor environments. In this paper, we propose a localization scheme that estimates the relative positions (row and column indexes) of tags by moving a reader while scanning the tags. Fig. 1 shows how the
∗
Corresponding author. Tel.: +82 51 629 6258; fax: +82 51 627 6392. E-mail addresses:
[email protected] (Y. Son),
[email protected] (M. Joung),
[email protected] (Y.-W. Lee),
[email protected] (O.-H. Kwon),
[email protected] (H.-J. Song). http://dx.doi.org/10.1016/j.future.2016.03.017 0167-739X/© 2016 Elsevier B.V. All rights reserved.
suggested localization scheme works in an application. We assume that the tags are spread in a matrix and the row and column size of the matrix is known priory. Reader scanning is performed from the left-top corner of the matrix to the right-bottom corner. The reader moves from left to right and right to left with slightly moving downward every time it changes the moving direction. While scanning, the reader repeats the read operations continuously and gives read sets—sets of tags identified in each read operation. After finishing the scanning, proposed scheme analyzes scan tags and estimates the row and relative positions of the tags in the matrix. The proposed approach can be applied to various purposes. For example as shown in Fig. 1, the information about the tagged items can be shown in the screen of the RFID enabled device in the exactly same order as they are placed in the real world. Proposed scheme can be also applied to check the locations of items in warehouses where items are stocked in matrix form. Proposed scheme is also helpful to check the sequential order of books in a book shelf in a library. This paper is organized as follows. In Section 2, we briefly explain previous approaches regarding to localization techniques using RFID tags. We propose our approach to estimate the
2
Y. Son et al. / Future Generation Computer Systems (
)
–
Fig. 1. Example application of the proposed approach.
positions of tags in Section 3 and illustrate its performance and characteristics through experimental tests in Section 4. Then we give conclusion and suggest future studies in Section 5. 2. Related work Localization is to estimate the locations of objects within a specific region either indoor or outdoor. Position can be expressed in several ways depending on the application requirements or the positioning system specification [3]. There have been many researches regarding to localization using RFID tags [4,5]. Previous approaches can be largely divided into two categories—tag localization and reader localization depending on the localization target. In tag localization approaches [6–8], readers and reference tags are deployed in fixed positions in an area of interest. The positioning techniques are used to find out the location of a target tag. [6] uses the received signal strength information (RSSI) to range between a target tag and at least three readers and then estimate the position by applying trilateration. LANDMARC [7] is based on a scene analysis approach that uses readers with different power levels and fixed reference tags which serve as landmarks. Ranging is done by changing reader powers and checking the signal strength from the reference tags and the target tag. Then, k-nearest reference tags are selected and the target tag’s location is estimated by averaging them. [8] proposed a 3-D localization scheme that uses reference tags and readers. In this approach, reference tags and readers are deployed on the floor and ceiling and ranging is done by varying reader’s the signal power. Target location is estimated by applying Simplex method [9] to the set of reference tags being detected. In LPM [10] approach, readers are synchronized by reference tags, and then the time difference of arrival (TDOA) and time of arrival (TOA) between readers and reference tags and the target tag are measured to estimate the location of the target tag. [11] used two mobile readers to detect the target tag and uses RSS measurement to measure the reader–tags distance and target to reference tag distance to estimate the target location. An adaptive Kalman filter and probabilistic map matching are applied to minimize the effect of the RSS and the process measurement noises on the position estimation. In reader localization approaches, reference tags which can be either passive or active tags are deployed in known positions and localization methods are applied to locate the reader. [12] used a grid of passive tags on the floor as the reference tags. Reader scans the tags and estimates its location by weighted average and Hough transform. [13] deployed the reference tags in triangular pattern and showed that the suggested pattern can reduce the estimation error of conventional square patterns. [14] suggested a
learning based localization algorithm which trains a support vector machine (SVM) using synthesized sensor data which have been generated from the real sensor data. [15] proposed an observation model that computes the likelihood of tag detections given the position of the tags with respect to the reader. [15] also made use of the posterior about the position of the reader to localize the reader and its trajectory. [8] provided reader localization scheme which estimates the center and radii of the set of reference tags detected using Simplex optimization method. For further improvement of accuracy border node identification and reader rotation have developed. [3] suggested an interesting study on the impact of the interference between readers that can be introduced when multiple readers should be localized simultaneously. [4] proposed a localization algorithm for the reader in a predefined path. In this scheme, passive tags are deployed along the path as reference points. Location of the reader is first estimated by measuring the back-scattered power levels from the nearby tags. It is then iteratively improved by compensating the effect of tag-angle path. Among the previous approaches explained above, proposed approach can be categorized into tag localization scheme. However proposed approach is different from other tag localization schemes in two aspects. Firstly, the goal of our approach is to find the relative positions (indexes) of tags that are spread in a matrix form. Hence our approach provides the column and row indexes of tags rather than the coordinates of tags. Secondly, proposed approach does not need the deployment of reference tags or readers. It uses only a movable reader. 3. Estimation of the row and column indexes of tags in a tag matrix 3.1. Problem definition Fig. 2 shows the setting of the problem. Tags are placed in a matrix form of which the size is known in priory. Let R and C denote the size of row and column, respectively. We call the grid of the tags as tag matrix. A reader moves horizontally along the tag rows in both directions—either left-to-right or right-to-left. The direction changes can be checked manually by pressing button on the device or automatically by sensing the accelerometer if the device is equipped with one. We define a horizontal scan of the reader as a scan line. First scan line starts from the left top position of the tag matrix and ends near of the rightmost tag. Then antenna moves down vertically and continue to move in opposite direction until it reaches near the leftmost tags. Reader’s movement is repeated until the bottom row is scanned. The last scan line can be either the left-to-right or right-to-left. In Fig. 2, there are M scan lines. We define the gap between the scan lines as scan offset. We assume that the scan offsets are all the same. If a small scan offset is used,
Y. Son et al. / Future Generation Computer Systems (
)
–
3
Fig. 2. Problem setting.
there should be more scan lines than when a bigger scan offset is used. While moving along the scan lines, the reader repeats read operations continuously. As there are multiple scan lines that consist of multiple read operations, the set of read operations can be viewed as a matrix of read operations. We call the set of read operations as a scan array. Since the number of read operations in scan lines can be different, the scan array is a ragged two dimensional array that may have different column sizes for each row. We call the set of tags that have been read in a read operation as a read set, and let Ci,j denote a read set for jth read operation of ith scan line. Note that in case of right-to-left reader movement, jth read set is a set of tags that have actually read in (k − j + 1)-th read operation of ith scan line, assuming that there are k read operations in the ith scan line. Number of scan lines (M) is independent on the size of tag rows (R). M can be greater, equal or less than R. We expect that using greater M will give better estimation performance. Fig. 3 shows a partial example of scanning a tag matrix. Dots labeled a to l denote the tags and circles are the read sets of the reader as it moves along the scan line. In this example, we get seven read sets. C1,2 = {b, c , f , g } C1,3 = {c , d, g , h} C2,1 = {e, i}
b
c
d
e
f
g
h
i
j
k
l
1 1 –
2 2 –
2.5 3 –
3 4 –
1 1 1.5 1
2 2 2.5 2
2.5 3 3 3
3 4 4 4
–
–
–
–
1.5 1
2.5 2
3 3
4 4
From the examples in Fig. 3, applying tag a and read sets C1,1 , C1,2 , and C1,3 , to the function, we will get following results. e a, C1,1 = 1
e a, C1,2 = 0
e a, C1,3 = 0.
3.2.1. First step—estimating the order of all tags in scan lines Let Ci,1 . . . Ci,k are the read sets of the ith scan line. To estimate the order of tags read in i-th scan line. We calculate average read column index Ai for each tag t that have been read in ith scan line as follows. k
j · e t , Ci,j
C2,4 = {h, l} .
3.2. Estimation algorithm Fig. 4 shows the proposed estimation algorithm with given read sets and matrix size. The estimation algorithm works in three steps. In first step, it estimates the order of all tags read in each scan line. In second step, it estimates the row indexes of all tags. In the third step, it assigns column indexes for all tags. Before we further explain about each step, we define a function e which returns 1 if given tag t exists in a given read set Cij , otherwise it returns 0.
1 0
if t ∈ Ci,j otherwise.
k
e t , Ci,j .
j =1
For the tag g in the example shown in Fig. 3, A1 (g ) and A2 (g ) can be calculated as follows. 1 · e g , C1,1 + 2 · e g , C1,2 + 3 · e g , C1,3
e g , C1,1 + e g , C1,2 + e g , C1,3
1·0+2·1+3·1
5
= = 2.5 0+1+1 2 1 · e g , C2,1 + 2 · e g , C2,2 + 3 · e g , C2,3 + 4 · e g , C2,4 A2 ( g ) = e g , C2,1 + e g , C2,2 + e g , C2,3 + e g , C2,4 1·0+2·0+3·1+4·0 3 = = = 3. 0+0+1+0 1 =
The goal of the problem is to estimate the row and column indexes for every tags in the tag matrix given the row and column size (R × C ) of the tag matrix and read sets of scan lines. We also assume that there are same number of tags in each row and number of read sets in scan lines can be different from one another.
j =1
A1 ( g ) =
C2,3 = {f , g , j, k}
e t , Ci,j =
a
A1 O1 A2 O2
C2,2 = {e, f , i, j}
Tags
Ai (t ) =
C1,1 = {a, e}
Table 1 Average read column and ordinal numbers for tags along each scan line.
Average read column is the average column index for a tag that has been read in a scan line, which means the expected order of the tag in the scan line. Therefore, all tags in a scan line are sorted according to the average read column. Then ordinal numbers are given for each tag starting from the tag with the smallest average column index to the biggest. Table 1 illustrates the result of step one for the tags in Fig. 3. A1 and A2 are the average column indexes and O1 and O2 are tag’s ordinal numbers. If two or more tags have the same average column index, the same ordinal number is given to them and regardless their occurrences, next ordinal number is given to the next tag. In Table 1, tag a and tag e, tag b and tag f, tag c and tag g, tag e and tag h have the same ordinal numbers for O1 .
4
Y. Son et al. / Future Generation Computer Systems (
)
–
Fig. 3. Example of read sets for a moving reader.
Fig. 4. Row and column estimation algorithm with given read sets and matrix size.
3.2.2. Second step—estimating row indexes for tags Since a tag is more likely to be read as it gets closer to the antenna, scan lines close to tag t will be more likely to have read sets that contain tag t than the further scan lines do. Based on this observation, we define weight of a tag t for ith scan line as wi (t ) which is calculated
wi ( t ) =
k
e t , Ci,j /k
j=1
wi (t ) is the number of read sets that contains tag t divided by the number of read sets in ith scan line. This means that if a tag has been read frequently along a scan line, it will have bigger weight value. From the example in Fig. 3, weight of tag f for 2nd scan line (w2 (f )) can be calculated as follows.
w2 (f ) = e f , C2,1 + e f , C2,2 + e f , C2,3 + e f , C2,4 /4 = 2/4 = 0.5. Table 2 shows the weights of all tags for each scan line. Let Oi (t ) denote the ordinal number of tag t in the ith scan line. For all the tags read in all scan lines, we calculate Pr and Pc as follows. Pr ( t ) =
M i=1
Pc (t ) =
M i =1
wi (t ) · i
M
wi ( t )
i =1
M wi (t ) · Ri (t ) wi ( t ) i=1
Pr (t ) is a weighted sum of tag t in all scan lines that it appears. Hence Pr (t ) is the average scan line number or expected scan line number in which tag t has been read. Tags are first sorted in ascending order of average scan line value, and partitioned into groups of size C (number of columns in the tag matrix) starting from the smallest one. Row indexes are given from 1 to R, starting from tags in first smallest average scan line group to the largest one, and the same row index is assigned for all tags in a group. Pc (t ) is a weighted sum of tag t’s ordinal numbers in all scan lines in which it appears. Table 3 shows the Pr and Pc of all tags in the example. Sorting the tags by their Pr values gives following result: a (0.33, 1) , b (0.33, 2) , d (0.33, 4) , c (0.5, 3) , g (1.33, 3) , h (1.43, 4) , e(1.60, 1), f (1.60, 2), i(2, 1), j(2, 2), k(2, 3), l(2, 4). Creating tag groups with size 3 (column size of a tag matrix) and assigning a row number for each group will give following result. Row 1 = {a (0.33, 1) , b (0.33, 2) , d (0.33, 4) , c (0.5, 3)} Row 2 = {g (1.33, 3) , h (1.43, 4) , e (1.60, 1) , f (1.60, 2)} Row 3 = {i (2, 1) , j (2, 2) , k (2, 3) , l (2, 4)} . 3.2.3. Third step—estimating column indexes for tags As a last estimation step, the localization scheme sort tags using their Pc values. With the example case, we will have following
Y. Son et al. / Future Generation Computer Systems (
)
–
5
Table 2 Weights of all tags along the scan lines. Tag
a
b
c
d
e
f
g
h
i
j
k
l
w1 w2
0.33 0
0.33 0
0.5 0
0.33 0
0.33 0.5
0.33 0.5
0.5 0.25
0.33 0.25
0 0.5
0 0.5
0 0.25
0 0.25
Table 3 Pr and Pc of all tags. Tags
a
b
C
d
e
f
g
h
i
j
k
l
Pr Pc
0.33 1
0.33 2
0.5 3
0.33 4
1.60 1
1.60 2
1.33 3
1.43 4
2 1
2 2
2 3
2 4
Table 4 Test configurations. Tag matrix
4 rows × 6 columns (24 tags)
Tag–tag distance (cm)—ttd Reader speed (cm/s)—rs RF attenuation (dB)—att Number of scan lines—nsl Wall–reader distance (cm)—wrd
15, 30 10, 20 150, 0 2, 4, 6 5, 20
Fig. 6. Test result ttd15-rs10-att150 with varying nsl and wrd.
Fig. 5. Test configuration.
result: Row 1 = {a(0.33, 1), b(0.33, 2), c (0.5, 3), d(0.33, 4)} Row 2 = {e(1.60, 1), f (1.60, 2), g (1.33, 3), h(1.43, 4)} Row 3 = {i(2, 1), j(2, 2), k(2, 3), l(2, 4)}. Finally by assigning the column indexes from the smallest one to the largest in each row, we get the row and column indexes for all tags as follows. a [1] [1] b [1] [2] c [1] [3] d [1] [4] e [2] [1] f [2] [2] g [2] [3] h [2] [4] Fig. 7. Test result ttd30-rs10-att150 with varying nsl and wrd.
i [3] [1] j [3] [2] k [3] [3] l [3] [4]. The result is exactly the same as the actual placement of the tags. In this example, the read coverages of read operations have been regular circles and there are no outliers. Outliers are tags that are read irregularly and may cause estimation errors, which is very often in real environment. 4. Experimental tests 4.1. Experimental test setup In this section, we show the experimental test results of the proposed localization scheme with various test configurations (Table 4). As shown in Fig. 5, tag–tag distance (ttd) denotes the distance between tags. In this test, both vertical and horizontal distances are set equal to each other. Reader speed (rs) is the speed of moving reader in cm/s. RF attenuation (att) controls the signal strength being used to communicate between tags and the reader. 0 dB means the strongest signal the reader supports while 150 dB is the weakest that uses almost 1/32 strength of 0 dB. Number of
scan lines (nsl) is the number of scan lines performed in each test. Wall–reader distance (wrd) is the distance between the surface of the reader – actually antenna – and the plane on which the tags are placed. Since we know the correct position for all the tags, let PtC and Pte denote the correct and estimated position for tag t respectively. PtC and Pte can be represented as (Rct , Ctc ) and (Ret , Cte ) which respectively denote the row and column indexes. We define positional error for a tag t (perr t ) in terms of Manhattan distance from the estimated position (row and column index) and the actual position which means index offsets from the actual position (PtC ) and estimated position (Pte ). perr t = Pte − Ptc = Ret − Rct + Cte − Ctc .
Estimation error (perr) for the given tag set (ts) can be defined as the sum of all the positional error for the tags in ts. err =
∀t ∈ts
perr t =
Re − Rc + C e − C c . t
∀t ∈ts
t
t
t
6
Y. Son et al. / Future Generation Computer Systems (
Fig. 8. Test result ttd15-rs10-wrd5 with varying nsl and att.
Fig. 9. Test result ttd15-rs10-wrd20 with varying nsl and att.
Every configuration has been tested 5 times and means of estimation error for each configuration are given in the test results. 4.2. Experimental test results Fig. 6 shows how the estimation error changes with the varying nsl and wrd. The error significantly decreases as nsl increases. Using a bigger nsl brings narrower scan offsets – the distances between the scan lines – and gives more read sets per a scan line. This means that we get more information for the estimation, and therefore get better estimation performance. Test result with the varying wrd gives interesting result. Estimation performances are better when
)
–
we use a smaller wds except the case nsl = 2. As the reader gets closer to the tags, it is more likely that only the tags close to the reader are identified giving more accurate read sets, which results in better estimation performance. The cases with nls = 2, however, the scan offset is quite big and tags are far from the reader compared with other cases. Therefore tags are frequently missed while scanning, resulting in a poor estimation performance. Fig. 7 illustrates a test with tag–tag distance is 30 cm with other settings are all the same with the case shown in Fig. 6. Since the gap between the tags are bigger than the cases shown in Fig. 6, the estimation performance is much better except for nsl = 2. With nsl = 4 and nsl = 6, estimation error has been always zero if tags and antenna are close together (wrd = 5). In case nsl = 2, it is harder for the reader to read the tags since the tags are beyond the reader’s read coverage. This is more significant when the reader is closer to the wall (wrd = 5) resulting in very poor estimation performance. Figs. 8 and 9 shows the test results with varying RF attenuation. In most cases, it is better to use weak RF signals (att = 150 dB) rather than a strong one (att = 0 dB). This is caused by the fact that if a strong signal is used, the reader can read tags quite far from it and those tags bring bad effect on the estimation since more outliers are introduced in the scanning. We can notice the bad effect of using a strong signal in Fig. 8. Fig. 8 shows that there is no significant performance difference with varying nsl. Using strong signal is good only for cases with nsl = 2 and wrd = 5, since in these cases the reader could read tags that might be lost if a weak signal has been used. We can notice that reader’s moving speed also has significant effect on the estimation performance. In most cases, slower movement (rs = 10 cm/s) of the antenna results in the better performance as it is shown in Fig. 10. This is due to the fact that slow movement of reader brings more reliable RF communication between the tags and the reader. We can also find out that this effect is more dominant when wrd is small (wrd = 5 cm). Antenna’s angular velocity with respect to the tags are bigger with the cases wrd = 5 cm than those with wrd = 20 cm. Therefore the cases with wrd = 5 cm are forced to use less reliable RF communication between the tags and the reader resulting in worse estimation performance.
5. Conclusion In this paper, we proposed a localization scheme that estimates the positions of tags that are spread in a matrixform on a two
Fig. 10. Test results with ttd = 15 and att = 150.
Y. Son et al. / Future Generation Computer Systems (
dimensional plane simply by moving a reader above the tags. We analyzed the performance of the proposed scheme with various working configurations. Proposed estimation scheme is applicable for applications that need relative positions among tagged objects. Since the proposed scheme does not need any reference tags and readers, it can be applied easily to existing applications. As the proposed scheme suffers from the outlier tags, we are going to develop a new scheme which is robust to the outliers. Another future research topic is to design a new algorithm that does not need the size of tag matrix in advance. Acknowledgment
)
–
7
Yunsik Son received the B.S., M.S., and Ph.D. degrees in computer engineering from Dongguk University, Seoul, in 2004, 2006, and 2009, respectively. He is currently in a post-doctoral position in the Dept. of Computer Engineering, Dongguk University. His research interests include computer security and programming languages.
MyoungHwan Joung received the M.S. degrees in computer engineering from Pukyong National University, Busan in 2008. He is currently a senior researcher of eCIS. His research interests include RFID middleware systems and database applications.
This work was supported by Pukyong National University Research Grant CD20150850. References [1] M.I. Syed, A. Ahson, RFID Handbook: Applications, Technology, Security, and Privacy, CRC press, 2010. [2] R. Want, An introduction to RFID technology, IEEE Pervasive Comput. 5 (1) (2006) 25–33. [3] A. Papapostolou, H. Chaouchi, RFID-assisted indoor localization and the impact of interference on its performance, J. Netw. Comput. Appl. 34 (3) (2011) 902–913. [4] S.S. Saab, Z.S. Nakad, A Standalone RFID indoor positioning system using passive tags, Vol. 58, no. 5, 2011, pp. 1961–1970. [5] K. Al Nuaimi, A. Ain, A survey of indoor positioning systems and algorithms, 2011, pp. 185–190. [6] J. Hightower, G. Borriello, C. Science, Ubiquitous, no. August 2001, 2003. [7] L.M. Ni, Y. Liu, Y.C. Lau, A.P. Patil, LANDMARC: Indoor location sensing using active RFID, Wirel. Netw. 10 (6) (2004) 701–710. [8] C. Wang, H. Wu, N.-F. Tzeng, RFID-Based 3-D positioning schemes, in: IEEE INFOCOM 2007–26th IEEE International Conference on Computer Communications, 2007, pp. 1235–1243. [9] J.A. Nelder, R. Mead, A simplex method for function minimization, Comput. J. 7 (4) (1965) 308–313. [10] A. Stelzer, K. Pourvoyeur, A. Fischer, Concept and application of LPM—A novel 3-D local position measurement system, IEEE Trans. Microw. Theory Tech. 52 (12) (2004) 2664–2669. [11] A. Bekkali, H. Sanson, M. Matsumoto, RFID indoor positioning based on probabilistic RFID map and kalman filtering, in: Third IEEE Int. Conf. Wirel. Mob. Comput. Netw. Commun., WiMob 2007, WiMob, October 2007, pp. 21–21. [12] H. Lee, K. Choi, M. Lee, J. Lee, Localization of mobile robot based on radio frequency identification devices, 2006. [13] S. Han, H. Lim, J. Lee, An efficient localization scheme for a differential-driving mobile robot based on RFID system, Vol. 54, no. 6, 2007, pp. 3362–3369. [14] K. Yamanoi, K. Tanaka, M. Hirayma, E. Kondo, Y. Kimuro, Self-localization of mobile robots with W I D system by using support vector machine, 2004, pp. 3756–3761. [15] B. Xu, W. Gang, Random sampling algorithm in RFID indoor location system, 2005.
Yong-Wook Lee received the B.S., M.S., and Ph.D. degrees in computer engineering from Seoul National University, Seoul, in 1998, 2000, and 2004, respectively. He was a senior researcher of ETRI. He is currently an associate professor in the Dept. of Electric Engineering, Pukyong National University.
Oh-Heum Kwon received the B.S. degree in computer engineering from Seoul National University in 1988 and the M.S. and Ph.D. degrees in computer science from the Korea Advanced Institute of Science and Technology in 1991 and 1996, respectively. He is currently a professor in Dept. of IT Convergence and Application Engineering, Pukyong National University, Pusan, Republic of Korea. His research interests include design and analysis of algorithms and distributed computing. He is a member of the IEEE Computer Society.
Ha-Joo Song received the B.S., M.S., and Ph.D. degrees in computer engineering from Seoul National University, Seoul, in 1991, 1993, and 2001, respectively. He was a senior technical staff of IT4Web. He is currently a professor in Dept. of IT Convergence and Application Engineering, Pukyong National University. His research interests include RFID middleware systems and flash memory-based embedded database systems. He is a member of the IEEE Computer Society.