a cloud computing using rough set theory for cloud ...

2 downloads 1980 Views 13MB Size Report
Cloud Computing is an awesome technology which have go ahead and annex ...... rich resources such as online analysis websites and blogs rises as one can ...... speech recognition system is developed for re-cognizing digits in Malayalam.
A CLOUD COMPUTING USING ROUGH SET THEORY FOR CLOUD SERVICE PARAMETERS THROUGH ONTOLOGY IN CLOUD SIMULATOR Ashish Tiwari*, Amit Kumar Tiwari, Hukam Chand Saini, Amit Kumar Sharma, and Anoop Kumar Yadav Central University of Rajasthan, Computer Science and Engineering, NH-8,Bandarsindri, Kisangarh, Ajmer, Rajasthan {[email protected],[email protected], [email protected],[email protected], [email protected]}

ABSTRACT : Cloud Computing is an awesome technology which have go ahead and annex the computing world. The development of cloud computing embed its sprouting continually in the recent era. Cloud Computing have contrived clan very lavish comfortable to perform their chore. As its fundamental defnition says that As You Pay As You Go. In this delving work talk about the cloud simulator working in our algorithm which is prepared with the help of rough set theory. The algorithm is implemented in the cloud simulator in which cloudlets, datacenters, cloud brokers are created to perform the algorithms with the help of rough sets. The Ontology is the system consists of cloud services in which cloud service discovery system is maintained. At last there is the implementation of work done using the rough set in cloud simulator using net beans and sql as back end. The net beans is loaded with the cloud Sim packages in which some of the packages are prepared according to our algorithm and gives the expected output of the optimization using rough set as a new concept.

KEYWORDS : Cloud Simulator, Rough Set Theory, Cloudlets, Datacenters , Cloud Ontology System and Parameters

1. INTRODUCTION In the day today world Computing is moving in its seven heavens where it is making its place like a worm in a fruit. The most important thing to see here is its play a vital in businesses. By this rapid development in businesses most number of people wants to save their money, time, ____________ *M.Tech Final Year Student (Dept. of CSE), I want to give special thanks to Dr.A.Nagaraju, Mehul Mahrishi (Assistant Professor Central University of Rajasthan) and Pradeep Kumar (M.Sc) for backgroud support.

Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 01–09, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3401

2

Computer Science & Information Technology (CS & IT)

space and performance etc. This increment done is due to the people requirements in the web applications, by these application they are enjoying the life and consuming the time and money. This may increment in the field of ebusiness by see the demand of people. In this world Cloud Computing is spreading very rapidly through internet. So from all over analysis the basic definition of the cloud computing can be given as the computing which tells about both the applications providing services with the help of internet and available scalable hardware and the software running on the systems may provide the services.[1] [2] Its basic definition tells as you pay as you go manner. There are many computing present in the clouds like public, private and hybrid. These computing play an important role in cloud computing concept. Here the cloud computing is dealing with the cloud service providers which play an vital role for the formation of the scheduling performed in the cloud computing.[4]

Fig. 1. Basic Structure of Cloud Computing. There is a advanced study of the various cloud service providers and the parameters found after the survey may play an important role for the formulation. The Deep study of the standard organizations which are providing the various certification and protocols to perform their tasks in well ordered and organized manner.[3] Cloud Ontology is the system that is maintained to determine the similarities between and among services.[9] Ontology when retrieving information about Cloud services. The relations among the different types of Cloud services and determining which service(s) would be the best or most appropriate service for meeting consumers service requirements.[7][8] On the calculated parameters there is the working of the cloud service providers and standard organizations are helping the services on that basis.

Fig. 2. Cloud Ontology System

Computer Science & Information Technology (CS & IT)

3

2. PROBLEM STATEMENTS The problem in cloud computing here deals with the cloud service providers selection of the formulated parameters. For some CSPs there may be certain services or activity that may be declining and not possible to be accessed at certain points during the day. This kind of unwanted selections defeats the purpose of the cloud. If we are investing a lot of projects in the cloud, then we expect the cloud service to be reliable. Even the top CSPs in the market have been facing the similar problems in the cloud environment. Here we have seen a lot of importance of CSPs for taking in account the features or characteristics such as Infrastructure, Platform, and Services. The method of selecting a Cloud Service Provider is evaluated on the basis of Which-Cloud Provider-Provides- What. The Basic Questions which comes in mind for the selection process are as follows. • • • • • • • • •

Why we will use this Provider? Does it satisfy our problems? How Costly It is May to Me? Is Data or information is safe in it? What Security features they are providing with it? What should be the limit of storage and Recovery of Data if Cloud or Office Destroyed as per act of God or Different accidents? Which type of access control is provided to the user as per safety purpose? How we can give the payments and at that level which security is applied? How will cloud Provider Checks that the user added in its Cloud is valid or not?

3. RELATED WORK In this survey be having taken various parameters for the resource managements and users in benefits in terms of time and money.We have collected a set of parameter requirements and guidelines devised for cloud platform and service. The conformance of the cloud service platform and service considered for evaluation, with the requirements and guidelines is done by doing manual assessment. The algorithm internally calculates two scores based on the assessment results. One score is denotes the strength of parameter architecture of the cloud service, the second score denotes the fuzzy value associated with each service provider's. The requirements and guidelines has been collected in a technology and implementation through agnostic way. Proper scheduling can have significant impact on the performance of the system. However, in general, the problem of mapping tasks on distributed services belongs to a class of problems known as NP-hard problems. For such problems, no known algorithms are able to generate the optimal solution within polynomial time. Even though the workflow scheduling problem can be solved by using exhaustive search, the complexity of the methods for solving it is very high. Upto now there are two major types of workflow scheduling, best-effort based and Quality of Services constraint based scheduling. The idea of Adaptive Scheduling Algorithm is to divide the scheduling process into 2 phases: (1) a logical partition step and (2) a physical allocation step. The key motivation behind this multistage procedure is to reduce the complexity of scheduling problem. The Adaptive Scheduling Algorithm (ASA) [11] is proposed to find a suitable execution sequence for work

4

Computer Science & Information Technology (CS & IT)

flow activities by additionally considering resource allocation constraints and dynamic topology changes. This algorithm utilises a multistage distribution algorithm to cope with network dynamics. [11] The two major challenges exist in multimedia cloud are the resource cost and the service response time. [13] The author proposed queuing model to optimize the resource allocation for multimedia cloud in priority service scheme. There is also the formulation and solution of the resource cost minimization problem and the service response time minimization problem. The author has the priority service scheme in multimedia cloud datacenter as three concatenated queuing systems, which are schedule queue, computation queue and transmission queue. [13]

4. TECHNIQUES USED Now the techniques of job scheduling and allocation to the cloud service providers gains a lot of attraction of the cloud researchers. The algorithms for task ordering on the basis of their arrival and task mapping are already proposed. We are proposing a similar kind of approach but to a level above that of job scheduling. It is a responsibility of the cloud computing service provider to provide the adequate service level satisfaction, so we are proposing to devise an algorithm which made possible the cloud middleware to determine capability of CSP by using Rough Set analysis on the basis of level of satisfaction of service. Rough set model can handle with objects and its characteristics.

Fig. 3. Cloud Ontology System

4.1 Cloud Computing Parameters On the above mentioned CSPs we have noticed out some of the important Services and the parameters according to that services? The Services and parameters are explained with its importance are as follows. The first one is Data Operation which deals with the different data operation such as searching of data either on the basis of content or location. Moreover some security and access mechanism issues are also discussed. Lastly, it also touches the data persistance methods. The second is Legal Issues in which we have found that it deals with the legal issues that could be generated when data is moved to the cloud, issues regarding NDA and other agreements between CSP and the customer and other issues that are resolved under laws and litigations of a country. The Third one is Risk Management in which we may deal about

Computer Science & Information Technology (CS & IT)

5

Organizations shall develop and maintain a cloud oriented risk management framework to manage risk as defined in the master agreement or industry best practices and standards. The Fourth one is the Compliance And Audit in which Customer and provider both must understand the importance and should follow the implications on existing compliances, audits and other best practices. The fifth one is the Inter-portability and Portability is explained to interoperability features provided shall support security of the data exchanges and messages at protocol level, policy level and identity level. There shall be a mechanism to support integration of services, each of which has a different security mechanism. There are many more parameters found out but from all these are the best surved in our survey.

4.2 Cloud Service Providers As per the Survey we have studied more than 30 CSPs and now going to represent the study on that CSP in detailed manner which are on the top of the levels according to the survey of Users and Functionalities given by gaining mind share. The Cloud Service providers are as follows according to their rating are as follows. Amazon Web Services (AWS), Second is Google Apps (AppEngine), Third VMWare vSphere (Virtualization), Fourth Rackspace Mosso, Fifth Cisco and so on.

4.3 Standard Organization There are many standard organizations for cloud management and certifications provided by them for the safety purpose. Some of the Organizations are explained in detailed manner as follows. The Cloud Security Alliance is made to provide the excellent security in Cloud Computing. The main aim is to make proper researches, Understanding, awareness, Education and many more functionalities. According to Cloud Security Alliance mission statement is "To promote the use of best practices for providing security assurance within Cloud Computing, and provide education on the uses of Cloud Computing to help secure all other forms of computing." The Distributed Management Task Force (DMTF) it is an organization built in 1992 whose aim was on IaaS (Infrastructure as a Service) which is giving high performance, scalable, flexible infrastructure. The National Institute of Standards and Technology (NIST) NIST is a non-regulatory federal agency whose goal is to promote innovation and United States competitiveness by advancing standards, measurement science, and technology. They are focused on helping federal agencies understand cloud computing. There are many more organizations in which we have gone through the survey and got help.

5. ROUGH SET MODEL Rough set theory is a new mathematical approach to imperfect knowledge. The problem of imperfect knowledge has been tackled for a long time by philosophers, logicians and mathematicians. Recently it became also a crucial issue for computer scientists, particularly in the area of artificial intelligence.[14] The rough set approach seems to be of fundamental importance to AI and cognitive sciences, especially in the areas of machine learning, knowledge acquisition, decision analysis, knowledge discovery from databases, expert systems, inductive reasoning and

6

Computer Science & Information Technology (CS & IT)

pattern recognition.[15] The formulation of upper and lower approximation are under Crisp Sets. The approximation of set may be Fuzzy Sets. The equivalence class of R determined by element x will be denoted by R(x). The indiscernibility relation in certain sense describes our lack of knowledge about the universe. Equivalence classes of the indiscernibility relation, called granules generated by R, represent elementary portion of knowledge we are able to perceive due to R. Formal definitions of approximations and the boundary region are as follows: 1. R-lower approximation of X

2. R-upper approximation of X

3. R-boundary region of X

Rough set analysis will be on the basis of level of satisfaction of service Parameters. We know that all service providers are not all-rounder's i.e. they cannot be counted non-stop utilization for all kind of services. By applying Rough set model we are able to categorize each CSP on the basis of its speciality in service providing. For each attribute

the value of

The value 1 and 0 above represents that either a CSP is specialized in a particular service or not. If the resultant value is 1 that means the CSP can be considered for the request otherwise not. We also categorise the attributes on the basis of relevance to tenant and CSP's. The relevance generates a threshold value for each attribute out of a scale of 10.

6. METHODOLOGY As per the Rough Set representation, we have represented the CSP and their attributes in a tabular form called Information System. The rows of the table contain the list of cloud service providers and the columns consist of the attributes of the respective cloud service provider. When we talk about attributes that means the parameters we have identified in our study (Data Operations, Risk Management etc.)

Computer Science & Information Technology (CS & IT)

7

Fig. 4. Algorithm Proposed by Us. In rough set model we represent the CSP and their attributes in a tabular form. The rows of the table contain the list of cloud service providers and the columns consist of the attributes of the respective cloud service provider. This table 1 is converted into table 2. As per the rough set analysis processes table 2 is divided into lower and upper approximations. The lower one we cannot consider for assigning to the jobs because these are not suitable according to user standards. A very simple information system is shown in the following table 1, which contains rating of CSPs attributes ratings in a Cloud environment. These rating are just for example, as we can find the original ratings for original CSPs by performing some surveys. Here we considered seven service providers with four attributes: Application Security, Legal Issues, Virtualization and Compliance Audit.

8

Computer Science & Information Technology (CS & IT)

Fig. 5. Information System Table 1

Fig. 6. Information System Table 2

Fig. 7. Fuzzy Cost Value.

7. CONCLUSION AND FUTURE WORK In this research work we have proposed the scheduling for cloud service providers. After identifying the service requirements, the user can submit their job to the cloud and there the middleware can implement this mathematical model to rate CSPs and on the basis of their capabilities. In this system we are trying to develop the Ontology system which may give the actual values of the CSPs on the basis of the parameters taken for more efficient scheduling. The scope of this research can be extend further, in which apart from taking the cumulative cost function, we can also generate the cost on the basis of individual capability of CSP for an individual attribute. For example if a user needs a cloud that CSP whose cost function is maximum for security attribute rather than maximum value from the fuzzy costs.

REFERENCES [1]

[2]

J. Octavio, Gutierrez-Garcia, Kwang Mong Sim: A family of heuristics for agent based elastic Cloud bag of tasks concurrent scheduling. Future Generation Computer Systems, SciVerse Science Direct, doi:10.1016/j.future.2012.01.005. Daji Ergu, Gang Kou ,Yi Peng ,Yong Shi, Yu Shi on Pipeline: The analytic hierarchy process: task scheduling and resource allocation in cloud computing environment. In: Springer Science+Business Media, LLC 2011.

Computer Science & Information Technology (CS & IT) [3] [4]

[5] [6] [7]

[8] [9] [10]

[11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21]

[22] [23]

9

Jan Komorowski: Rough Sets: A Tutorial In .Department of Computer and Information Science Norwegian University of Science and Technology (NTNU) 7034 Trondheim, Norway. Rodrigo N. Calheiros: CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services. In: Computing and Distributed Systems (GRIDS) Laboratory Department of Computer Science and Software Engineering The University of Melbourne, Australia. Ashish Tiwari,Dr.A.Nagaraju and Mehul Mahrishi : An Optimized Scheduling Algorithm for Cloud Broker using Adaptive Cost Model: 3rd IEEE (International Advanced Computing Conference-2013). Smitha Sundareswaran : A Brokerage-Based Approach for Cloud Service Selection In : 2012 IEEE Fifth International Conference on Cloud Computing. Taekgyeong Han and Kwang Mong Sim : An Ontology-enhanced Cloud Service Discovery System : Proceedings of the International MultiConference of Enginers and Computer Scientists 2010 Vol I, IMECS 2010,March 17-19,2010,Hong kong . Haytham Tawfeek al Feel : OCSS: Ontology Cloud Storage System : 2011 First International Symposium on Network Cloud Computing and Applications. Use of Ontology in Cloud Computing, http://cloudontology.wikispaces.asu.edu/Use+of+Ontology+in+Cloud+Computing. Fangpeng Dong and Akl, S.G. : An Adaptive Double-layer Work ow Scheduling Approach for Grid Computing In : High Performance Computing Systems and Applications, 2007. HPCS 2007. 21st International Symposium on. A. Avanes and J. Freytag : Adaptive Workflow Scheduling under Resource Allocation Constraints and Network Dynamics In : Proc. VLDB Endow, 1(2), 1631-1637,2008. Radulescu, A. and Van Gemund, A. J C : Low-cost task scheduling for distributed memory machines In : Parallel and Distributed Systems, IEEE Transactions 2002. Nan, Xiaoming and Yifeng He and Ling Guan : Optimal resource allocation for multimedia cloud in priority service scheme In : Circuits and Systems (ISCAS), 2012 IEEE International Symposium. Rough Set Theory, http://www.en.wikipedia.org/wiki/Rough-set Rough sets, http://rst2009.disco.unimib.it/. Jan Komorowski ,Rough Sets: A Tutorial , Department of Computer and Information Science Norwegian University of Science and Technology (NTNU) 7034 Trondheim, Norway. Amit Kumar Sharma ,MADAM ID FOR INTRUSION DETECTION USING DATA MINING ,IJRIM , Volume 2, Issue 2 (February 2012). Mehul Mahrishi and Dr.A.Nagaraju ,Optimizing Cloud Service Provider Scheduling by Rough Set model,International Conference on Cloud Computing Techno and Management (ICCEAM-12). Mehul Mahrishi and Dr.A.Nagaraju ,Rating Based Formulation for Scheduling of Cloud Service Providers , National Confrance on Emerging treands in IT. Z. Pawlak, Rough sets, International Journal of Computer and Information Sciences, 11(5):341356, 1982. Mehul Mahrishi ,Globally Recorded binary encoded Domain Compression algorithm in Column Oriented Databases,Global Journals of Computer Science and technology Vol. 11 issue 23, Page 2730. Amit Nathani, Sanjay Chaudharya, Gaurav Somani ,Policy based resource allocation in IaaS Cloud, Generation Computer Systems 28 (2012) 94103 doi:10.1016/j.future.2011.05.016. Daji Ergu, Gang Kou ,Yi Peng ,Yong Shi, Yu Shi ,The analytic hierarchy process: task scheduling and resource allocation in cloud computing environment, Springer Science+Business Media, LLC 2011.

MEDIAN BASED PARALLEL STEERING KERNEL REGRESSION FOR IMAGE RECONSTRUCTION G Dada Khalandhar, V Sai Ram, M Srinivasa Rao, Lalith Srikanth C, Pallav Kumar Baruah, Balasubramanian S, R Raghunatha Sarma Sri Satya Sai Institute of Higher Learning, India {dadakhalandhar, v.sairam1, msrini.svn}@gmail.com, {lalithsrikanthc, pkbaruah, sbalasubramanian, rraghunathasarma}@sssihl.edu.in

ABSTRACT Image reconstruction is a process of obtaining the original image from corrupted data. Applications of image reconstruction include Computer Tomography, radar imaging, weather forecasting etc. Recently steering kernel regression method has been applied for image reconstruction [1]. There are two major drawbacks in this technique. Firstly, it is computationally intensive. Secondly, output of the algorithm suffers form spurious edges (especially in case of denoising). We propose a modified version of Steering Kernel Regression called as Median Based Parallel Steering Kernel Regression Technique. In the proposed algorithm the first problem is overcome by implementing it in on GPUs and multi-cores. The second problem is addressed by a gradient based suppression in which median filter is used. Our algorithm gives better output than that of the Steering Kernel Regression. The results are compared using Root Mean Square Error(RMSE). Our algorithm has also shown a speedup of 21x using GPUs and shown speedup of 6x using multi-cores.

KEYWORDS Steering Kernel Regression, Local Gradient, Multi-core, GPU.

1. INTRODUCTION Images have become inherent part of day to day life. The image processing algorithms to improve the quality of images are innumerable, but many of them are application specific. Recently, Takeda et al.[1] have proposed a novel regression technique for image reconstruction known as Steering Kernel Regression. There are two major drawbacks associated with this technique. It is computationally intensive and, the output of the algorithm suffers from spurious edges (especially in case of denoising). In the proposed algorithm, the first problem is overcome by implementing the algorithm on GPUs and multi-cores. The second problem is addressed by deblurring of the output using median filter. GPU based efficient solutions for data parallel image Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 11–20, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3402

12

Computer Science & Information Technology (CS & IT)

processing applications have been proposed by many authors [5][6][7][8]. Like many image processing applications, Steering Kernel Regression also has inherent data parallelism. Taking advantage of this inherent parallelism, we have identified and implemented the three most time consuming parts of the algorithm both on multi-core and GPUs. We have addressed the second problem by suppressing the spurious edges. These edges are produced due to noise and get stronger with the number of iterations of the algorithm. In the proposed technique we use median filter at the end of each iteration to remove the spurious edges.

2. DATA ADAPTIVE KERNEL REGRESSION Regression is a process of finding the underlying signal in a given data, where the original signal is corrupted by noise. Many image regression techniques like edge-directed interpolation [2], and moving least squares [3] were proposed. Classical parametric regression methods assume that there is a specific model for underlying signal and estimate the parameters of this model. The parametric estimation has been used in major image processing techniques. The model generated out of the estimated parameters is given as the best possible estimate of the underlying signal. In contrast, non parametric regression methods don’t assume any underlying model, but depend on the data itself to arrive at the original signal. Regression function is the implicit model that has to be estimated. Takeda et al. [1] introduced steering kernel regression for image processing and reconstruction and have shown that it out-performs existing regression techniques. A brief introduction to the algorithm is given as follows: The measured data is given by ‫ݕ‬௜ = ‫ݔ(ݖ‬௜ ) + ߝ௜ , i=1,...,P, where ‫ݔ(ݖ‬௜ ) is a regression function acting on pixel coordinates, ߝ௜ s are independent and identically distributed zero mean noise values, P indicates total number of pixels. Assuming that the regression function is smooth to a certain order N, the objective functional estimation of ‫ )ݔ(ݖ‬can be deduced (detailed derivation is given in [1]) by minimization of the following functional: minΣ௉௜ୀଵ [‫ݕ‬௜ − ߚ଴ − ߚଵ் (‫ݔ‬௜ − ‫ )ݔ‬− ߚଶ் (‫ݔ‬௜ − ‫)ݔ‬ଶ − {ఉ೙ } … ߚே் (‫ݔ‬௜



− ‫)ݔ‬ே ]ଶ ௛ ‫ܭ‬ு ቀ

௫೔ ି௫ ቁ ௛

(1)

where ߚ௜ is ݅ ௧௛ derivative of ‫ )ݔ(ݖ‬and ℎ is global smoothing parameter. ‫ܭ‬ு (‫ݔ‬௜ − ‫ )ݔ‬is the kernel weight assigned to the samples and is defined such that the nearby samples are given higher weight than the farther ones. Takeda et al.[1] have proposed to use a non-linear combination of data. In other words, data adaptive kernel regression not only depends on the sample location and density but also on the radiometric properties. The incorporation of these radiometric properties were done by adapting the regression kernel locally, so that the kernel aligns itself along the features such as edges, than across them. This enables us to capture the features in better detail. The major contribution of Takeda et al.[1] is to use adaptive kernel regression for image processing and reconstruction. They call this adaptive technique, steering kernel regression.

Computer Science & Information Technology (CS & IT)

13

The central notion of the steering kernel regression is to estimate the local gradients. The gradient information captures the features of the image. These in turn are used to find the weights to be assigned to the neighboring samples. Pixel near an edge will be influenced by the pixels of the same side of the edge. With this intuition in mind, the dominant orientation of the local gradients are measured. The kernel is then effectively steered locally based on this dominant orientation. Our Median Based Parallel Steering Kernel Regression Technique is an iterative technique. The output of the previous iteration is passed as input for the next iteration. As the first step of the algorithm, output of the Classical Kernel Regression is passed as input for the first iteration of the algorithm. Brief description of the algorithm is as follows: 1. Finding local gradients at each image point. 2. Based on the gradient value at a pixel, the scaling, elongation and rotation parameters are estimated. There are used to construct the steering matrix. 3. Application of Steering Kernel Regression algorithm. 4. Post-processing of the resultant image to suppress spurious edges. 5. Repeating the steps 2 to 4, till the noise level in the output image is below the predefined threshold.

3. IMPLEMENTATION The serial implementation of steps 1 to 3 have been implemented by Takeda et.al. We have used their code, which is available at http://www.soe.ucsc.edu/ htakeda/MatlabApp, for the improvement. The parallel implementation of the algorithm is discussed in section 3.1. In section 3.2 we dwell on the method to suppress spurious edges.

3.1 PARALLEL IMPLEMENTATION The serial code was programmed in Matlab and is available at http://www.soe.ucsc.edu/ htakeda/MatlabApp. The code was profiled using Matlab Profiling Tool and it was observed that the steps 1 and 3 of steering kernel regression are most time consuming. On careful analysis, we discovered that these steps have a lot of scope for parallelism. The serial implementation of step 3 consists the following ideas: 1. To all pixels, in each iteration running till the square of the upscale factor, determine the feature matrix. 2. For each pixel, • Obtain the weight matrix using the neighboring samples of covariance matrix. • Compute equivalent kernel which involves inverse of a matrix resulting from the product of the feature and weight matrices. • Estimate the pixel values and gradient structure values for the output image. In Step 1, classic regression method computes feature matrix, weight matrix and equivalent kernel. The most time consuming action involved in this method is to estimate the target values, local gradient structure values along the axes directions.

14

Computer Science & Information Technology (CS & IT)

Steps 1 and 3 of steering kernel regression involve a lot of data-parallelism and CUDA is used to parallelize these steps. Mex interface feature integrates CUDA into Matlab. We shall now discuss the parallel implementation of the step 3 : • Copy the original image, covariance matrix, feature matrix from the CPU host memory to GPU global memory. • Kernel is launched with the total number of threads equaling the total number of pixels in the source image. • A thread is assigned to each pixel and it does the above mentioned steps of determining weight matrix and equivalent kernel. • It contributes ܴ ଶ pixels in the estimated output image, where R is the upscaling factor. Computing the steering matrix (step 2) is done on multi-core for speed up of the whole process.

OPTIMIZATIONS Since shared memory is on chip, accesses to it are significantly faster than accesses to global memory. Feature matrix is copied from host memory to shared memory of GPU. Only one thread in a block will get the data from global to shared memory. Shared memory could only fit feature matrix as the image size exceeds it’s space limitations. For the remaining data, the global memory request for a warp is split into two memory requests, one for each half-warp, which are issued independently. GPU hardware can combine all memory requests to a single memory transaction if the threads in a warp access consecutive memory locations[4]. Our model is designed in such a way that the memory access pattern by threads is coalesced, thereby improving performance and ensuring low latency. The multi-core code is implemented using the Parallel Computing Toolbox of Matlab environment. The performance comparison of these two implementations is given in the following section.

3.2 SPURIOUS EDGE SUPPRESSION Spurious edges produced by single iteration of the steering kernel algorithm are not as strong as the original edges in the image. Due to which the gradient strength of the spurious edges is much lower than that of the original edges. Using this idea, we can suppress the edges which have the gradient strength less than a given threshold(it will be set based on the value of edges in the image). The value of the threshold depends upon the application. It can be static or given by a heuristic. We have used thresholds derived from the maximum gradient values. For suppressing the spurious edge pixels we applied median filter over the pixel’s neighbourhood.

4. RESULTS 4.1 COMPUTATIONAL EFFICIENCY In this section we show the results of using GPUs and multicores to improve the computational complexity of the first three steps of our algorithm(Steering Kernel Regression). We observe that the computational efficiency of the algorithm has been improved while maintaining the quality of the output images. We can show that the GPU and multi-core implementations are consistent with results of original serial implementation. In the next section, we present the results of our

Computer Science & Information Technology (CS & IT)

15

algorithm(which incorporates post processing module for suppressing the spurious edges)in comparison with Steering Kernel Regression.

EXPERIMENTAL SETUP For all experiments, the parallelized version of the steering kernel regression was run on Tesla T20 based Fermi GPU. The serial and multi-core implementations of the same were run in Matlab R2012a on a node with Intel(R) Xeon(R) 2.13GHz processor and 24 GB RAM. CUDA timers were employed, which have resolution upto milliseconds to time the CUDA kernels and more importantly they are less subject to perturbations due to other events like page faults, interrupt from the disks. Also CudaEventRecord is asynchronous; there is less of Heisenberg effect when timing is short, exactly suitable to GPU-intensive operations as in these applications. For the multi-core code timers provided by Matlab were used.

EXPERIMENTS. Experiments and the performance results of GPU, multi-core implementations on simulated and real data are presented. These experiments were conducted on diverse applications and attest the claims made in previous sections. In all experiments, we considered regularly sampled data. An important note to consider is the determination of the maximum speed up achieved by an application. Understanding the type of scaling that is applicable in any application is vital in estimating the speed up. All the applications that are mentioned here exhibit scaling. An instance of this phenomenon is shown in Figure 1. One can observe that for a fixed problem size, increase in the number of processing elements, the time of execution decreases.

Fig. 1. Plot of execution time against number of processing elements.

Fig. 2. RMSE(root mean square error) of the resulted image with respect to original image against Number of iterations

16

Computer Science & Information Technology (CS & IT)

Quality Test. We performed the quality test for the image by visual inspection and RMSE (root mean square error) values obtained from all the implementations. We have tested the comparisons between the serial code, multi-core and CUDA when applied on a CT scan image with Gaussian noise with standard deviation ߪ = 35. The RMSE values of the images resulted from multi-core and GPU implementations are 13.2, which is closer to serial result. We observed that quality was maintained with out any visually plausible differences. For all the experiments, the initial estimates are given by the classical kernel regression method. Different experiments that were performed are: Denoising Experiment. Well known Lena image of 512 × 512 size and a picture of a pirate with 1024 × 1024 size were consideration for testing. Controlled simulated experiment was set up by adding white Gaussian noise with standard deviation of ߪ = 25 to both the images. We set global smoothing parameter ℎ = 2.4. The choice of number of iterations was set after careful analysis of the behavior of the application. The graph in the Figure 2, indicates that RMSE (root mean square error) values of the resulted image drop till a point and then it raises. This point was observed to be 12 for this application. In this way, a limit for the number of iterations is deduced for all the mentioned images. The RMSE values of the resulted images are 6.6426 and 9.2299. Clearly, the dominance of the GPU performance over multi-core can be evidently seen in Figure 3(a). The multi-core code was run with 12 Matlab workers and as expected a near 10x performance is achieved for image size 1024 × 1024. The slack is possibly due to the communication overhead of the function calls performed by Matlab.

Fig. 3. Comparison of various algorithms: (a) Speedup factors against image sizes for the denoise application. (b) Speedup factors against image sizes for the compression artifact removal. (c) Speedup factors against image sizes for the upscaling. Compression artifact removal. Pepper image was considered for this experiment and compressed it by Matlab JPEG routine with a quality parameter 10 and RMSE of 9.76. The number of iterations and ℎ were set to 10 and 2.4. RMSE values for single core version is 8.5765, multi-core version is 8.5759 and that of GPU is

Computer Science & Information Technology (CS & IT)

17

8.5762. The performance is shown in Figure 3(b). The multi-core code has a average speed up factor of 6x over serial implementation whereas GPU has speed up of 20x. Upscaling. We performed an upscale operation on the lena image and on the pirate’s picture. The performance is noted in the Figure 3(c). In this case, the GPU performance is achieved to be significantly higher than the multi-core. The arithmetic intensity is high for this application as each thread needs to estimate more number of pixels in the target image, precisely 4 (the upsampling factor). Kernel Timing Results. Table I presents the runtime measurements of the kernels in single core, multi-core and GPU for different image sizes. The timings given for GPU code also include the data transfer time from host to GPU memory and vice-versa. The GPU code maintains the efficiency even with the increase in the image size. The GPU version of classic kernel has achieved a factor of 175x over the serial implementation.An improvement factor of 75x was observed for steering kernel. Table 1. Kernel execution timings(in seconds) Image size

Regression method

Single core Multi-core

GPU

512x 512

Classic kernel

11.765

1.765

0.067

512x 512

Steering kernel

105.140

18.200

1.470

1024x 1024

Classic kernel

47.741

6.930

0.270

1024x 1024

Steering kernel

427.701

102.234

5.819

4.2 QUALITATIVE IMPROVEMENT The proposed algorithm has been compared with the algorithm proposed by Takeda et al. We found that by incorporating an additional post processing module based on median filter(in which the spurious edges are suppressed)into the Takeda algorithm, the proposed algorithm is giving better than the original algorithm. Both the algorithms have been applied on Lena gray scale image. The image is corrupted by Gaussian noise with standard deviation of 15, 25, 35 and 45 and then algorithms have been applied to denoise them. As shown in the figure, the error obtained in the proposed algorithm is less than that of the Takeda’s algorithm. In our algorithm we have used threshold value as 1% of the maximum edge strength. We have used median over a neighbourhood of 1 pixel distance in fixing the value corresponding to spurious edges. The RMSE value reaches a minimum after some iterations. Graphs corresponding to different images after different iterations is presented in Figure 4.

18

Computer Science & Information Technology (CS & IT)

In denoising the Lena image with Gaussian noise = 15, Takeda’s algorithm reached RMSE of 6.3917 while our algorithm reached 6.386. Both of them reach their minimum RMSE value in 8௧௛ iteration and it is shown in Figure 4(a). In denoising the Lena Image with noise of 25, Takeda’s algorithm reached 7.8935 while our algorithm reached 7.8778. Both of them reach their minimum RMSE value in 9௧௛ iteration and it is shown in Figure 4(b). In denoising the Lena Image with noise of 35, Takeda’s algorithm reached 9.2702 while our algorithm reached 9.2059. Both of them reach their minimum RMSE value in 18௧௛ iteration and it is shown in Figure 4(c). Finally, in denoising the Lena Image with noise of 45, Takeda’s algorithm reached 10.823 while our algorithm reached 10.822. They reached their minimum RMSE value in 18௧௛ iteration and it is shown in Figure 4(d). We have shown the results of denoising the Lena Image with noise 35 in the Figure 5. Figure 5(a) denotes the original Lena image. Figure 5(b) is the Lena image with a Gaussian noise of 35. Figure 5(c) gives us the suppressed edges, the edges which have been suppressed by the proposed algorithm.

4(a)

4(b)

Computer Science & Information Technology (CS & IT)

19

4(c)

4(d) Fig. 4. Comparison of Our Median Based Parallel Steering Kernel Regression Technique with Takeda’s Original algorithm on Lena image with Gaussian noise of (a)15 (b)25 (c)35 (d)45.

5(a)

5(b)

5(c)

Fig. 5. Comparison of our algorithm to Ste Steering ering Kernel Regression. (a) Original Lena image. (b) Lena image with Gaussian noise of 35. (c) Suppressed spurious edges

20

Computer Science & Information Technology (CS & IT)

5. CONCLUSIONS AND FUTURE WORK Steering kernel regression is indeed an innovative work in image reconstruction. This algorithm was successfully parallelized on both multi-core, GPU platforms using Matlab and CUDA. Implementations for different applications with varying parameters have been evaluated. From the observations, it is clearly evident that the time complexity of steering kernel has been reduced. On an average, a gain of 6 × and 21 × speed-up was achieved on the multi-core and GPU platforms respectively. Also an additional post processing module, based on median filter, has been introduced for the purpose of suppressing the spurious edges. This improvement has given better results than the original algorithm. In future, this work could be extended to video data. All the image datasets considered here fit within the limits of GPU memory. Computing Steering Kernel regression on single GPU may not be scalable to larger images, as the on-board memory of GPU is a major constraint. Thus, parallelizing the algorithm for multiple GPUs may lead to better results.

Acknowledgment We would like to dedicate our efforts to our Divine Founder Chancellor Bhagawan Sri Sathya Sai Baba, without whom this work wouldn’t have been possible. We would like to acknowledge Takeda et.al. for making the Kernel Regression Tool-box software available on-line. This work was partially supported by nVIDIA, Pune, grant under Professor partnership program and DRDO grant under Extramural Research and Intellectual Property rights.

REFERENCES [1] [2] [3] [4] [5] [6]

[7]

[8]

Takeda, Hiroyuki, Sina Farsiu, and Peyman Milanfar. "Kernel regression for image processing and reconstruction." Image Processing, IEEE Transactions on 16.2 (2007): 349-366. Li, Xin, and Michael T. Orchard. "New edge-directed interpolation." Image Processing, IEEE Transactions on 10.10 (2001): 1521-1527. Bose, N. K., and Nilesh A. Ahuja. "Superresolution and noise filtering using moving least squares." Image Processing, IEEE Transactions on 15.8 (2006): 2239-2248. NVIDIA CUDA Programming Guide, [Online], Available at : http://developer.download.nvidia.com/. Kraus, Martin, Mike Eissele, and Magnus Strengert. "GPU-based edge-directed image interpolation." Image Analysis. Springer Berlin Heidelberg, 2007. 532-541. Tenllado, Christian, Javier Setoain, Manuel Prieto, Luis Piñuel, and Francisco Tirado. "Parallel implementation of the 2D discrete wavelet transform on graphics processing units: filter bank versus lifting." Parallel and Distributed Systems, IEEE Transactions on 19, no. 3 (2008): 299-310. Allusse, Yannick, Patrick Horain, Ankit Agarwal, and Cindula Saipriyadarshan. "GpuCV: A GPUaccelerated framework for image processing and computer vision." In Advances in Visual Computing, pp. 430-439. Springer Berlin Heidelberg, 2008. Risojević, Vladimir, Zdenka Babić, Tomaž Dobravec, and Patricio Bulić. "A GPU imple-mentation of a structural-similarity-based aerial-image classification." The Journal of Su-percomputing: 1-19.

RELEVANT UPDATED DATA RETRIEVAL ARCHITECTURAL MODEL FOR CONTINUOUS TEXT EXTRACTION Srivatsan Sridharan1, Kausal Malladi1 and Yamini Muralitharan2 1

Department of Computer Science, International Institute of Information Technology - Bangalore, India. {vatsansridharan,kausalmalladi}@gmail.com 1

Department of Software Engineering, International Institute of Information Technology - Bangalore, India. {yams25}@gmail.com

ABSTRACT A server, which is to keep track of heavy document traffic, is unable to filter the documents that are most relevant and updated for continuous text search queries. This paper focuses on handling continuous text extraction sustaining high document traffic. The main objective is to retrieve recent updated documents that are most relevant to the query by applying sliding window technique. Our solution indexes the streamed documents in the main memory with structure based on the principles of inverted file, and processes document arrival and expiration events with incremental threshold-based method. It also ensures elimination of duplicate document retrieval using unsupervised duplicate detection. The documents are ranked based on user feedback and given higher priority for retrieval.

1. INTRODUCTION Data intensive applications such as electronic mail, news feed, telecommunication management, automation of business reporting etc raise the need for a continuous text search and monitoring model. In this model the documents arrive at the monitoring server as in the form of a stream. Each query Q continuously retrieves, from a sliding window of the most recent documents, the k that is most similar to a fixed set of search terms. Sliding window. This window reflects the interest of the users in the newest available documents. It can be defined in two alternative ways. They are a) count-based window contains the N most recent documents for some constant number N, b) timebased window contains only documents that arrived within last N time units. Thus, although a document which may be relevant to a query, it is ignored, because it may not satisfy the time and count constraints of the user. Incremental threshold method. The quintessence of the algorithm is to employ threshold-based techniques to derive the initial result for a query, and then continue to update the threshold to reflect document arrivals and expirations. At its core lies a memory-based index similar to the conventional inverted file, complimented with fast updated techniques. MapReduce technique. MapReduce is a powerful platform for large scale data processing. This technique involves two steps namely a) map step: The master node takes the input, partitions it up Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 21–27, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3403

22

Computer Science & Information Technology (CS & IT)

into smaller sub-problems, and distributes them to worker nodes. A worker node may do this again in turn, leading to a multi-level structure. The worker node processes the smaller problem, and passes the answer back to its master node, b) reduce step: The master node then collects the answers to all the sub-problems and combines them in some way to form the output – the answer to the problem it was originally trying to solve. Unsupervised duplicate detection. [3] The problem of identifying objects in databases that refer to the same real world entity, is known, among others, as duplicate detection or record linkage. Here this method is used to identify documents that are all alike and prevent them from being prepared in the result set. Our paper also focuses on ranking the documents based on user feedback. The user is allowed to give feedback for each document that has been retrieved. This feedback is used to rank the document and hence increase the probability of the document to appear in the sliding window. Visual Web Spider is a fully automated, multi-threaded web crawler that allows us to index and collect specific web pages on the Internet. Once installed, it enables us to browse the Web in an automated manner, indexing pages that contain specific keywords and phrases and exporting the indexed data to a database on our local computer in the format of our choice. We want to collect website links to build our own specialized web directory. We can configure Visual Web Spider automatically. This program’s friendly, wizard-driven interface lets us customize our search in a step-by-step manner. To index relevant web pages, just follow this simple sequence of steps. After opening the wizard, enter the starting web page URL or let the program generate URL links based on specific keywords or phrases. Then set the crawling rules and depth according to your search strategy. Finally, specify the data you want to index and your project filename. That’s pretty much it. Clicking on ‘Start’ sets the crawler to work. Crawling is fast, thanks to multithreading that allows up to 50 simultaneous threads. Another nice touch is that Visual Web Spider can index the content of any HTML tag such as: page title (TITLE tag), page text (BODY tag), HTML code (HTML tag), header text (H1-H6 tags), bold text (B tags), anchor text (A tags), alt text (IMG tag, ALT attribute), keywords, description (META tags) and others. This program can also list each page size and last modified date. Once the web pages have been indexed, Visual Web Spider can export the indexed data to any of the following formats: Microsoft Access, Excel (CSV), TXT, HTML, and MySQL script.

1.1 Key Features A Personal, Customizable Web crawler. Crawling rules. Multi-threaded technology (up to 50 threads). Support for the robots exclusion protocol/standard (Robots.txt file and Robots META tags);Index the contents of any HTML tag. Indexing rules; Export the indexed data into Microsoft Access database, TEXT file, Excel file (CSV), HTML file, MySQL script file; Start crawling from a list of the URLs specified by user; Start crawling using keywords and phrases; Store web pages and media files on your local disk; Auto-resolve URL of redirected links; Detect broken links; Filter the indexed data;

2. EXISTING SYSTEM Drawbacks of the existing servers that tend to handle the heavy document traffic are: Cannot efficiently monitor the data stream that has highly dynamic document traffic. The server alone does the processing hence it involves large amount of time consumption. In case of continuous text search queries and extraction every time the entire document set has to be scanned in order to find

Computer Science & Information Technology (CS & IT)

23

the relevant documents. ts. There is no confirmation that duplicate documents are not retrieved for the given query. A large amount of documents cannot be stored in the main memory as it involves large amount of CPU cost. Naïve solution: The most straightforward approach to evaluate the continuous tinuous queries defined above is to scan the entire window contents D after every update or in fixed time intervals, compute mpute all the document scores, and report the top-k documents. This method incurs high igh processing costs due to the need for frequent re computations from scratch.

3. PROPOSED SYSTEM 3.1 Problem Formulation In our model, a stream of documents flows into a central server. The user registers text queries at the server, which is then responsible for continuously monitoring/reporting their results. As in most stream processing systems, we store all the data in main memory in order to cope with frequent updates, and design our methods with the primary goal of minimizing the CPU cost. Moreover eover it is necessary to reduce the work load of the monitoring server.

3.2 Proposed Solution In our solution we use the MapReduce technique in order to reduce the work load of the central server, where the server acts as the master node, which splits up the processing task to several worker nodes. The number of worker nodes, which have been assign assigned ed the processing task, depends on the nature of query that has been put up by the user. Here the master node, upon receiving a query from the user, assigns the workers to find the relevant result query set and return the solution to the master node. The master node, after receiving the partial solutions from the workers, integrates the results to produce the final result set for the given query. This can be viewed schematically in the following Fig.1. Each worker/slave node is responsible uses the incremental threshold algorithm for computing the result set of k relevant and recent documents for the given query. The overall system architecture can be viewed as in the following Fig.2

Fig. 1. System Architecture for the proposed Re Relevant levant Updated Architecture Model.

24

Computer Science & Information Technology (CS & IT)

Fig. 2. A data Retrieval system for continuous data extraction technique using MapReduce. Each element of the input stream comprises of a document d, a unique document identifier, the document arrival time, a composition list list. The composition list contains one (t, wdt) pair for each term t belonging to T in the document and wdt is the frequency of the term in the document d. The notations in this model are as follows in Fig 3.

Fig. 3. A Detailed list of the notations used in the paper for the proposed system. The worker node maintains an inverted index for each term t in the document. With the inverted index, a query Q is processed as follows: the inverted lists for the terms t belonging belongi to Q are scanned and the partial wdt scores of each encountered document d are accumulated to produce S(d/Q). The documents with the highest scores at the end are returned as the result.

Computer Science & Information Technology (CS & IT)

25

3.3 Incremental Threshold Algorithm Fig.3 represents the data structures that have been used in this system. The valid documents D are stored in a single list, shown at the bottom of the figure. Each element of the list holds the stream of information of document (identifier, text content, composition list, arrival time). D contains the most recent documents for both count-based and time-based windows. Since documents expire in first-in-first-out manner, D is maintained efficiently by inserting arriving documents at the end of the list and deleting expiring ones from its head. On the top of the list of valid documents we build an inverted index. The structure at the top of the figure is the dictionary of search terms. It is an array that contains an entry for each term t belonging to T. The dictionary entry for t stores a pointer to the corresponding inverted list Lt. Lt holds an impact entry for each document d that contains t, together with a pointer to d’s full information in the document list. When a document d arrives, an impact entry (d, wdt) (derived from d’s composition list) is inserted into the inverted list of each term t that appears in d. Likewise, the impact entries of an entries of an expiring document are removed from the respective inverted lists. To keep the inverted lists sorted on wdt while supporting fast (logarithmic) insertions and deletions. Initial Top-k Search: When a query is first submitted to the system, its top-k result is computed using the initial search module. The process is an adaptation of the threshold algorithm. Here, the inverted lists Lt of the query terms play the role of the sorted attribute lists. Unlike the original threshold algorithm, however we do not probe the lists in a round robin fashion. Since the similarity function associates different weights wQt with the query specifically, inspired by [4], we probe the list Lt with the highest ct=wQt.wdnxtt value, where dnxt is the next document in Lt. The global threshold gt, a notion used identically to the original algorithm, is the sum of ct values for all the terms in Q. Consider query Q1 with search string “red rose” and k=2. Let term t20=”red” and t11=”rose”. First the server identifies the inverted lists L11 and L20 (using the dictionary hash table), and computes the values c11=wQ1t11.wd7t11 and c20=wQ1t20.wd6t20. In iteration 1, since c20 is larger, the first entry of L20 is popped; the similarity score of the corresponding document, d6, is computed by accessing its composition list in D and inserted into the tentative R. c20 is then updated to impact entry which is above local threshold, but we would still include it in R as unverified entry. The algorithm is as follows, Algorithm Incremental Threshold with Duplicate Detection (Arriving dins, Expiring ddel) 1: Insert document dins into D (the system document list) 2: for all terms t in the composition list of dins do 3: for all documents in Lt 4: for all terms t in dins 5: Compute unique (dins) 6: wdinst != wdnxtt 7: Insert the impact entry of dins into Lt 8: Probe the threshold tree of Lt 9: for all queries Q where wdinst > =localThreshold do 10: if Q has not been considered for dins in another Lt then 11: Compute S (dins/Q) 12: Insert dins into R 13: if S(dins/Q)>= old Sk then 14: Update Sk (since dins enters the top-k result)

26 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:

Computer Science & Information Technology (CS & IT) Keep rolling up local thresholds while r = localThreshold do if Q has not been considered for ddel in another Lt then Delete ddel from R if S(ddel/Q) >= old Sk then Resume top-k search from local thresholds Set new τ as influence threshold for Q Update local thresholds of Q

After constructing the initial result set R using the above algorithm, only the documents that have a score higher than or equal to the influence threshold t(tow) are verified. The main key point is that no duplicate documents from the part of the result set R. This is ensured using unsupervised duplication detection. The idea of unsupervised learning for duplicate detection has its roots in the probabilistic model proposed by Fellegi and Sunter. When there is no training data to compute the probability estimates, it is possible to use variations of the Expectation Maximization algorithm to identify appropriate clusters in the data.

Fig. 3. Data Structures used for Incremental Threshold Algorithm

Computer Science & Information Technology (CS & IT)

27

3. CONCLUSION In this paper, we study the processing of continuous text queries over document streams. These queries define a set of search terms, and request continual monitoring of a ranked list of recent documents that are most similar to those terms. The problem arises in a variety of text monitoring applications, e.g., email and news tracking. To the best of our knowledge, this is the first attempt to address this important problem. Currently, our study focuses on plain text documents. A challenging direction for future work is to extend our methodology to documents tagged with metadata and documents with a hyperlink structure, as well as to specialized scoring mechanisms that may apply in these settings.

REFERENCES [1] [2] [3] [4] [5] [6]

B.Babcock, S. Babu, M.Datar, R.Motwani, and J.Widom, 2002, “Models and Issues in Data Streaming System” PODS’02, 1-16. J.Zobel and A.Moffat, July 2006, “Inverted Files for Text Search Engines”, Computing Surveys, vol.38, o.2, p1-55. VNAnh and A.Moffat, 2002, “Impact Transformation: Effective Efficient Web Retrieval”, Int’l ACM SIGIR conf. Research and Development in Information Retrieval. V.N.Anh, O.de Krestser, and A. Moffat, 2001, “Vector-Space Ranking with Effective Early Termination”, ACM SIGIR conf. Research and Development in Information Retrieval. Y. Zhang and J.Callan, 2001 “Maximum Likelihood Estimation for Filtering Tresholds,” ACM SIGIR conf. Research and Development in Information Retrieval. M. Persin, J. Zobel and R. Sacks-Davis, 1996, “Filtered Document Retrieval with Frequency_Sorted Indexes”, J.Am.Soc for Information Science, vol.47, no.10.

SINGLE FAULT DETECTION AND DIAGNOSIS TECHNIQUE FOR DIGITAL MICRO-FLUIDIC BASED BIOCHIPS Sagarika Chowdhury1, Sumitava Roy2, Sourav Saha2 and Arijit Saha2 1

Assistant Professor, Computer Science & Engineering Department, Narula Institute of Technology, Kolkata, India [email protected]

2

Final Year Student, Computer Science & Engineering Department, Narula Institute of Technology, Kolkata, India [email protected] [email protected] [email protected]

ABSTRACT This paper presents an integrated offline testing of Single-Fault detection technique for themicro-fluidic based biochips and also diagnosis single defects in order to achieve higherthroughput and less time complexity of the execution process. In the field operation, this is to be used to increase chip dependability and reusability of the biochips. In this paper, a pipelined technique is presented to traverse all the edges in much more less time in comparison with some previous techniques.

KEYWORDS Biochip, Droplet, Fault detection &diagnosis, Graph Dual & Set theory, Pipeline

1. INTRODUCTION Nowadays, the Digital Micro-fluidic based Biochip technologies are used either in development or concerning mercantile [1]-[3]. The composite system is also known as lab-on-a-chip. Such devices facilitate molecular biological procedures [15]. Rectification or Faultlessness, Constancy, Reusability, Sensitivity and Dependability are the important epithet of Micro-fluidic Biochips. These chips have to be examined both after the manufacturing and during the application. A new advancing creation of droplet based micro fluidic device is also known as the “Digital Micro-fluidic Biochip” which was induced to imitate the electro wetting-on-dielectric principle [4][6]. The significant factor is the miniature size of these devices sustain to the shorter fault detection time, high throughput, lightening the energy in biological field operations [14]. The micro-fluidic biochips are categorized for the revelation of faults [7]-[10]. The benefit is to manipulate liquids as discrete droplets [3]. Micro-fluidic biochips have been characterized for detection of faults [1]-[3]. The test planning problem was formulated in terms of Euler circuit in [9]-[10]. Fei Su et. al. [16] has proposed defect tolerance based on graceful degradation and dynamic reconfiguration. In [17], a network flow based routing algorithm was proposed for the droplet routing problem on biochips. A novel parallel-scan like testing technique has been proposed in [12], where the total time slot covering the entire graph dual was considerably less.

Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 29–38, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3404

30

Computer Science & Information Technology (CS & IT)

This paper introduces the disclosure of an efficient technique for diagnosis a single fault in a Micro-Fluidic Biochip having an optimum time complexity.

2. PRELIMINARIES 2.1. Component of a micro-fluidic array In digital micro-fluidic biochips, the liquids are divided into discrete and distinctly controllable manipulated microliter-nanolitre (the volume of the droplets) droplets, traverse on a two dimensional array, based on the principle of electro wetting-on-dielectric (EWOD) [1, 3, 9]. The fundamental unit cell of a EWOD based digital micro-fluidic biochip composed of two parallel glass plates, as shown in Figure. 1 [9]. The top plate is implicated with a continuous ground electrode and the bottom plate holds a patterned array of electrodes. They are formed by Indium Tin Oxide and are regulated individually. A dielectric layer coated with hydrophobic film of Teflon AF is added to the plates to extenuate the wet ability of the surface and to enhance the capacitance between the droplets and the electrode [3]. Afiller medium like silicone oil is used in between the plates, where the droplets move. When an electric control voltage is applied to the electrode adjacent to the droplet, the electrode under the droplet is deactivated and moves the droplet to the active electrode because of the EWOD effect [13].

Figure 1.Structure of digital micro-fluidic biochip (Basic unit cell used in an EWOD-based digital micro-fluidic biochip)

2.2. Defect Characterization There are mainly two types of faults in digital micro-fluidic systems, catastrophic andparametric, as described in [7]. Catastrophic fault causes complete breakdown of the system, whereas parametric fault degrades system performance. To detect a fault, we need to pass a droplet through the micro-fluidic array, so that it can traverse each and every cell and reach towards the sink. If there is any kind of fault within the microarray, the droplet will get stuck over there.

2.3. Graph Theoretic Formulation Let us represent the entire micro-fluidic array as an mxn matrix where Ci,j denotes the cell at the (i, j) position where i =1 to m and j = 1 to n. The source and the sink, i.e., the positions outside the array from where the droplet enters the array and exits the array respectively, are designated by the cells adjacent to them. Example 1.Figure. 2 shows a 3x4 micro-fluidic array with the source at (1, 1) and sink at the (3, 4) position.

Computer Science & Information Technology (CS & IT)

31

Figure 2.A 3x4 miicro-fluidic array with source at (1, 1), sink at (3, 4) The source and sink are actually outside the array. The cell (1,1) indicates the cell from which the droplet starts from the source. Similarly, cell (3,4) is the last cell before the droplet leaves the aarray to the sink. 1. Let , …… be a sequence of droplet movements from source to sink, such that together they cover the entire array (i.e. all cells and internal boundaries) where Si denotes a segment (cell) through which the droplet traverse at time Ti towards sink. The complete traversal by a droplet from to is referred to as a pass. Therefore, total time taken by a droplet to complete a pass is T1 + T2 + …… + Tk. If during its pass, the droplet does not reach the sink even after its time period, we conclude that the droplet has stuck in the array, and the biochip is faulty. Thus the fault detection problem is finding a sequence of passes, such that all cells and all internal boundaries of the micro-fluidic micro fluidic array are traversed by the droplets at least once, and the total is minimized. To diagnose diagnos the exact faulty point, now we need to check out the predefined look-up up table having for which faulty node which droplets droplets cannot reach the sink. Definition 1.Graph Graph Dual: Let Xm,n be an mxn micro-fluidic fluidic array. Then the dual of Xm,n is a graph G = (V, E) where each node v∈V v V corresponds to a cell in the array and an edge ei,j connecting the nodes vi and vj represent the boundary boundary between the cells corresponding to the nodes vi and vj respectively, as described in [18]. Example 2.Figure 3. (a), (b) show a 4x3 micro-fluidic micro array, X4x3 and its corresponding graph dual, G4x3 respectively. The dotted lines represent the boundaries between the cells. T They map to the edges of the Figure 3 (b). Each cell in Figure 3 (a). denotes a vertex in Figure 3 (b).

Figure 3.A 4x3 micro-fluidic micro array (left) and its graph dual (right) The nodes of a graph dual are denoted as vij, where vij corresponds to the cell (i, j). Now, the ooptimal fault detection problem for an mxn micro-fluidic micro fluidic biochip can be restated in terms of its graph dual as a Source to Sink Array Traversal Problem. Problem Given the graph dual Gmxn of a rectangular micro-fluidic micro biochip Xmxn and the positions of the source (i, j) and sink (k, l), to find a sequence of movements , , …., where Si denotes a segment (cell) through which the droplet traverse at time Ti towards sink such that all the droplets visit each node and edge at least once altogether and the total time is min minimized.

32

Computer Science & Information Technology (CS & IT)

3. PROPOSED TECHNIQUE The proposed technique takes a greedy approach to solve the Source to Sink Array Traversal Problem. It covers all the edges, as well as all the vertices, and in very less time slots. The cove coverage of the nodes and edges during a pass is achieved through certain movements. From the concept of the set theory, we know that any set can be divided into its subs subsets and applying this technique, the single defect simulation can be solved in a very short time. The tec technique is being illustrated as follows:

3.1. Movement Patterns Each traversal from the source to the sink node is mainly based on the Down-Left-Down Down-Right (DLDR) movement. Let Vij be the current node during a traversal. Then the DLDR movement pattern is defined as follows: a)

Down-Left-Down-Right Right (DLDR)

Figure 4.Down 4.Down-Left-Down-Right movement pattern

3.2. Strategy Let us locate four fixed nodes as the ‘base’ nodes from where the journey with the prescribed movement pattern begins. For the graph dual Gmxn, these base nodes are B1 = V1,1 , B2 = V1,n , B3 = Vm,1 , and B4 = Vm,n. These four nodes are shown in Figure Fig 5. for Gmxn. The procedure is ded scribed below for Gmxn, where, m,n>=2. B1

B3

B2

B4

Figure 5. The four base nodes of a graph dual Gmxn

3.3. The Complete Process In order to traverse all the edges of graph dual Gmxn, we will have all total (m+n–2) 2) passes, where m is the total number of rows and n is the total number of columns. All these passes will be fo followed by (m+n–2) 2) droplets in consecutive time quantum, e.g., Pass #1 should be done in Ti Timeslot #1, and, in Time-slot #2, thesecond second pass should start its function, and in Time-slot Time slot #3, Pass #3 should commence traversing and so on. So, the droplets are in sequence and will traverse in parallel. The traversal rsal path is described in Figure 6. (a)-(e).

Computer Science & Information Technology (CS & IT)

33

The Array-Traversal technique from a particular node, stated below: ProcedureArray-Traversal-Movement Step 1: Perform DLDR movement pattern from the current node until last row is reached. Step 2: If it is Sink node, stop there, otherwise from Current node arrive at the sink node, along the boundary considering the shortest path. End Procedure Example 3: Let us consider a graph dual G4x3. Without loss of generality, let us suppose that B1 itself is the source. Figure 6. (a)-(e) show the path explored in pass #1, Pass #2, … , Pass #(m+n– 2), where m=4 and n=3. From the above example, it is clear that, total number of droplets, as well as passes will be (m-1) + (n-1) = (m+n–2), whereas the existing algorithm [12], uses (m+n) droplets.

3.4. Analysis Table I shows the entire traversal procedure with respect to time and segment for a graph dual G4x3 (Figure 6). Let us consider each node of this graph dual as s1, s2. s3, … , s12 respectively in row major order. In this table, each row represents each consecutive pass and it is clear from this table that no collision is occurred during the traversal of the droplets through the pipeline. It takes 11 unit times to complete the entire diagnosis procedure for a 4x3 micro-fluidic array. TABLE I TIMING AND COLLISION ANALYSIS T0

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

S1

S4 S1

S7 S4 S1

S10 S7 S4 S1

S11 S8 S5 S2 S1

S12 S9 S6 S3 S2

S12 S9 S6 S5

S12 S5 S4

S8 S7

S9 S8

S12 S11

S12

Therefore, the total time required to complete the entire diagnosis process for an mxn matrix is as follows: For even value of m: (m+n–3) + 2(m–1) + (n–2)= 3m + 2n – 7 For odd value of m: (m+n–3) + 2(m–1) + (n–1) = 3m + 2n – 6 For the simplicity, let us think, m = n. Therefore, the proposed algorithm will take (5n–C) unit time (C is a constant having value 6 or 7 as described before) which is less than the time, 8N yields by [12]. Therefore, T(m,n) = O(m). ProcedureSingle-Fault-Detection-and-Diagnosis-in-Gmxn Perform (m+n–2) passes, i.e., Pass #1, Pass #2 ,….., Pass #(m–1), Pass #m, Pass #(m+1), ….. , Pass#(m+n–2) in parallel, such that they start from the source node at (m+n–2)consecutive time slots.

34

Computer Science & Information Technology (CS & IT)

PassBegin Pass #1: Step 1: Locate the nearest base node Bi, for the given source. Find the shortest path from the source to Bi along the boundary of the graph dual Gmxn. Step 2: Go down up to mth row from Base Bi, then go right up to last column (nth column). If it is Sink node, stop there, otherwise from Current node arrive at the Sink node, along the boundary considering the shortest path. Pass #2: Step1: Delay for one time slot. Start from Source. Go to nearest Base Bi, found in previous pass. Step2: Go down up to (m–1)th row from Base Bi, then go right up to the last column. If it is Sink node, stop there, otherwise from Current node arrive at the Sink node, along the boundary considering the shortest path. . . Pass #(m–1): Step1: Delay for (m–2) time slot. Start from Source. Go to nearest Base Bi, found in previous pass. Step2: Go down up to 2nd row from Base Bi, then go right up to the last column. If it is Sink node, stop there, otherwise from Current node arrive at the Sink node, along the boundary considering the shortest path. Pass #m: Step1: Delay for (m–1) time slot. Start from Source. Go to nearest Base Bi, found in previous pass. Step2: Go right up to the nth column from base Bi. Start Array-Traversal-Movement procedure. Pass #(m+1): Step1: Delay for m time slot. Start from Source. Go to nearest Base Bi, found in previous pass. Step2: Go right up to the (n–1)thcolumn from base Bi. Start Array-Traversal-Movement procedure. . . Pass #(m+n–2): Step1: Delay for (m+n–1) time slot. Start from Source. Go to nearest Base Bi, found in previous pass. Step2: Go right up to the 2nd column from base Bi. Start Array-Traversal-Movement procedure. PassEnd Sense each and every droplet at the Sink at their expected instants. Have all of them reached the Sink at predefined time? If yes, then the chip is fault free. Otherwise the chip is faulty. Now using the concept of set theory, identify the faulty node.

Computer Science & Information Technology (CS & IT)

35

End procedure

Figure 6.Traversal Procedure of Single-Fault-Diagnosis in G4x3

4. EXPERIMENTAL RESULTS Extensive experimentation was done with a large number of arrays varying from 4x4 to 40x40 electrodes. Table II, III and IV report three of the test cases. Table V reports the performance of the proposed technique with respect to the existing technique [12]. It is found that in all cases the proposed method yields better results in terms of lesser test time slices (no. of edges traversed) for the corresponding micro-fluidic biochip. Column 5 of table V shows the % improvement in each case. This is defined as: % improvement =

௘௫௜௦௧௜௡௚_௧௜௠௘ ି௣௥௢௣௢௦௘ௗ_௧௜௠௘ ௘௫௜௦௧௜௡௚_௧௜௠௘

TABLE II FAULTY NODE DIAGNOSIS Defected Node (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2)

Only Droplets Which Will Not Reach Sink Droplet 3,4 Droplet 3 Droplet 1,2,4 Droplet 2,3,4 Droplet 2,3 Droplet 1,4 Droplet 1,3,4

For a 3x3 micro-fluidic array

x 100

36

Computer Science & Information Technology (CS & IT)

TABLE III FAULTY NODE DIAGNOSIS Defected Node (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) (4,1) (4,2)

Only Droplets Which Will Not Reach Sink Droplet 4,5 Droplet 4 Droplet 1,2,3,5 Droplet 3,4,5 Droplet 3,4 Droplet 1,2,5 Droplet 2,4,5 Droplet 2,3,4 Droplet 1 Droplet 1,5

For a 4x3 micro-fluidic array TABLE IV FAULTY NODE DIAGNOSIS Defected Node (1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4) (4,1) (4,2) (4,3) 150 100 50 0

Only Droplets Which Will Not Reach Sink Droplet 4,5,6 Droplet 4,5 Droplet 4 Droplet 1,2,3,6 Droplet 3,5,6 Droplet 3,4,5 Droplet 3,4 Droplet 1,2,6 Droplet 2,5,6 Droplet 2,4,5 Droplet 2,3,4 Droplet 1 Droplet 1,6 Droplet 1,5,6

Existing Proposed

Figure 7. X Axis: Array Size and Y Axis: Unit Time

Computer Science & Information Technology (CS & IT)

37

TABLE V PERFORMANCE OF THE PROPOSED TECHNIQUE Sl. No

Size

1 2 3 4 5 6 7 8 9 10 11 12

3x3 4x4 5x5 6x6 7x7 8x8 9x9 10x10 11x11 12x12 13x13 14x14

Existing Technique [12] 24 32 40 48 56 64 72 80 88 96 104 112

Proposed Technique

% Improvement

9 13 19 23 29 33 39 43 49 53 59 63

62.50 59.38 52.50 52.09 48.22 48.44 45.84 46.25 44.32 44.80 43.27 43.75

5. CONCLUSION An efficient single fault detection and diagnosis technique for digital micro-fluidic based Biochip has been proposed in this paper. Diagnosis technique in a digital micro-fluidic biochip is an essential key, because the subsequent performance of the biochip. Since the Dependability, Faultlessness are the important attribute of micro-fluidic based biochip, therefore the efficient diagnosis technique is extremely important factor. In this paper, the efficient defect-oriented testing, diagnosis methodology and significant experimental results have pointed out that the improvement of the test time over the existing proposed technique. Figure 7. shows the difference in the performance graph clearly. This is an offline proposed technique, so it is not possible to show any practical experimental result.

REFERENCE [1]

M. Pollack, et. al., “Electrowetting-based Actuation of Droplets for Integrated Microfluidics”, Lab Chip, vol 2, pp. 96-101,2002. [2] V. Srinivasan et al., “An Integrated Digital Microfluidic Lab-on-a-chip for Clinical diagnostics on Human Physiological Fluids”, Lab Chip, pp.310-315, 2004. [3] F. Su et. al.., “Architectural-level synthesis of Digital Microfluidics based Biochips”, Proc. IEEE Int. Conf. on CAD,pp.223-228,2004. [4] R. B. Fair et al., “Electrowetting-based on-chip sample processing for integrated microfluidics,” in Proc. IEDM, 2003, pp. 32.5.1–32.5.4. [5] E. Verpoorte and N. F. De Rooij, “Microfluidics meets MEMS,” Proc. IEEE, vol. 91, no. 6, pp. 930– 953, Jun. 2003. [6] J. Zeng and T.Korsmeyer, “Principles of droplet electrohydrodynamicsfor lab-on-a-chip,” Lab on a Chip, vol. 4, pp. 265–277, 2004. [7] F. Su ,S.Ozev and K. Chakrabarty, “ Testing of Droplet-based Microfluidic Systems”, Proc. IEEE Int. Test Conf.,pp.1192-1200,2003. [8] F.Su, S. Ozev and K.Chakrabarty,”Test Planning and Test Resource Optimization for Droplet-Based Microfluidic Systems”, Proc. IEEE Eur. Test Sym., pp. 72-77,2004. [9] Fei Su, et. al.,“Testing and Diagnosis of Realistic Defects in Digital Microfluidic Biochip”, proc. 2007 Springer Science + Business Media. [10] V. Srinivasan, et. al, “A Digital Microfluidic Biosensor for Multi analyteDetection”, Proc. IEEE MEMS Conference, pp. 327-33-, 2003.,

38

Computer Science & Information Technology (CS & IT)

[11] S. K. Cho et al., “Creating, transporting, cutting, and merging liquid droplets by electrowetting-based actuation for digital microfluidic circuits,” J. Microelectromech. Syst., vol. 12, pp. 70–80, 2003. [12] Tao Xu and KrishnenduChakrabarty, “ Parallal Scan-Like Test and Multiple-Defect Diagnosis for Digital Microfluidic Biochips”, IEEE TRANSACTIONS ON BIOMEDICAL CIRCUITS AND SYSTEMS, VOL. 1, NO. 2, JUNE 2007. [13] R. B. M. Schasfoort et al., “Field-effect flow control for microfabricated fluidic networks,” Science, vol. 286, pp. 942–945, 1999. [14] “Two-dimensional digital microfluidic system by multi-layer printed circuit board,” in Proc. IEEE MEMS, 2005, pp. 726–729. [15] T. H. Schulte et al., “Microfluidic technologies in clinical diagnostics,” ClinicaChim. Acta, vol. 321, pp. 1–10, 2002. [16] Feisu, K. Chakrobarty, “Defect Tolerance Based on Graceful Degradation and Dynamic Reconfiguration for Digital Microfluidics-Based Biochips”, IEEE TCAD V.25, No. 12, 2006. [17] Tao Xu and K. Chakrabarty, “Functional Testing of Digital Microfluidic Biochip”, ITC 2007. [18] S. Saha, et. al. “An Efficient Single Fault Detection Technique for Micro-Fluidic Biochips”, in Proc. IEEE Int. Conf on ACE, pp. 10-14, 2010.

AUTHORS Sagarika Chowdhury received the M.Tech. degree in Computer Science and Application from University of Calcutta and stood 1st Class Third. She is currently an Assistant Professor of Computer Science & Engineering Department at Narula Institute of Technology, Kolkata, India. Her current research projects include Fault Detection and Diagnosis Techniques for Micro-Fluidic Based Biochips.

Sumitava Royis pursuing the B.Tech. degree in Computer Science and Engineering from Narula Institute of Technology (presently in his final year). His research interests include Fault Detection and Diagnosis Techniques for Micro-Fluidic Based Biochips.

Sourav Sahais pursuing the B.Tech. degree in Computer Science and Engineering from Narula Institute of Technology (presently in his final year). His research interests include Fault Detection and Diagnosis Techniques for Micro-Fluidic Based Biochips.

Arijit Sahais pursuing the B.Tech. degree in Computer Science and Engineering from Narula Institute of Technology (presently in his final year). His research interests include Fault Detection and Diagnosis Techniques for Micro-Fluidic Based Biochips.

IMPROVING OF ARTIFICIAL NEURAL NETWORKS PERFORMANCE BY USING GPU’S: A SURVEY Israel Tabarez-Paz1, Neil Hernández-Gress2 and Miguel González Mendoza2. 1

Universidad Autónoma del Estado de México Blvd. Universitario s/n, Predio San Javier Atizapán de Zaragoza, México {itabarezp}@uaemex.mx http://www.uaem.mx/cuyuaps/vallemexico.html 2

Tecnológico de Monterrey, Campus Estado de México, Carretera Lago de Guadalupe km 3.5 Atizapán de Zaragoza Col. Margarita Maza de Juarez, Atizapán de Zaragora, México {ngress, mgonza}@itesm.mxhttp://www.itesm.edu

ABSTRACT In this paper we study the improvement in the performance of Artificial Neural Networks (ANN) by using parallel programming in GPU or FPGA architectures. It is well known that ANN can be parallelized according to particular characteristics of the training algorithm. We discuss both approaches: the software (GPU) and the Hardware (FPGA). Different training strategies are discussed: the Perceptron training unit, the Support Vector Machines (SVM) and Spiking Neural Networks (SNN). The different approaches are evaluated by the training speed and performance. On the other hand, algorithms were coded by authors in the hardware, like Nvidia card, FPGA or sequential circuits that depends on methodology used, to compare learning time with between GPU and CPU. Also, the main applications were made for recognition pattern, like acoustic speech, odor and clustering According to literature, GPU has a great advantage compared to CPU, this in the learning time except when it implies rendering of images, despite several architectures of Nvidia cards and CPU’s. Also, in the survey we introduce a brief description of the types of ANN and its techniques of execution to be related with results of researching.

KEYWORDS GPU, FPGA, Artificial Neural Networks, Spiking Neural Networks, Support Vector Machines.

1. INTRODUCTION This paper presents a survey of the improvement of training time and performance of Artificial Neural Networks (ANN). Some trends of topics are about ANN is Parallel Programming to solve problems such as clustering (Herrero-Lopez [8]), pattern recognition (Olaf [28]), regression (Carpenter [19]), building of ANN in a specific hardware, such as FPGAs (Papadonikolakis [7]). Historically, ANN were developed in second half of century XX as a result of research made in Second War World. First generations are MC Culloc (1943), Hebb (1949), Perceptron (1957), Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 39–48, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3405

40

Computer Science & Information Technology (CS & IT)

Adaline y Madaline (1959), Cognitron (1980) y Hopfield (1982). Then, in 1982 Hinton and William developed the known algorithm called back propagation. This can be considered as second generation of ANN. The third generation was studied since 1930, with British scientists Alan Lloyd Hodgkin (1914-1998) y Andrew Fielding Huxley (he was born in 1917), nowadays SNN are based on this model. These authors finished their research in 1950 and their mathematical model is known as Hodgkin – Huxley [27] The perceptron is the first training unit in which a training algorithm for linearly separable problems, that consist of a single neuron. Mathematically, itis represented by anstraight line equation [36]. However, non – linear problems can’t be solved with this methodology. However, in decade of 1990 was started the development of SVM [35], even this methodology had been invented since 1979 [32] by Vapnik, to solve more complex problems, linearlly separable or non – separable. In this case, support vectors are a set of vectors placed in border of clusters for classifying or densities detection. An advantage related to this methodology was that scientist calculated its architecture that consists of three layers; however, SVM consume many memory resources. In 2003 was developed the methodology SNN also called Spike Response Model (SRM) (Bohte [29], Olaf[28]). At the same time, Izhikevich [30] developed a reduced model of Hodgkin – Huxley model that consist on two differential equations that explain behavior of mammal neurons. The main diference between SRM and Izhikevich’s model are the differential equations. In case of Hodgkin – Huxley model has four differential equations with partial non linear derivatives, and depends on the space and time. This model describes propagation and generation of potential of a big axon of squid in order to explain the main properties. SNN’s are based on the model described in last paragraph, because is the model most similar to the neurons of mammals [28] Information in the mammalian neurons of the brain, is coded with spikes, around 55 mV. A spike is an electrical pulse along its axon. The similar Artificial Neural Network with mammalian neuron is Spiking Neural (SNN), what sends a response according to the data encoded in the time, so it is more suited for applications where the timing of input signals carries important information (e.g., speech recognition and other signal-processing applications). Also, SNN can be applied to the same problems that depend on behavior of time of parameters because of its singular characteristic of coding in the time [13] Respect to parallel programming [38] calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, that are solved concurrently. There are several different forms of parallel computing: bit-level, instruction level, data, and task parallelism. This manuscript is focused on instruction level and task. In the figure 1, we can see principle of parallel computing. Problems of parallel programming can be solved in OpenGL, Cg, C, C++ and Fortran. Finally, they are developed for CUDA language. This paper is distributed as follows: in section 2 the state of the art of ANN is presented, in section 3 the performance of ANN in parallel programming is included, finally in section 4 are the conclusions.

Computer Science & Information Technology (CS & IT)

41

Figure 1. Parallel programming.

2. RELATING WORKS ON THE USE OF PARALLEL PROGRAMMING IN ARTIFICIAL NEURAL NETWORKS Recently works are shown in the following paragraph. According to Sridhar [1], proposes application of a technology that consists of a chip thermal modelling based on Neural Network and GPU’s. Learning time is compared between CPU and GPU for this application. As a conclusion, GPU is faster then CPU.

AUTHOR Arash [2]

Lowe [3]

Sergio Herrero [8] Izhikevich [9] Bhuiyan [11] Yudanov [13]

Scanzio [12] Xin Jin [14]

Papadonikolakis [15]

Nageswaran [17]

Table 1. State of the Art Parallel. CONTRIBUTION Implements Izhikevich’s model in a GPU of Spiking Neural Network. Comparisons between CPU and GPU are shown and considerable speedup is achievable with the approach depending on the system architecture and the SNN complexity. He uses several GPU’s of Nvidia to compare an Artificial Neural Network with eight neurons in the hide layer about its training time. As a result, Nvidia GTX is faster than other cards that he used. However, he doesn’t say which is the model of Artificial Neural Network. Compares learning time and precision between two GPU targets and libraries of MatLab. Designs a hybrid model for SNN in order to combine continuous and discontinuous numeric methods. Compares the models of SNN such as Izhikevich and Hodgkin Huxley, these models applied to recognition of characters. Implements a hybrid method with numeric integration of Parker Sochacki (PS) with adaptative order. This is validated at the moment in the comparision made between GPU and CPU in their characteristics. He compares the speed of processing in CUDA of algorithms feed fordward and back propagation. He Applies a chip called SpiNNaker that contains several processors ARM968 that has a speed of processing of 200MHz each one. He compares the results usingMatLab. He evaluate the state of actualization of the neuron, arrangement of entry, processing of a new entry;. However he don’t experiment with other databases. He has focused on improving the speed of learning and efficiency of SVMs using several methods. Also, he compares these parameters between a GPU and a FPGA programming Gilbert’ algorithm. He presents a compilation of theIzhikevich’s models.

YEAR 2011

2011

2010 2010 2010 2010

2010 2010

2009

2009

42

Thomas andLuk [18] Stewart andBair [20] Prabhu [21]

Catanzaro [22]

Martínez [23]

Philipp [24]

Pavlidis, et. al [26] Zhongwen [25]

Olaf [28] Bohte [29]

Izhikevich [30]

Computer Science & Information Technology (CS & IT)

The author proposes a Simulation with maximum 1024 neurons in a FPGA the Izhikevich’s model. He Applies Runge – Kutta’s method for Izhikevich and Hodgkin Huxle’s models. As a result, second method is more efficient. He applies GPU for pattern classifier in images. He focuses on the degree of parallelism of a problem. He uses maximum size of image of 256 MB, and in a video memory GPU of 768 MB. As a result, author compares Dual – Core AMD processor with a Geforce 6150 GPU, and when the number of patterns increase, the CPU is linearly slower than GPU, But when the network size increase the curve isn’t linear. The author proposes theSVM using algorithm of Sequential Minimal Optimization (SMO), also he compares time of learning and precision of classification between GPU and libraries of SVM of MatLab. He implementes Fuzzy ART Neural Network in a GPU in order to compare results with CPU processor. Type of data applied are images in format RGB. Also the author uses dual – core Pentium 4 at 3.2 GHz, although the Neural Network is only accelerated in a GeForce 7800 GT card. As a conclusion, CPU is faster in training stage that CPU, in spite of GPU is faster in testing stage. He programs Spiking Neural Network in a FPGA. About results, author says that this hardware can be simulated through thousands of neurons, however author does not show conclusions about it. On the other side, he focuses on synchronization of nodes according to the frequency of the signal. He Applies evolution algorithms using SNN, however according to author efficiency of the network was not calculated. He calculates the learning time in a multilayer perceptron in a CPU and a GPU, spending 11328 ms (CPU) and 46 ms (GPU) respectively. The author Shows theory about SNN and the problem of codification of the entries. He also made a comparison with different algorithms as Spikeprop. The work does not show the learning time. On the other hand, he presents differences between traditional ANN and SNN. He simulates in MatLab the Hodgkin – Huxley’s model. Also, he gots to execute maximum 10000 neurons and 1000000 of sinapsys.

2009 2009 2008

2008

2007

2007

2005 2005

2004 2003

2003

3. PARALLEL PROGRAMMING IN ANNS 3.1. Types of architectures for parallelization Artificial Neural Networks can be parallelized in a specific hardware, for example GPU, FPGA such a Thomas [18], sequential circuits, or specific card [14] However, according to the most often used, we have focused on GPU and FPGA. In the case of SVM’s, they are better designed in a GPUbecause the optimizing methodrequires of solving repetitively operations of matrixes. However, for SNN methodology is better to use

Computer Science & Information Technology (CS & IT)

43

FPGA or sequential circuits, although it can be simulated in GPU. The reason is that in a GPU thelearning time is calculated with a non linear and exponential equation,which algebraic order depends directly of number of neurons in the input. This equation is solved with mathematical approximations, so if the number of neurons in a input layer is increasing, the computational complexity too. However, to design SNN architecture in the circuit mentioned, the time does not need a mathematical solution to find the threshold, this is only detected with a simplex circuit.

3.2. Configuration of a GPU This section is focused in program CUDA in a GPU. Because of each author uses his own resources, then there is not a standardhardware of interest for comparing the results with other researchers, however results of other investigations can be used as a reference to improve the algorithms. One of the biggest problems to start isto configure the hardware selected. Some ANNs need to be programmed with kernel in three dimensions, such as SNN. The simplest configuration in one or two dimensions is perceptron method. Parameters to be considered in hardware are threads, blocks and grids. In case of perceptron, each column of a block can be used as a layer;in contrast for SNN each block can represent only one neuron. Sometimes computational resources are not enough. Other problem to be considerated is thatthis method is recursive and weightsmust be frequently adjusted because of local memory is not enough. However, all details of programming depend on the ability to program each design it can be easy or not. Also, efficiency can be better if the researcher knowswhen a specific methodology could be used. But the most important depends on the researcher’s ability to decide when and how much can be parallelized (the grade of parallelism). The hardware configuration is selected in each kernel, the number of threads and the number of blocks per grid are chosen [38]

3.3. Grade of parallelization All ANNs can be parallelized in several levels. First, perceptron can be parallelized per layer. In other words, all outputs of neuronsper layer can be calculated at the same time because of thesimple form of its activation function. On the other hand, each layer must be calculated sequentially because of input of hidden layer depends on output of previous layer. However, circular buffer, this procedure can be designed, through FIFO principle (First in – First out).So, when all the output values of the first iteration are known all the layers could be parallelized. However, this can be implemented in other research. Second, in case of SVM, is similar to perceptron but the difficulty increases when the quantity of parameters increases to calculate the dimension in where the problem is separable. So, a handle matrix of more than one columnis needed and requirements of computational resources are bigger. In this case, we kernels in CUDA with more than one dimension could be needed. Third, for SNN an implement algorithmof a mathematical or sequential method to calculate the value of threshold in amplitude and time is needed. This impliesthatmany values of time are needed, as well as, maybe hundreds or thousands per row in a block. So, a neuron is represented as a grid in tree dimensions, where each row can represent a previous neuron to be added for one output of the following neuron. This method requiresgood memory resources. Therefore, sometimes it is not recommended to parallel more than hardware features allow you to do.

44

Computer Science & Information Technology (CS & IT)

3.4. Examples of parallelization in ANNs Parallelization of ANN consists in two phases: first learning phase, and second execution phase. Parallelization for learning phase in case of SVM is in parallelization of matrixes operations, what is well defined in webpage of CUDA [37] although this depends on optimization method applied what is focused on solving quadratic problem [38]. In case of SNN, the mathematical calculus in phase of learning is more sequential because of its approximation method.But in both SVM and SNN all weight of hidden layers neurons can be parallelized and calculated at the same time. The second phase refers about to evaluations of weights calculated according to inputs. The sections A, B and C show a way of parallelizing of this phase. Preceptron.Graphically, the following components of the model represent the actual activity of a neuron. All inputs are summed altogether and modified by the weights. This activity is referred as a linear combination. Finally, an activation function controls the amplitude of the output. This process is described in the figure 2. Each thread represents a layer. In the GPU, parallelism for a neuron of perceptron is focused on mathematical operations [38]

Figure 2. Simple perceptron. Backpropagation.In this case has the samealgorithm in weight thatSNN. The weight needs to be adjusted per iteration. Parallelization in two dimensionsis like the figure 3. Support Vector Machines (SVM).In the figure 3, the parallelization of SVM could be observed, in this case each thread represents a layer with n or k number of rows, however the mathematics calculus are parallelized into of each neuron of hidden layer in other kernel, what is solved as a optimization problem. The dimension of the Hessian matrix isequal to numberof input parameters. So, the multiplication of matrix is another operation to parallelize that can be solved in a separated kernel. In the figure 3, the y0 neuron gets at the same time all values multiplied per its respective weight, the in other kernel in CUDA the mathematical operations are parallelized. At the same time the other neurons of hidden layer computing its respective output. However, the next layer cannot calculate its output without the previous layer has done.

Figure 3. Parallelization of Support Vector Machine (SVM), 2D Array.

Computer Science & Information Technology (CS & IT)

45

Spiking Neural Networks (SNN). Thearrange of figure 4 represents a configuration of the GPU device in three dimensions. This is a solution for parallelizing SNNalgorithm.The cube showedin this figure is only a neuron of a hidden or output layer.There are as many cubes as neurons are required. Each cube is divided in blocks, what depend on the length of time in the input [28]. All neurons per layer can be calculated in parallel, but a disadvantage is thatthis procedure requires many resources of memory.

Figure 4. Parallelization of Spiking Neural Network (3D Processor Array). SNN has significant characteristics that must be considerated. The synapses of the biological neuron are modeled as weights. Let’s remember that the synapse of the biological neuron is which interconnects the neural network and gives the strength of the connection. For an artificial neuron, the weight is a number, and represents the synapse. A negative weight reflects an inhibitory connection, while positive values designate excitatory connections.Inherent parallelism of commodity graphic hardware is used to accelerate the computationofANN.According to Nikola [34], taxonomy of parallelization approaches for neurosimulations is represented in the figure 5.

Figure 5. Taxonomy of parallelization approaches for neurosimulations. Sridhar [1] says that the main advantage of GPU over CPU is high computational parallelism and efficiency with a relatively low cost.However, it is difficult to design an algorithm. Also, the author says that although exist Integrated Circuits (IC) for high parallelism, it is very difficult to translate this parallelism in an efficient software.On the other hand, human brain can be trained to solve complex problems, such as thermal modeling of specific IC layouts. Prabhu [21] compares efficiency of the human brain with enormous computational powerand parallel environs of GPU’s, so we understand that GPU has some limitations. According to him, the role played by Graphical Processing Unit (GPU) is approaching to Artificial Neural Networks to the nature of human brain. Also, GPU’s have been used for rendering high quality images in real time, virtual reality simulations and games. Modern GPU’s can perform highly intensive parallel tasks.

4. CONCLUSIONS In this paper weconclude thatparallelismin ANNincrease speedof learning time. However, is very difficult to design this sort of algorithms. On the other hand, we can parallelize by hardware (FPGA) of software (GPU). Tendency is study to know which algorithm is the most efficient and

46

Computer Science & Information Technology (CS & IT)

faster, because of their mathematical characteristics and their architecture. So, is better to solve a problem with large database using SVM and SNN than traditional ANN. The importance to compare the efficiency between these algorithms is to know the error in the results and which is faster for learning according to quantity of instances and parameters per instance. So, with this information is possible to know what applications are the most appropriates for each application. As a future work, there are some aspects, as parallelizing SVM or SNN in a GPU and SNN in a FPGA, then compare learning time. However, also is necessary to propone an important application to solve real problems.

REFERENCES [1]

[2]

[3]

[4] [5]

[6]

[7] [8] [9] [10]

[11]

[12]

[13] [14] [15]

[16]

Sridhar, A.; Vincenzi, A.; Ruggiero, M.; Atienza, D.; , "Neural Network-Based Thermal Simulation of Integrated Circuits on GPUs," Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on , vol.31, no.1, pp.23-36, Jan. 2012 Ahmadi, Arash; Soleimani, Hamid; , "A GPU based simulation of multilayer spiking neural networks," Electrical Engineering (ICEE), 2011 19th Iranian Conference on , vol., no., pp.1-5, 17-19 May 2011 Lowe, E.W.; Woetzel, N.; Meiler, J.; , "Poster: GPU-accelerated artificial neural network for QSAR modeling," Computational Advances in Bio and Medical Sciences (ICCABS), 2011 IEEE 1st International Conference on , vol., no., pp.254, 3-5 Feb. 2011 B. Kirk, David; W. Hwu, Wen-mai “Programming Massively Parallel Processors” Ed. Morgan Kaufmann, 2010. Qi Li; Salman, R.; Kecman, V.; , "An intelligent system for accelerating parallel SVM classification problems on large datasets using GPU," Intelligent Systems Design and Applications (ISDA), 2010 10th International Conference on , vol., no., pp.1131-1135, Nov. 29 2010-Dec. 1 2010 Tsung-Kai Lin; Shao-Yi Chien; , "Support Vector Machines on GPU with Sparse Matrix Format," Machine Learning and Applications (ICMLA), 2010 Ninth International Conference on , vol., no., pp.313-318, 12-14 Dec. 2010 Papadonikolakis, M.; Bouganis, C.: "A novel FPGA-based SVM classifier," Field-Programmable Technology (FPT), 2010 International Conference on , vol., no., pp.283-286, 8-10 Dec. 2010 Sergio Herrero-Lopez, John R. Williams, Abel Sanchez,: Parallel Multiclass Classification using SVMs on GPUs, November 2010. Izhikevich, E.M.: "Hybrid spiking models", vol. 368, issue 1930, pp. 5061-5070, Nov 2010 Venkittaraman Vivek, Pallipuram Krishnamani: ACCELERATION OF SPIKING NEURAL NETWORKS ON SINGLE- GPU AND MULTI-GPU SYSTEMS, ProQuest document ID: 204037751, Publication Number: AAT 147555, May 2010. Bhuiyan, M.A.; Pallipuram, V.K.; Smith, M.C.: "Acceleration of spiking neural networks in emerging multi-core and GPU architectures," Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW), 2010 IEEE International Symposium on , vol., no., pp.1-8, 19-23 April 2010 Scanzio, S.; Cumani, S.; Gemello, R.; Mana, F.; Laface, P.; , "Parallel implementation of artificial neural network training," Acoustics Speech and Signal Processing (ICASSP), 2010 IEEE International Conference on , vol., no., pp.4902-4905, 14-19 March 2010. Yudanov, D.; Shaaban, M.; Melton, R.; Reznik, L.; GPU-Based Simulation of Spiking Neural Networks with Real-Time Performance & High Accuracy, Feb 2010. XIN JIN: Parallel Simulation of Neural Networks on Spinnaker Universal Neuromorphic Hardware, University of Manchester, 2010 Papadonikolakis, M.; Bouganis, C.-S.; Constantinides, G.: "Performance comparison of GPU and FPGA architectures for the SVM training problem," Field-Programmable Technology, 2009. FPT 2009. International Conferenceon , vol., no., pp.388-391, 9-11 Dec. 2009 Fidjeland, A.K.; Roesch, E.B.; Shanahan, M.P.; Luk, W.; , "NeMo: A Platform for Neural Modelling of Spiking Neurons Using GPUs," Application-specific Systems, Architectures and Processors, 2009. ASAP 2009. 20th IEEE International Conference on , vol., no., pp.137-144, 7-9 July 2009

Computer Science & Information Technology (CS & IT)

47

[17] Nageswaran, J.M., Dutt, N.: Krichmar, J.L.; Nicolau, A.; Veidenbaum, A.; , "Efficient simulation of large-scale Spiking Neural Networks using CUDA graphics processors," Neural Networks, 2009. IJCNN 2009. International JointConferenceon , vol., no., pp.2145-2152, 14-19 June 2009 [18] Thomas, D.B.;Luk, W.: "FPGA Accelerated Simulation of Biologically Plausible Spiking Neural Networks," Field Programmable Custom Computing Machines, 2009. FCCM '09. 17th IEEE Symposium on , vol., no., pp.45-52, 5-7 April 2009 [19] Carpenter, A.; "CUSVM: A CUDA IMPLEMENTATION OF SUPPORT VECTOR CLASSIFICATION AND REGRESSION", Jan. 2009. [20] Stewart R.D., Bair W.: "Spiking neural network simulation: numerical integration with the ParkerSochacki method", Jan. 2009 [21] Prabhu, R.D.; "SOMGPU: An unsupervised pattern classifier on Graphical Processing Unit," Evolutionary Computation, 2008. CEC 2008. (IEEE World Congress on Computational Intelligence). IEEE Congress on , vol., no., pp.1011-1018, 1-6 June 2008 [22] Bryan Catanzaro, Narayanan Sundaram, KurtKeutzer: Fast Support Vector Machine Training and Classification on Graphics Processors, International Conference on Machine Learning, Helsinki, Finland, 2008. [23] Martínez Z. M., Díaz P. F. J., Díez H. J. F, Antón R. M.: Fuzzy ART Neural Network Parallel Computing on the GPU, Springer (2007). [24] Philipp S., Grübl A., Meier K., Schemmel J.: Interconnecting VLSI Spiking Neural Networks Using Isochronous Connections, Springer (2007). [25] L. Zhongwen, L. Hongzhi and W. Xincai: Artificial Neural Network Computation on Graphic Process Unit (2005). [26] N.G. Pavlidis, D.K. Tasoulis, V.P. Plagianakos, G. Nikiforidis, M.N. Vrahatis: Spiking Neural Network Training Using Evolutionary Algorithms, IEEE International Joint Conference on, pp: 2190 – 2194, vol. 4 ,december 2005. [27] SeijasFossi C., Caralli D’ Ambrosio A.: Uso de las máquinas de soportepara la estimación del potencial de acción cellular, Revista de Ingeniería UC. Vol. 11, Nº 1, 56 – 61 (2004). [28] Olaf Booij,: Temporal Pattern Classification using Spiking Neural Networks, Intelligent Sensory Information Systems Informatics Institute Faculty of Science Universiteit van Amsterdam (2004). [29] Sander M. B.: Spiking Neural Networks, Universiteit Leiden (2003). [30] Izhikevich, E.M.: "Simple model of spiking neurons," Neural Networks, IEEE Transactions on , vol.14, no.6, pp. 1569- 1572, Nov. 2003 [31] Sander M. Bohte, Joost N. Kok, Han La Poutre: Error-backpropagation in temporally encoded networks of spiking neurons, Neurocomputing 48, pp: 17 – 37, (2002). [32] Platt C. J.: Sequiential Minimal Optimization: A fast Algorithm for Tarining Support Vector Machines (1998). [33] Osuna E., Freund R., Girosi F.: An Improved Training Algorithm for Support Vector Machines, In Proc. of IEEE NNSP'97. [34] Nikola B. Serbediija: Simulating Artificial Neural Networks on Parallel Architectures (1996). [35] Vapnik V., Cortes C., Support Vector Networks (1995). [36] FausetLaurene, Fundamentals of Neural Networks, ARCHITECTURE, ALGORITHMS, AND APPLICATIONS, Prentice Halls, 1994. [37] A. L. Hodgkin and A. F. Huxley: A quantitative description of membrane current and its application to conduction and excitation in nerve, J. Physiol. (1952). [38] http://www.nvidia.com [39] http://www.svms.org

48

Computer Science & Information Technology (CS & IT)

Authors M en C Israel Tabarez Paz: He works for Universidad Autónoma del Estado de Méxicoas a researcher. He is focus on Artificial Intelligence, Artificial Neural Networks. Also he is a PhD. Student in Computing Science in InstitutoTecnológico y de EstudiosSuperiores de Monterrey Campus Estado de México (ITESM). PhD. Neil Hernández Gress:He works for de InstitutoTecnológico y de EstudiosSuperiores de Monterrey Campus Estado de México (ITESM)as a Director of Research Technological Development and Postgrade in ITESM. He is focus on Artificial Intelligence, Artificial Neural Networks. PhD. Miguel González Mendoza.Head of the P Program in Computer Sciences and Engineering in ITESM.Secretary in Mexican Society on Artificial Intelligence.

AUTO-MOBILE VEHICLE DIRECTION IN ROAD TRAFFIC USING ARTIFICIAL NEURAL NETWORKS 1

B.SankaraSubramanian, 2R.Vasanth Kumar Mehta and 3N. Kumaran

1

Department of CSE, SCSVMV University, kanchipuram, Tamil Nadu, India

2

Department of CSE, SCSVMV University, kanchipuram, Tamil Nadu, India

[email protected], 919486118617 [email protected], 919095984004 3

Department of IT, SCSVMV University, kanchipuram, Tamil Nadu, India [email protected], 919894744597

ABSTRACT So far Most of the current work on this area deals with traffic volume prediction during peak hours and the reasons behind accidents only. This work presents the analysis of automobile vehicle directing in various traffic flow conditions using Artificial neural network architecture. Now a days, due to unprecedented increase in automobile vehicular traffic especially in metroPolitian cities, it has become highly imperative that we must choose an optimum road route in accordance with our requirements. The requirements are : volume of the traffic, Distance between source and destination, no of signals in between the source and destination, the nature of the road condition , fuel consumption and Travel Timing. Artificial Neural networks, a soft computing technique, modeled after brain biological neuron functioning, helps to obtain the required road way or route as per the training given to it. Here we make use of Back propagation network, which changes the weights value of the hidden layers, thereby activation function value which fires the neuron to get the required output.

KEYWORDS Vehicle route selection and direction, Artificial neural network, Road Traffic Analysis, Back Propagation network.

1. INTRODUCTION The daily mess that a commuter faces during his travel to office is felt a lot. People get stranded and become weird while passing through a heavy traffic condition. Though the Government plans and ideas like diverting the traffic during peak hours, change in timing between school-college goers and company workers, laying by-pass road and etc., to reduce the complexity in road traffic, it has not yielded a much expected result. As this is the case, the total burden lies on the shoulder of the commuters. They need some intelligent method by which they can avoid this Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 49–55, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3406

50

Computer Science & Information Technology (CS & IT)

difficult condition and make their journey a pleasant one The main constraints felt by them are : traffic volume, no of signals they have to wait for clearance, road condition and fuel consumption, distance they have to travel if they divert their journey in various alternative routes to reach the destination. So, naturally, our aim is to select the best route that satisfies the user requirements during normal working days. But in some special days, like holidays or strike call, we can intuitively and easily judge the viable route to take up. The paper is organized as follows. Section 1 is the Introduction. Section 2 deals with the basics of Artificial neural networks and back propagation network. Section 3 describes about the related work in this area. Section 4 describes the basic idea lying behind this work. and the architecture. Section 5 discusses about the performance evaluation and result details about performance and results. Section 6 finally concludes.

2. ARTIFICIAL NEURAL NETWORK Artificial Neural Network [1] is a mimic of biological brain neuron for processing information given to it.The large number of neurons interconnected among themselves work altogether to solve a specific problem. The inputs given to it are classified into two types: Training data, which makes the network to learn to give the required output for a given set of inputs, Testing data, which tests the prediction accuracy of the network for randomly incoming data. It can be used for applications such as character and digit recognization or classification of data. It has got input layers , hidden layers and output layers. The function of the hidden layers is to fire an activation function like sigmoidal function to bring out the required output. The weight value, assigned between input and hidden layers changes themselves ,helps to minimize the error while getting the desired output. 2.1 Back Propagation Network A single layer network can accomplish very limited number of tasks. Minsky and Papert(1969) [2] showed that a two-layer feed forward network can have many advantages but they question remained unanswered was “ how the weights from the input to hidden layers can be adjusted?” The answer was given by Rumelhart, Hinton and Williams in 1986. They reasoned that by propagating errors of the output layers back into the units of the hidden layers, we can adjust the weight values thereby making the network more adaptive and accurate . This method is also called “Back Propagation Learning Rule”. It is a generalization of delta rules for non-linear activation functions and multi-layer networks and a systematic method of training the networks. A Back propagation network[2] consists of at least three layers of units: 1. An input layer 2. At least one intermediate layer called hidden layer. 3. An output layer. The units are connected in feed-forward fashion with input units are fully connected to the hidden layers and hidden layers are fully connected to the output layers. With back propagation networks, learning occurs during learning phase. The patterns are applied to the input units and propagated forward. The output layer pattern of activation is compared with the expected Pattern to calculate the error signal. The error signal at the output pattern is then propagated back to the input units in order to appropriately adjust the weights in each layer of the network. Once the

Computer Science & Information Technology (CS & IT)

51

back propagation network has learnt to classify correctly for a set of inputs, a second set of inputs can be given to see how well it classify the untrained inputs. The important point is to see how well the network generalizes.

3. THE RELATED WORK Konjicija.S, Avdagic . Z and Meier.G, Wurmthaler.C in their paper [4] have shown a simple ability of using neural networks in longitudinal vehicle guidance. Here neural networks learn from acquired real driver data, and also the driver behaviour styles for both ends ie., extremely comfort to extremely sportive ones. This scenario is shown as a simulated model based on longitudinal trajectory generation. In this an adjustable comfort parameter is used for different sorts of driver behaviour.

a)

b) In their paper Lioing Fua and L.R.Rilettba [5] presents an artificial neural network (ANN) based method for estimating route travel times between individual locations in an urban traffic network.. The methodology developed in this paper assumes that route travel times are timedependent and stochastic and their means and standard deviations need to be estimated. Three feed-forward neural networks are developed to model the travel time behaviour during different time periods of the day the AM peak, the PM peak, and the off-peak. These models are subsequently trained and tested using data simulated on the road network for the City of Edmonton, Alberta. The ANN model is compared with a distance-based model and a shortest path algorithm. The practical implication of the ANN method is subsequently demonstrated within a dial-a- ride para-transit vehicle routing and scheduling problem. The computational results show that the ANN-based route travel time estimation model is appropriate, with respect to accuracy and speed, for use in real applications. c) Baluja, S presents [6] creation of an artificial neural network based autonomous land vehicle controller. The performance of evolved controllers is better in unseen situations than those trained with an error back propagation learning algorithm . An overview of the previous connectionist based approaches is described and the exploration of methods for reducing the high computational costs of training ANN with evolutionary algorithms is done. The evolutionary algorithms guided by error metrics shows improved performance over those guided by the standard sum-squared error metric. Both g evolutionary search and error back propagation are integrated in this work. d) In his paper, Dean A,Pomelleau [7] in The ALVINN (Autonomous Land Vehicle In a Neural Network) project describes about real-time training of ANN to perform difficult perception tasks. It is a back propagation network modeled to drive the CMU Navlab, a modified Chevy van. He describes the training techniques for ALVINN to learn in under 5 minutes to autonomously control the Navlab by observing the human driver reactions r. This enables the ALVINN to drive in a variety of conditions including single-lane paved and unpaved roads, and multilane lined and unlined roads, at speeds of up to 20 miles per hour.

4. THE PROPOSED WORK We take source to destination distance (categorized as Lengthy, Medium and Short),Volume of Traffic(categorized as Peak or Heavy, Medium and Mild), No of Signals( categorized as High, Medium and Low), Road Condition(Categorized as Smooth, Good and Bad), Travel

52

Computer Science & Information Technology (CS & IT)

Timing(Categorized as High, Normal and Low) as input parameters as shown in fig 2(Neural Network Back Propagation Architecture) We eliminate fuel consumption just because it is indicated by the source and destination distance and Travel Timing selection categories. So there are five input parameters and each have three categories, thus giving a total of 243(35) combinations. Here we consider 5 alternative routes as the output nodes. They are : S-X1-Y1-Z1-D, S-W2-X2-Y2-Z2, S-X3-Y3-Z3-D, S-V4-W4-X4-Y4-Z4-D, S-X5-Y5-Z5-D where V, W, X, Y and Z intermediate nodes along the routes. 3 2 1

SOURCE

DESTINA TION

4

5 Fig.1 Main Route with Alternatives

1 2,3,4,5

Main route Alternative routes Signal point

So there are 15 input nodes and 5 output nodes . The hidden layers nodes are fixed as 10 , the mean value of input and output nodes as per thumb rule. The Sigmoid function is selected as the activation function in the hidden layer. Each input node is assigned a weight and fully connected to the hidden layer and in turn hidden layer nodes are again fully connected to output nodes. Out of total 243 combinations, we take any 180 as the training data sets. These inputs are uses to train the network to produce the actual result. For example, if we choose Source to Destination distance as Medium (0,1,0), Volume of Traffic as Mild (0,0,1) No of Signals as Medium(0,1,0) Road Condition as Smooth(1,0,0) Travel Timing as Low(0,0,1) Then network is trained, say, to choose Route 5 (the route with higher output layer value) Similarly for other input conditions the network is trained and we obtain Route information as

Computer Science & Information Technology (CS & IT)

53

follows (only few samples are shown)

Now the testing data is fed into the network from unforeseen inputs. The error value , if any , in output layer is fed back by the back propagation network and weight values of hidden layers are changed accordingly to get the desired output. This is the usual practice for any working day/Normal day. But for holidays or strike call we can choose always the shortest route(Default route) to reach the destination.

Figure.2 Neural Network Back Propagation Architecture VT – Volume of Traffic DIS – Distance between source and destination SIG -- No of Signals RC -- Road Condition TT – Travel Timing H1, H2, …..H10 – Hidden layer Units R3 -- Main (Default) Route

54

Computer Science & Information Technology (CS & IT)

R1, R2, R4, R5 – Alternative routes

5. PERFORMANCE EVALUATION AND RESULT We considered the Koyambedu-Broadway route in Chennai,TamilNadu, India as the source and destination pair and we put one route as the normal and selected other 4 routes(left-side 2 and right-side 2 to the normal route,see fig 1) through various road links. Initially we tested manually about the outcome of the best route among the five alternative route chosen for various input parameters and these outcomes are used to train the network for various combinations of input conditions. Then the testing data are given and the results obtained are summarized as follows Table 1, Percentage Accuracy Of Selection And Rmse Parameters

% Accuracy of Selection

Network tested manually

Network tested without BackPropagation

Network tested with BackPropagation

95.40%

84.90%

91.20%

0.28

0.42

0.12

Root-Mean Square Error

Equation : RMS for a Neural Network [3] (1)

So we can conclude that the network with back propagation performs better than without it. The reason behind the higher error value in case of without back propagation network is the curse of dimensionality. Here there are 15 inputs and the categorical division(each 3) of it results in 243 combinations. The no of inputs can be reduced if we consider ANY CONDITION , say, Road condition ANY or No of Signals ANY Numbers. Then the input reduces to 27 (33) from 243(35)and the network performs more efficiently than with higher inputs.

6. CONCLUSION This paper presents the novel approach of neural network based analysis of best route selection for Automobile vehicle travel and is the first of its kind. There are certain assumptions like : The road condition remain same independent of time, the no of alternate routes remain fixed ,no of signals are fixed, Volume of traffic remain same throughout the route during the time period considered and the regulation over the movement of different vehicle types such as Heavy, Medium and Light. But these assumptions are changeable and dynamic in nature. Hence the results obtained may not hold good and give only approximate measures. In Future work, we are proposing to analyze these dynamic nature of traffic flow conditions.

Computer Science & Information Technology (CS & IT)

55

ACKNOWLEDGEMENT We sincerely thank, University management, for giving constant support and Mr.L.Ganesh for his valuable help in publishing this manuscript.

REFERENCES [1] [2] [3] [4]

[5]

[6]

[7]

www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/ report.html : http://www.myreaders.info/03_Back_Propagation_ Network.pdf www.heatonresearch.com › ... › Chapter 4: How a Mac hine Learns Konjicija, S.; Avdagic,Z.; Meier,G.; Wurmthaler, “Longitudinal vehicle guidance using neural networks Computational Intelligence in Robotics and Automation”,. CIRA 2005.Proceedings.2005 IEEE International symposium.Page(s): 685 – 688 “Estimation of Time-Dependent, Stochastic Route Travel Times Using Artificial Neural Networks”. LIPING FUa'*and L.R.RILETTba 1Department of Civil Engineering,University of Waterloo, Canada,; 2Department of Civil Engineering and Texas Transportation Institute, Texas A&M University, Texas, , USA Baluja, S.Sch. “Evolution of an artificial neural network based autonomous land vehicle controller Systems, Man, and Cybernetics”, Part B: Cybernetics, IEEE Transactions on Date of Publication: June 1996 Author(s): of Comput. Sci., Carnegie Mellon Univ., Pittsburgh, PA Volume: 26 , Issue: 3Page(s): 450 – 463 Dean A. Pomerleau, “Efficient training of artificial neural networks for autonomous navigation” School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213 USA , Neural Computation journal Volume 3 Issue 1, Spring 1991 Pages 88-97,MIT Press Cambridge, MA, US

Authors B.Sankara Subramanian. B.E(EEE), M.E(CSE), (Ph.D) He was born and brought-up in Madurai, a small town in southern Peninsular India famous for temples. He graduated B.E(EEE) in First Class from Madurai Kamaraj University in 1997 and his Post Graduate M.E(CSE) in 2007 from Anna University, Chennai. He has around 10 years of teaching experience in Electrical and Computer Science Departments. His area of interest includes Information and Database Systems, Data warehousing and Data mining, Algorithms, Fuzzy Logic, Rough set Theory and Knowledge Retrieval. He is currently doing his Ph.d in Soft Computing area in SCSVMV University, Kanchipuram where he is presently employed. R.Vasanth Kumar Mehta. M.S., (Ph.d), He completed his graduate studies from BITS, Pilani and is presently pursuing Ph.D. from Sri Chandrasekharendra Saraswathi Viswa Mahavidyalaya(SCSVMV University), Kanchipuram, where he is working as Assistant Professor in the Department of Computer Science and Engineering. Areas of interest include Data Mining and Highperformance Computing N.Kumaran did B.E(CSE),M.Tech(IT), (Ph.D). He did his B.E(Computer science and Engineering) in CIT, Coimbatore, Tamil Nadu, India in the year 1998. And M.Tech(IT) Sathyabama University, Chennai in 2007. Currently he is pursing Ph.D(Computer networks) in NIT, Trichy. His areas of interest include Computer Networks, Neural networks, Network Security and cryptography. He has got around12 years of teaching experience various engineering colleges.

AN APPROACH FOR SOFTWARE EFFORT ESTIMATION USING FUZZY NUMBERS AND GENETIC ALGORITHM TO DEAL WITH UNCERTAINTY Divya Kashyap and A. K. Misra Department of Computer Science and Engineering Motilal Nehru National Institute of Technology Allahabad, India {[email protected] and [email protected]}

ABSTRACT One of the most critical tasks during the software development life cycle is that of estimating the effort and time involved in the development of the software product. Estimation may be performed by many ways such as: Expert judgments, Algorithmic effort estimation, Machine learning and Analogy-based estimation. In which Analogy-based software effort estimation is the process of identifying one or more historical projects that are similar to the project being developed and then using the estimates from them. Analogy-based estimation is integrated with Fuzzy numbers in order to improve the performance of software project effort estimation during the early stages of a software development lifecycle. Because of uncertainty associated with attribute measurement and data availability, fuzzy logic is introduced in the proposed model. But hardly a historical project is exactly same as the project being estimated due to some distance associated in similarity distance. This means that the most similar project still has a similarity distance with the project being estimated in most of the cases. Therefore, the effort needs to be adjusted when the most similar project has a similarity distance with the project being estimated. To adjust the reused effort, we build an adjustment mechanism whose algorithm can derive the optimal adjustment on the reused effort using Genetic Algorithm. The proposed model Combine the fuzzy logic to estimate software effort in early stages with Genetic algorithm based adjustment mechanism may result to near the correct effort estimation.

KEYWORDS Fuzzy-logic, Genetic algorithm, Similarity difference, Analogy based estimation, etc.

1. INTRODUCTION One of the most critical activities during the software life cycle is that of estimating the effort and time involved in the development of the software product under consideration. This task is known as Software Cost Estimation. Estimations may be performed before, during and after the development of software. The cost and time estimates are necessary during the first phases of the software life cycle, in order to decide whether to proceed or not (feasibility study). After Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 57–66, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3407

58

Computer Science & Information Technology (CS & IT)

completion, these estimates may be useful for project productivity assessment. The principal components[3] of project costs are: Hardware costs, Travel and training costs, Effort costs (the costs of paying software engineers). The dominant cost is the effort cost. This is the most difficult to estimate and control, and has the most significant effect on overall costs. Software cost estimation is a continuing activity which starts at the proposal stage and continues throughout the lifetime of a project. Projects normally have a budget, and continual cost estimation is necessary to ensure that spending is in line with the budget. Effort can be measured in staff-hours or staffmonths.

2. BACKGROUND Software cost estimation methods fall in three main categories Algorithmic method, Expert judgment and Analogy based method[1]. In Algorithmic cost modeling: model is developed using historical cost information which relates some software metric (usually its size) to the project cost. An estimate is made of that metric and the model predicts the effort required. Algorithmic estimation involves the application of mathematical models, such as COCOMO. Expert judgment [11] relies on the experience of experts. The accuracy of expert based prediction is low. They each estimate the project cost and the final cost estimate is arrived at by consensus. And third one is Estimation by analogy this technique is applicable when other projects in the same application domain have been completed. The cost of a new project is estimated by analogy with these completed projects. Each technique has advantages and disadvantages. For large projects, several cost estimation techniques should be used in parallel and their results compared. Comparing with other models, Estimation by Analogy (EbA) [1] appears to be well suited to effort estimation, especially when the software product is poorly understood.

2.1 Analogy based Estimation (EbA) Estimation by analogy is categorized as a composite method [17] or as a machine learning method. Estimation by analogy is mainly a data-driven[1,2] method. It compares the project under consideration (target project) with similar historical projects through their common attributes. The idea of analogy-based estimation is to determine the effort of the target project as a function of the known efforts from similar historical projects. Analogy-based estimation can be applied in the very early phase of a software project when detailed information about the project is not yet available, and can be later improved when more detailed information is accessible. Analogy Based Software Estimation is based on the principle that actual values achieved within the organization in an earlier and similar project are better indicators and predict the future project performance much better than an estimate developed using other techniques. It also facilitates bringing the organizational experience to bear on the new projects. Analogy Based Methods are based on actual values achieved within the organization in an earlier project and hence are more reliable than other methods of estimation. This method is easy to learn and very quick to come out with a good estimate value. This technique facilitates use of organizational expertise and experience to be brought forth for the current project like no other technique of software estimation. It can be applied in the very early phase of a software project when detailed information about the project is not yet available and can be improved later.

Computer Science & Information Technology (CS & IT)

59

2.2 Fuzzy Numbers A fuzzy number is a quantity whose value is imprecise, rather than exact as is the case with “ordinary” (single-valued) numbers. It is an extension of a regular number in the sense that it does not refer to one single value but rather to a connected set of possible values, where each possible value has its own weight between 0 and 1. This weight is called the membership function. In fuzzy logic, a membership function provides a measure of the degree of similarity of an element to a fuzzy set. A membership function represents the degree of truth as an extension of valuation. The membership function fully defines the fuzzy set. A generalized Fuzzy number A is a Fuzzy subset of the real line R and represented as A= [a, b, c, d; w], where 0 ¡ w ¡= 1 represent decision maker. The elements a, b, c, d are real numbers. The Trapezoidal membership of this Fuzzy number A should satisfy the following conditions: (a) A is a continuous mapping from R to the closed interval in [0, 1]. (b) A(x) = 0, where infinite ≤ x ≤ a and d≤x≤ infinite. (c) A(x) is monotonically increasing in [a, b]. (d) A(x) = w where b≤ x≤ c. (e) A(x) is monotonically decreasing in [c, d]. The membership function of a fuzzy number could be represented also by Triangular or Gaussian function.

2.3 Genetic Algorithm In the computer science field of artificial intelligence[15], a genetic algorithm (GA)[18] is a search 4 heuristic that mimics the process of natural evolution. This heuristic[6] is routinely used to generate useful solutions to optimization and search problems. 1. Randomly generate a initial value population X(0):=(x1,x2,…..,xN); 2. Compute the fitness F(xi) of each of the chromosome xi in the current population X(t); 3. Create new chromosomes Xr(t) by mating current chromosomes, playing mutation and recombination as the parent chromosome mate; 4. Delete numbers of the population to make room for new chromosomes; 5. Compute the fitness of Xr(t) and insert these into population; 6. t :=t+1, if not (end-test) go to step 3, or else stop and return the best chromosome.

3. PROPOSED WORK Analogy[10] operates with one, or perhaps two past projects selected on the basis of their close similarity to the proposed project. Estimating software project effort by analogy involves a number of steps: •

Establish the attributes of our planned project, (e.g. size, language type, etc.)

60

• • • • •

Computer Science & Information Technology (CS & IT)

Measure or estimate the values of those project attributes. Search the Dataset for a project that closely matches the attributes of our planned project. Compare each of the chosen attributes[16], (size, platform etc.,). Use the known development effort from the selected project as an initial estimate for the target project Establish or adjust the initial effort estimate in light of the differences between the analogue and our planned project. A linear equation is adopted to reduce the estimation error caused by the similarity measures between pair of projects in the adjustment mechanism.

Figure 1: Framework of adjusted fuzzy analogy-based estimation The proposed model as shown in figure.1 is considered as a form of EA (Estimation by Analogy) and comprise of three main Stages. • • • •

Construction of fuzzy number of attributes Finding Similarity distance between planed project and historical project Figure 1: Retrieving the closest project. Adjusting the reused effort using genetic algorithm

Construction of fuzzy number of attributes: Since we choose COCOMO81 Dataset that describe the project using 17 attributes, first of all each real number of each attribute should be replaced by its corresponding Fuzzy number. Fuzzy numbers can be constructed from either expert opinion or from data [13]. Expert opinion

Computer Science & Information Technology (CS & IT)

61

technique is totally subjective and depends on identifying pessimistic, optimistic and most likely values for each Fuzzy number[5], where construction of using data is based on the structure of data only. Therefore based on DATA, and using Fuzzy modeling [9], we have built the membership functions for each attributes. The numeric value of attributes in Fuzzy Number will be represented in the following sequence: Planned Project (P): [a1, a2, a3, a4; wa] Historical Project (H): [b1, b2, b3, b4; wb] Finding Similarity between planned project and historical project: To calculate the similarity distance between two fuzzy numbers we use the method proposed by Azzeh et. al[9]. This method combines the concept of geometric distance. Center of gravity (COG) and height of generalized fuzzy numbers. The degree of similarity S(P,H) between two generalized Fuzzy numbers is a composition of three elements, Height of Adjustment Ratio (HAR), Geometric Distance (GD) and Shape of Adjustment Ratio (SAF). ܵሺܲ, ‫ܪ‬ሻ = ‫ ∗ ܣܴܪ‬ሺ1 − ‫ܦܩ‬ሻ ÷ ܵ‫ܨܣ‬

(1)

HAR is used to assess the degree of difference in height between two generalized Fuzzy numbers. ௪௔ ௪௕

‫√ = ܴܣܪ‬ሺmin ሺ௪௕ , ௪௔ሻሻ

(2)

The GD is used to measure the geometric distance between two generalized Fuzzy numbers including the distance between their x-axis centroid. ଵ

‫ = ܦܩ‬ହ ∗ ൫ሺܽ1 − ܾ1ሻ + ሺܽ2 − ܾ2ሻ + ሺܽ3 − ܾ3ሻ + ሺܽ4 − ܾ4ሻ + ሺ‫ ܽݔ‬− ‫ܾݔ‬ሻ൯

(3)

SAF is used to adjust the geometric distance, for example, if the two Fuzzy numbers have different shapes. ܵ‫ = ܨܣ‬1 + ܾܽ‫ ܽݕ(ݏ‬− ‫( )ܾݕ‬4) Substitute all these values in equation 1, will result the similarity distance between one attribute. Similarly we can calculate similarity distance for all the attributes. Let it is S1, S2, S3, S4….S (no. of attributes) Collectively it will give the similarity distance between two projects. S= S1 + S2 + S3 + S4 +......S (no. of attributes) Similarly, we will calculate similarity distance between our planned project and each of historical project to get the most similar project.

62

Computer Science & Information Technology (CS & IT)

Ranking the Closest Project After calculating the aggregated similarity measure between the planned project and each individual historical project, the similarity results are sorted according to their value. We choose the project which has highest similarity because it has highest opportunity to contribute in the final estimate. Let the effort of the closest project is E.

Figure 2: A framework of adjusted fuzzy analogy-based estimation Adjusting the reused effort: In most cases, using only the closest project to derive the new estimate is not sufficient [12]. It may lead to bad estimation accuracy. Therefore to adjust the reused effort generated using Fuzzy number we use genetic algorithm method. The framework of adjustment model using GA is shown in fig. 2. Here, we evaluated the potential benefits of applying GA to analogy-based software effort estimation models based on Fuzzy Numbers. GA is adopted to derive a suitable linear model from the similarity distances between pairs of projects for adjusting the reused effort. GA operators include the processes of reproduction, crossover and mutation. It can be thought of as an evolutionary process where in the fitness of each chromosome is calculated in each generation. These iterative processes optimize the coefficients of this linear equation and the combination of the best linear equation, and the combination of best linear equation with the Estimation by Analogy using Fuzzy[13] Number is the software effort estimation model For n software projects, e is the adjustment value for the reused effort in terms of the expected error between the reused effort and the actual effort of the project being estimated:

Computer Science & Information Technology (CS & IT)

63

Among m effort drivers, a general form of one such linear equation is ݁ = ‫݅ܵ ∗ ݅ܤ‬ Here “Bi” is the coefficient of effort driver i. Similarly we can calculate e for all effort drivers and summations of all give us the linear equation for adjustment. GA explores a linear adjustment[6,8] equation using GATOOL. Among the n projects, the coefficients “Bi” of this linear equation are treated as variables to be examined and the MRE is the value to be minimized. The number of effort drivers for a software project is the number of coefficients to be examined for GA. Initial Population: The coefficients of linear equation are encoded in a chromosome and groups of chromosomes make up a population. Initial population enables us to specify an initial population for the genetic algorithm. Initial range specifies lower and upper bounds for the entries of the vectors in the initial population. We use the Default value of initial population and the initial range is set to [0,2]. Selection: The selection function chooses parents for the next generation based on their scaled values from the fitness scaling function. We use Tournament Selection function which selects each parent by choosing individuals at random, the number of which you can specify by Tournament size, and then choosing the best individual out of that set to be a parent. Reproduction: Reproduction options determine how the genetic algorithm creates children at each new generation. We prefer Elite count method for reproduction. Elite count specifies the number of individuals that are guaranteed to survive to the next generation. Crossover: Crossover combines two individuals, or parents, to form a new individual, or child, for the next generation. To get accurate result, we choose Single point Crossover function. Single point chooses a random integer n between 1 and Number of variables, and selects the vector entries numbered less than or equal to n from the first parent, selects genes numbered greater than n from the second parent, and concatenates these entries to form the child. Stopping Criteria: Stopping criteria determine the causes to terminate algorithm. Generations specifies the maximum number of iterations the genetic algorithm performs. We choose 100 generation to terminate the algorithm. Time limit specifies the maximum time in seconds the genetic algorithm runs before stopping. Fitness limit specifies the best fitness value is less than or equal to the value of Fitness limit, the algorithm stops. We use the default value for fitness limit. Fitness Function: Fitness Function: In our fitness function, we calculate adjusted effort by putting the value of coefficient of effort drivers. ‫ ܧ = ݔܧ‬+ ݁ Once we get the adjusted effort, we can calculate the Magnitude of Relative Error (MRE). ‫ = ܧܴܯ‬ሺ‫ ܽܧ‬− ‫ݔܧ‬ሻ/‫ܽܧ‬ Where Ea is the actual effort value of the planned project.

64

Computer Science & Information Technology (CS & IT)

Using the MRE as a fitness function to which we want to minimize, the coefficients of linear equation are examined. Finally we get the best linear equation (e) to adjust the Effort calculated by Estimation by Analogy using Fuzzy numbers method.

4. EXPERIMENTAL STUDY To validate the proposed model, we use the COCOMO81 dataset. Cocomo81 dataset describe 63 projects and 17 attributes that define software projects. We left the Line of code (LOC) attribute in our experiment, since it is not available in early stage of software development. Each attribute is measured on the scale of “very low”, “low”, “Nominal”, “High”, “Very High” and “High”. Once deciding the attributes of project, we construct the fuzzy numbers of all above attributes with the help of genfis3 function (MATLAB(R2011a))[17], and calculated the similarity distances with all other historical project using equations explained in chapter 4 and selected the most similar project. Using the effort of most similar project and calculated similarity distances between each attribute, we find the coefficients of all effort drivers in OPTIMTOOL (MATLAB (R2011a)) [17] that result the significant less error. There is no proof on software cost estimation models to perform consistently accurate within 25. Applying genetic algorithm [14] we obtained the value of coefficients of effort drivers (shown in Table 2) that aim to minimize the MRE[7] of projects. For some of the effort drivers the coefficient value is negligible. It may be conclude that these drivers does not play important role in the adjustment of effort. For the proposed adjusted analogy-based estimations, Fig. 3 shows the improvement of MRE based on analogy-based estimations without adjustment on effort. Fig. 4 compares the MMRE of different models with the proposed model and observe that analogy based estimation using Fuzzy numbers can be further improve after adjusting its effort using GA.

Figure 3: MRE comparison between Without adjusted EbA and Proposed model

Computer Science & Information Technology (CS & IT)

65

5. CONCLUSION AND FUTURE WORK Delivering accurate software estimation has been a research challenge for a long time, where none of the existing estimation models has proved to consistently deliver accurate estimate. Expert based estimation is still the widely used model in industry which is based on past experience. Thus, these estimates are subjective and require high levels of expensive expertise. In this model, we consider two main problems associated with Estimation by Analogy. The first one is uncertain data in the early stage of software effort estimation and second one is that the most similar project still has similarity distance with the project being estimated in most of the cases.

Figure 4: MMRE results of different models Cost Driver ACAP AEXP CPLX DATA LEXP MODP PCAP RELY SCED STOR TIME TOOL TURN VEXP VIRT

coefficients of drivers(Bi) 1.235 1.074 0.7286 0.728 5.71 0.12 0.86 0.63 6.21 1.19 0.684 0.6

Table 2: Attribute Coefficients value for COCOMO dataset To solve the problem of uncertain, missing and vague values of attributes related to project, we used the concept of fuzzy numbers. The fuzzy model is employed in Estimation by Analogy to reduce uncertainty and improving the way to handle both numerical and categorical data in similarity measurement. Converting each attribute (real number) in to fuzzy number solve the problem of ambiguous data. After conversion, calculating the similarity distance of the target project with all historical projects results the most similar project. But the most similar project still has similarity distance with the project being estimated. To adjust the effort, we use the

66

Computer Science & Information Technology (CS & IT)

concept of Genetic algorithm and obtain a linear equation in terms of attributes associated with projects and coefficients of scale factors. The value of coefficients is obtained using GATOOL under the condition of low value of Magnitude of Relative Error. Combining the concept of Fuzzy logic and Genetic algorithm in a model to estimate the software effort improve the accuracy of estimation techniques. The experiments conducted applying this model to COCOMO dataset showed significant improvement under various accuracy measures. The coefficients () will not be same for all datasets. Therefore, to find the best value of for each dataset is the challenge for this model. Another limitation results from using fuzzy model that needs sufficient number of observations in order to construct fuzzy sets. In future, we will use feature subset selection technique to focus on important attributes that affects the effort and extends the work in such a way so that it can work for any dataset.

REFERENCES [1] [2] [3] [4]

[5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]

Fiona Walkerden, Ross Jeffery, “An empirical Study of Analogy-based Software Effort Estimation”, Kluwer Academic Publishers, Boston, 1999. L. Angelis, I. Stamelos, “A Simulation Tool for Efficient Analogy Based Cost Estimation”, Kluwer Academic Publishers, 2000. Practical Software Engineering , http://ksi.cpsc.ucalgary.ca/courses/45196/mildred/451/CostEffort.html Prasad Reddy, Sudha K,. R Rama Sree P, “Application of Fuzzy Logic Approach to Software Effort Estimation”, International Journal of Advanced Computer Science and Applications, Vol. 2, o. 5, 2011. B.W. Boehm, “Software Engineering Economics”, Prentice-Hall, Englewood Cliffs, NJ,1981. C.J. Burgess, M. Lefley, “Can genetic programming improve software effort estimation? A comparative evaluation”, Information and Software Technology 43, pp. 863-873, 2001. T. Foss, E. Stensrud, B. Kitchenham, I. Myrtveit, “A simulation study of the model evaluation criterion MMRE”, IEEE Transactions on Software Engineering 29 (11), pp.985-995, 2003. S.J. Huang, N.H. Chiu, “Optimization of analogy weights by genetic algorithm for software effort estimation”, Publishing in Information and Software Technology (in press). Mohammad Azzeh, Daniel Neagu, Peter I.Cowling, “Analogy-based Software effort estimation using Fuzzy numbers”, The journal of Systems and Software 84, 2010. Nikolaos Mittas,Marinos Athanasiades, Lefteris Angelis, “Improving analogy-based software cost estimation by a resampling method”, Information and Software Technology, 2007. M. Jorgenson, “A review of studies on expert estimation of software development effort”, The Journal of Systems and Software 70, pp. 37-60, 2004. A. Idri, A. Abran, T. Khoshgoftaa, “Fuzzy analogy: a new approach for software effort estimation”, 11th International Workshop in Software Measurements, 2001. M. Jorgensen, “Realim in assessment of effort estimation uncertainty: it matter how you ask.”, IEEE Transaction on software Engineering 30, 2004. K.K. Shukla, “Neuro-genetic prediction of software development effort”, Information and Software Technology 42, 2000. J. Holland, “Adaptation in Natural and Artificial Systems”, University of Michigan Press, Ann Arbor, MI, 1975. LC Brian and I Wieczorek,Resource modeling in software engineering, in Encyclopedia of Software Enginerring, 2001. Introduction of Matlab, http://www.mathworks.in/products/matlab/ K.S. Tang, K.F.Man, S.Kwong and Q. He, “Genetic Algorithms and their Applications”, IEEE SIGNAL PROCESSING MAGAZINE, November 1996.

DESIGN OF A RULE BASED HINDI LEMMATIZER Snigdha Paul, Mini Tandon, Nisheeth Joshi and Iti Mathur Apaji Institute, Banasthali University, Rajasthan, India [email protected], [email protected], [email protected],[email protected]

ABSTRACT Stemming is the process of clipping off the affixes from the input word to obtain the respective root word, but it is not necessary that stemming provide us the genuine and meaningful root word. To overcome this problem we come up with a solution- Lemmatizer. It is the process by which we crave out the lemma from the given word and can also add additional rules to make the clipped word a proper stem. In this paper we have created an inflectional lemmatizer which generates the rules for extracting the suffixes and also added rules for generating a proper meaningful root word.

KEYWORDS Stemming, Lemmatization, Lemma, Hindi, Over-stemming and Under-stemming.

1. INTRODUCTION In today’s era we live in a computerized world where almost everything is done by computers. With this advent we have a lot of data to store and retrieve. This stored data can be accessed for retrieving information from anywhere. This is a very good application of Natural Language Processing. Since language is so vast and has its own grammar structure, it is very necessary to study the word structure. For example – ‘indicate’ can be written as indicative, indication, indicated, indicator, indicatable. Here we need some mechanism to drop all the word forms to a common base form which is called as a root word or stem. This is done by stemming or lemmatization. Stemming is the process of reducing the words to a common stem by clipping off the unnecessary morphemes. These morphemes are called as suffixes. This suffix stripping is done by generating various rules. For example – ‘introduce’ has many word forms like introduction, introducing, introduced. After stemming, all the forms are contracted to the word introduce- which is not a proper root word. This problem is resolved by lemmatizer where the inflectional ending is detached and the base or dictionary form of the word is generated. If we find the root word of the above example then we get it as ‘introduce’ but not ‘introduc’. Thus in stemming we have two kinds of problem – Under-stemming and Over-stemming. Understemming is a case which occurs when the words need to be grouped together, but are not actually grouped. It occurs mostly in case of semantically same words. For example – in Hindi we have a Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 67–74, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3408

68

Computer Science & Information Technology (CS & IT)

word गलतय which when stemmed gives गलतय, but it is not a proper root. Over-stemming is a case which occurs when the words need not to be grouped together, but are actually grouped. It occurs mainly in case of semantically distant words. For example – the Hindi word चहे ता when stemmed gives us चहे which is again not a proper root word. Thus we can say that stemmer does not provide us the contextual knowledge which is provided by the lemmatizer. Since English and other European languages are not highly inflected therefore there have been many stemmers and lemmatizers developed for them, but if we talk about Indian languages, they are highly inflected. Lemmatizer for such languages is rarely found. In this paper we are emphasizing on Hindi language. Hindi is the official language of India. It is most widely spoken in almost all the parts of the country. So, in order to preserve the language and its root words we have developed a lemmatizer which contains various rules. The study however does not include all the rules but can be taken as a prototype for extending the functionality of the system. We have made an attempt to make an automated lemmatizer using the rules. This system can be efficiently used for retrieving the information. The paper is organized as follows: the first section described the introduction and problems of stemming. The next section discusses the literature work done in this research area. Further we discuss the linguistic background of Hindi. Then we propose our work in which we have shown the methodology and approach that we have used. Further we have shown the processing technique in which we have discussed some examples and provide some limitations of the system depending on the evaluation result. The final section concludes the study of the paper.

2. RELATED WORK A lot of research work has been done and is still going on for the development of a stemmer as well as lemmatizer. The first stemmer was developed by Julie Beth Lovins [1] in 1968. Later the stemmer was improved by Martin Porter [2] in July, 1980 for English language. The proposed algorithm is one of the most accepted methods for stemming where automatic removal of affixes is done from English words. The algorithm has been implemented as a program in BCPL. Much work has been done in developing the lemmatizer of English and other European languages. In contrast, very little work has been done for the development of lemmatization for Indian languages. A rule based approach proposed by Plisson et al. [3] is one of the most accepted lemmatizing algorithms. It is based on the word endings where the suffix should be removed or added to get the normalized form. It emphasizes on two word lemmatization algorithm which is based on ifthen rules and the ripple down approach. The work proposed by Goyal et al. [6] focuses on the development of a morphological analyzer and generator. They aimed to develop a translation system especially from Hindi to Punjabi. Nikhil K V S [8] built a Hindi derivational analyzer using a specific tool. He used supervised approach by creating a SVM classifier. Jena et al. [9] proposed a morphological analyzer for Oriya language by using the paradigm approach. They classified nouns, adjectives and finite verbs of Oriya by using various paradigm tables. Anand Kumar et al. [7] developed an automatic system for the analysis of Tamil morphology. They used various methodologies, rule based approach and sequence labeling containing the non linear relationships of morphological features from the training data in a better way.

Computer Science & Information Technology (CS & IT)

69

Chachoo et al. [5] used an extract tool named Extract v2.0 for the development of the orthographic component of Kashmiri Script. A method has been proposed by Majumder et al. [12] in which a clustering based approach is used for discovering the equivalent classes of root words. This algorithm was tested for two languages French and Bangla. A rule based approach for stemming in Hindi was proposed by Ramanathan & Rao [11]. The approach is based on stripping off suffixes by generating rules emphasizing on noun, adjective and verb inflections in Hindi. Bharti Akshar et al. [4] proposed the work on natural language processing where they gave a detailed study of morphology using paradigm approach.

3. LINGUISTIC BACKGROUND OF HINDI Morphemes play a vital role in lemmatization. This is the major way in which morphologists investigate the words. Their formation and internal structure is studied in deep. Morphology is broadly categorized into two parts: derivational morphology and inflectional morphology. Derivational morphology processes the words and form new lexemes from the existing ones. This is done by either adding or deleting affixes. For example – सजा + वट= सजावट. Here the word class is changed from adjective to noun. Similarly, in English we have words like employ + ee = employee, where the word class is changed from verb to noun. Inflectional morphology processes the words by producing various inflections without changing the word class. For example – कलम + दान = कलमदान where both कलम and कलमदान is noun/singular. The word class remains same here. The root form of the words basically comes under noun and verb classes. This knowledge lead us to trace the paradigm approach. According to Smriti Singh and Vaijayanthi M Sarma [10], Hindi noun classification system shows only the number and case for morphological analysis. Number basically includes either singular or plural. By default a word is kept singular. In Hindi we have two types of Cases – direct and oblique. Oblique words show the case as well as the number of the word. For example – लड़क – ◌ा, लड़क – ◌े, here ◌ा shows singular number whereas ◌े shows plural number. Similarly we have some gender rules. In Hindi, words ending with the suffix ◌ी are termed as feminine whereas the words that end with suffix ◌ा are termed as masculine. For example लड़का, नेता, घोड़ा, कटोरा, बचा and many more are masculine ending with ◌ा while लड़क, धोबी,पु ी, कटोर!, बचीand many more are feminine ending with ◌ी. But we have many more words that contradict this concept. For example – the word पानी (water) is masculine, although it is ending with ◌ी. Similarly the word माला (garland) is feminine even though ending with ◌ा. There are some other words from which the suffix cannot be removed. For example – let us consider the suffix ◌ा, the words "पता, माता, बचा, कटोरा, नेता, and many more does not require stemming. Such words need to be maintained as it is and should be refrained from being stemmed. So it is found that Hindi is a highly inflected language and needs a deep study of word structure and its formation.

4. PROPOSED WORK In this paper we have discussed about the creation of a Hindi lemmatizer. The approach for the creation is based on the key concept of optimization. Optimization includes both space and time,

70

Computer Science & Information Technology (CS & IT)

so our approach is based on these parameters. The lemmatizer that we discuss here mainly focuses on the time complexity problem. Typically lemmatizer is built using a rule based approach and paradigm approach. In rule based approach along with the rules, knowledgebase is created for storing the grammatical features. Knowledgebase is also created for storing the exceptional root words. That is we need some root words as it is containing the suffix. Although the knowledgebase creation requires a large amount of memory, but in respect of time it gives us the best, accurate and fast result. The reason behind this fast retrieval is that, a very short time is taken to search the input word from the knowledgebase. The study [7] shows that Tamil words have infinite set of inflections but Hindi words have finite set of inflections which are quite easy to maintain in the knowledgebase. We have restricted our knowledgebase to commonly used words which do not contain the proper nouns like the names of person and place.

4.1 SUFFIX GENERATION We have gone through various words with their suffixes and examined the morphological changes for the development of a lemmatizer. These suffixes and changes led to the development of specific rules. For example – If we take the word खराबी (defect) then we find that the word is derived by adding ◌ी suffix to the word खराब (bad) which transform noun to adjective. Similarly there are many other words with the same suffix. Some of them are shown in table 1 and 2. Table 1. Example of derived words with suffix ◌ी & ई (noun to adjective) Root Word साफ़

Derived Word सफ़ाई

ऊँचा

ऊँचाई

मोटा

मोटाई

गर!ब

गर!बी

सद(

सद)

Table 2. Some more suffixes are as follows Root Word गाड़ी

Derived Word गा*ड़य

Suffix य

मीठा

,मठाई



प"व

प"व ता

ता

जाद ू

जादग ू र

गर

रोशन

रोशनदान

दान

चढ़

चढ़ाई

◌ाई

Hindi words are large in number and for this reason the extraction of suffixes had a large list. Since the work has been done manually therefore this phase was quite time consuming. The

Computer Science & Information Technology (CS & IT)

71

suffixes were generated by processing a corpus of 40,000 sentences from which 75 lakh words were manually stemmed among them 124 suffixes were derived.

4.2 RULES GENERATION After generating the suffix list we have developed rules. We have created 124 rules which are framed in such a way that the suffix gets removed from the input word and if required, addition of character or ‘maatra’ takes place. For example – let us take the suffix ◌ो◌ं. Some of the words containing this suffix are shown in table 3. Table 3. Words showing the suffix ◌ो◌ं Word

Root

Rule application Extraction of Addition of character suffix

लड़क

लड़का

◌ो◌ं

सड़क

सड़क

◌ो◌ं

◌ा __

लेखक

लेखक

◌ो◌ं

__

In the above table on removing the suffix ◌ो◌ं we get their respective root word, but the word लड़क is an exception here because on removing the suffix ◌ो◌ं we need to add ◌ा to the last letter of the word to make it a genuine root word’ लड़का.’ Similarly there are many other rules for removing the suffix and if necessary addition of character may also takes place. Similarly we also have some other rules, like the rule for extracting the suffix ि◌य which is shown in table 4. Hindi has a grammar rule, according to which when the plural is removed, we need to add ◌ी to the last letter of the word. Table 4 mentions the rule for the suffix ि◌य in which we have created a general rule for removing the suffix and adding ◌ी to the word, but we have some exceptions here which include the addition of ि◌ instead of ◌ी. In the below table we have also shown an exception in the last word 2च*ड़य where the root form is 2च*ड़या. The word 2च*ड़य contains two suffixes together which are ि◌य and ◌ो◌ं. This becomes hard for the system as it finds difficulty in picking up the correct rule for the particular word. Similarly there are many more exceptions for which we have generated different rules. To overcome such problems we have built a database in which such exceptional words are kept. Although this work requires much time but for the sake of fast and accurate result this approach is applied.

72

Computer Science & Information Technology (CS & IT)

Table 4. Words showing the suffix ि◌य Word लड़3कय

Root लड़क

Rule application Extraction of suffix Addition of character ि◌य ◌ी

कहानय

कहानी

ि◌य

◌ी

क"वय

क"व

ि◌य

ि◌ (exception)

2च*ड़य

2च*ड़या

ि◌य

ि◌या (exception)

5. PROCESSING TECHNIQUE

Fig 1. Schematic diagram of the system The foremost step is to read the input word. The database contains all the root words. The input is checked in the database, if it is present in the database then the word is displayed as it is. If the word is not present in the database then it comes down to access the rules. After accessing the rules the root word is generated and displayed. The rule is followed as If (root) present in (root list) { Fetch the root from the list Display; } else if (root) not present in (root list) { If (source) ends with (suffix) {

Computer Science & Information Technology (CS & IT)

73

Substring the source Display the root; } }

6. ILLUSTRATION As an illustration we gave a set of Hindi words in order to analyze the output. Some of them are – Table 5. Stemmed Output Input

Output

2च*ड़य

2च*ड़या

लड़3कय

लड़क

भारतीयता

भारत

6तभाशाल!

6तभा

गौरवां"वत

गौरव

7. EVALUATION The system is evaluated for its accuracy where we gave 2500 words for analysis. Among these 2500 words 2227 words were evaluated correctly and 273 words were incorrect because they violated both the exceptional and general rules.

Fig. 1. Graphical representation of evaluation Our system gave 89.08% accuracy. We used the following formula to calculate the accuracy. Accuracy % = Total correct lemmas / Total words

8. CONCLUSION In this paper we have discussed the development of Hindi lemmatizer. The work focuses on rule based approach along with this paradigm approach is also used in which we have created knowledgebase containing all the Hindi root words that are commonly used in day to day life. The main aim is emphasized on time optimization problem rather than on space. Since nowadays

74

Computer Science & Information Technology (CS & IT)

space is not at all a big problem, therefore our approach aimed to optimize time and generate accurate result in a very short period. Our system gave 89.08% of accuracy.

REFERENCES [1]

Julie Beth Lovins, Development of stemming Algorithm, Mechanical Translation and Computational Linguistics, Vol. 11, No. 1, pp 22-23, 1968. [2] Martin F. Porter, An algorithm for suffix stripping, Program, Vol. 14, No. 3, pp 130-137,1980. [3] Plisson, J, Larc, N, Mladenic, D.: A Rule based approach to word lemmatization, Proceedings of the 7th International Multiconference Information Society, IS-2004, Institut Jozef Stefan, Ljubljana, pp. 83-86, 2008. [4] Bharti Akshar, Vineet Chaitanya, Rajeev Sangal, Natural Language Processing: A Paninian Perspective. Prentice-Hall of India, 1995. [5] Manzoor Ahmad Chachoo, S.M.K. Quadri. Morphological Analysis from the Raw Kashmiri Corpus Using Open Source Extract Tool, Vol. 7, No. 2, 2011. [6] Vishal Goyal, Gurpreet Singh Lehal, Hindi Morphological Analyzer and Generator, IEEE Computer Society Press, California, USA pp. 1156-1159, 2008. [7] Anand Kumar M, Dhanalakshmi V, Sonam K P, A sequence labeling approach to morphological analyzer for tamil language, International Journal on Computer Science and Engineering, Vol. 20, No. 06, 2010. [8] Nikhil K V S, Hindi derivational morphological analyzer, Language Technologies Research Center, IIIT Hyderabad, 2012. [9] Itisree Jena, Sriram Chaudhary, Himani Chaudhary, Dipti M. Sharma, Developing Oriya Morphological Analyzer Using Lt-toolbox, ICISIL 2011, CCIS 139, pp. 124-129, 2011. [10] Smriti Singh, Vaijayanthi M Sarma. Hindi Noun Inflection and Distributed Morphology. [11] A. Ramanathan and D.D Rao, A Light Weight Stemmer for Hindi, In Proceedings of Workshop on Computational Linguistics for South Asian Languages, 10th Conference of the European Chapter of Association of Computational Linguistics, pp. 42-48, 2003. [12] Prasenjit Majumder, Mandar Mitra, Swapan k. Pauri, Gobinda Kole, Pabitra Mitra and Kalyankumar Datta, YASS: Yet Another Suffix Stripper, ACM Transactions on Information Systems, Vol.25, NO.4, pp. 18-38, 2007.

NEURAL NETWORK BASED VECTOR CONTROL OF INDUCTION MOTOR Uthra.R1, N.Kalaiarasi2 , P.Srinivas Aruntej3 1

Department of Electrical & Electronics, SRM University, Chennai, India [email protected]

2

Department of Electrical & Electronics, SRM University, Chennai, India [email protected]

3

Department of Electrical & Electronics, SRM University, Chennai, India [email protected]

ABSTRACT Stator current drift compensation of induction motor based on RBF neural network is proposed here. In vector control of induction motor decoupling of speed and rotor flux equations and their simultaneous control are used to achieve the highest efficiency and fast dynamic performance. The highest efficiency is reached when the proper flux is selected and as a result of dynamic decoupling of speed and rotor flux equations, the rotor flux can be modified to achieve the highest efficiency and make the speed be at its desired value. The precise control of these changes can also be done using radial basis function neural network (RBFNN). Once neural network gets trained then it is able to differentiate between normal and fault conditions and therefore acts in accordance to the change that could bring back the system to normal condition. Here, neural network is used to compute the appropriate set of voltage and frequency to achieve the maximum efficiency for any value of operating torque and motor speed.

KEYWORDS Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control, k-means algorithm.

1. INTRODUCTION A drive system basically consists of an electric machine, a converter, primary sensor for feedback signal, feedback signal estimator and system controller. The sensors are extremely important in a drive system or any other feedback control system because primarily all control algorithms are based on measurements. The sensor faults cause incorrect measurement of feedback signals due to malfunction in the transducers and sensor circuit elements and upsets the system performance. This paper proposes the use of Auto Associative neural network to compensate the drift problem in feedback current sensors in a vector controlled induction motor drive. Scalar control involves controlling only the magnitude of the control variables with no concern for the coupling effects between these variables. Conversely, vector or field orientated control involves adjusting the magnitude and phase alignment of the vector quantities of the motor. Scalar control, such as the Constant Volts/Hertz method when applied to an AC induction motor is relatively simple to implement but gives a sluggish response because of the inherent coupling effect due to torque and flux being functions of current and frequency. Vector control de-couples the vectors of field current and armature flux so that they may be controlled independently to Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 75–83, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3409

76

Computer Science & Information Technology (CS & IT)

provide fast transient response [1]. Accurate position control is not possible with scalar control since this requires instantaneous control of the torque. This requires either, instantaneous change to the stator currents, which is not possible due to energy storage effects, or instantaneous change to the rotor current which in the case of scalar control is controlled indirectly via the stator currents. Similarly, whilst scalar control may provide acceptable steady state speed control, precise and responsive speed control due to load changes requires accurate and responsive torque control. The vector approach overcomes the sluggish transient response when using scalar control of AC motors [7].

2. VECTOR CONTROL Vector control of an Induction motor is also called Field orientation control. In a typical AC induction motor, three alternating currents electrically displaced by 120◦ are applied to three stationary stator coils of the motor. The resulting flux from the stator induces alternating currents in the ‘squirrel cage’ conductors of the rotor to create its own field these fields interact to create torque. Unlike a DC machine the rotor currents in an AC induction motor cannot be controlled directly from an external source, but are derived from the interaction between the stator field and the resultant currents induced in the rotor conductors [13].

Figure 1. Vector control of Induction motor Vector control of an AC induction motor is analogous to the control of a separately excited DC motor [7]. In a DC motor the field flux ψf produced by the field current If is perpendicular to the armature flux ψa produced by the armature current Ia. These fields are decoupled and stationary with respect to each other. Therefore when the armature current is controlled to control torque the field flux remains unaffected enabling a fast transient response. In a vector-controlled drive, the machine stator current vector Is has two components: ids or flux component and iqs or torque component, as shown in the phasor diagram. These current components are to be controlled independently, as in a dc machine, to control the flux and torque, respectively. The ids is oriented in the direction of ψr, and iqs is oriented orthogonally to it. The controller should make the two inverse transformations, where the unit vector cosθe and sinθe in the controller should ensure correct alignment of ids in the direction of ψr and iqs at 90◦ ahead of it. Obviously, the unit vector is the key element for vector control [8]. There are two methods of vector control based on the derivation of the unit vector. These are the direct (or feedback) method and indirect (or feed forward) method. For closed-loop flux control in constant-torque and field weakening regions, ids can be controlled within the programmed flux control loop so that the inverter always operates in PWM mode [1].

Computer Science & Information Technology (CS & IT)

77

3. DRIVE SYSTEM It has been established that iq and id of the rotating reference frame must be controlled to provide good dynamic control of the induction motor. Using closed loop control ordered quantities of iq and id are compared with the actual values measured from the motor. In order to obtain the motor values, transformations on the measured 3 phase stator currents into the direct and quadrature components of the rotating reference frame are performed. The resulting error terms are then transformed back to 3 phase quantities and applied to the motor.

Figure 2. Block diagram of Vector control of Induction motor The power circuit (Fig.2) consists of a DC source (battery or rectifier DC), PWM IGBT inverter and cage type induction motor. The signal processing blocks include machine phase current sensors, signals computation and controller, and the PWM algorithm [3]. The command torque (Te*) and stator flux (ψs*) generate the active (iqs*) and reactive (ids*) current commands within the block which are then translated to generate input for PWM controller. The machine terminal voltages and currents are sensed and converted into stationery frame ds – qs signals. These signals are then converted to rotating frame. The synchronous control loops then generate Vqs* and Vds* signals. Vqs* and Vds* signals are then translated using inverse Clarke transformation and fed as input to PWM controller. The PWM controller receives signals at the input and translates to gate drive signals for the IGBT inverter [8].

4. RADIAL BASIS FUNCTION NEURAL NETWORK RBF is a Multilayer Perceptron Network (MLP) which is based on unit computing of non-linear function of scalar product of input & output. For an auto associative net the training input and target output vectors are identical. A stored vector can be retrieved from distorted or partial input if the input is sufficiently similar to it. Auto-associative neural network is basically a feed forward, fully-connected, multilayer perceptron (MLP) type neural network. The general RBF network consists of 3 layers, Input layer, Hidden layer, Output layer.

78

Computer Science & Information Technology (CS & IT)

Figure 3. Architecture of RBFNN No. of neurons in input layer = 3 No. of neurons in hidden layer = 4 (obtained by using k-means algorithm). No. of neurons in output layer = 3 The input layer is made up of source nodes that connect the network to its environment. The second layer, the only hidden layer in the network applies a non liner transformation from the input space to the hidden space. The output layer is linear, supplying the response of the network to the signal applied to the input layer.

4.1. Algorithm 1.

First the input is given to the input layer.

2.

The network is simulated and initialized. For deciding the number of neurons in hidden layer k-means algorithm is used. Iterate until the network converges. Calculate the error between the network’s o/p & the target o/p. if the error isn't in the desired limit go to step 3 else go to step 5. Observe the performance of the network with the training and the test data. Re-train if necessary.

3. 4. 5.

4.1. K - means Algorithm

1. 2. 3. 4.

Choose initial centres c1,...,ck. While the clusters are changing, repeat step 3 to 4. Assign data point pi to the cluster whose centre C is closest. This can be done by using Euclidean distance. Update the cluster centres given by :C= (1/n)∑ P. n = number of points in C

Computer Science & Information Technology (CS & IT)

79

Figure 4. Flowchart of RBF neural network

5. SIMULATION STUDY To implement a RBF neural network for drift compensation of stator current, multiplicative errors were implicated in the stator part of the induction motor. Stator currents were observed for different values of errors implemented in ia, ib, ic, iaib, ibic & icia ranging from 0.1 to 1 and at voltages ranging from 210 to 510 to obtain the training data for neural network. The corresponding stator currents are shown in Figure 5 and 6. By introducing different errors in Matlab Simulink, 960 sets of training data were obtained. Using this data the RBF neural network with the implementation of k-means algorithm was trained and tested.

80

Computer Science & Information Technology (CS & IT)

Figure. 5. Stator currents (ia,ib,ic)

Figure.6. Stator currents with error factor 0.1 in ia

6. RESULTS Vector control of Induction motor was simulated using Matlab Simulink and three stator currents ia,ib,ic were noted. Multiplicative errors were implicated in the stator currents to obtain the training data for neural network. The RBF Neural network with the implementation of k-means algorithm was trained and tested. Every time numbers of clusters and radius in the k-means algorithm were varied and the result of the k-means algorithm which gives the clusters center and the number of training data in each cluster were implemented in the RBFNN. Maximum absolute error, minimum absolute error (target- output) and root mean square error (RMSE) at different radius and cluster in the network were found to reduce. Figure 7 shows that the minimum RMSE is at 125 clusters. So for 960 sets of training data maximum absolute error was 2.006, minimum absolute error was 0.00022339 and the RMSE was 0.34525 at 125 clusters and radius 5. The satisfactory output was obtained for the layer with neurons 3 – 125 – 3 (Input–Hidden–Output). RBF neural network with implementation of k-means algorithm was trained with 960 sets of data and satisfactory output was obtained.

Computer Science & Information Technology (CS & IT)

81

Figure. 7. Root Mean Square Error (RMSE) Vs cluster. Table 1 Tested data with trained RBF Neural Network

Input Stator Current

Target Stator Current

Output Stator Current

Ia

Ib

Ic

Ia

Ib

Ic

Ia

Ib

Ic

1.5

15

15

15

15

15

15.002

15.002

15.002

15

13

15

15

15

15

14.994

14.994

14.994

15

15

4.5

15

15

15

15.007

15.007

15.007

6

17

17

17

17

17

17.007

17.007

17.007

17

3.5

17

17

17

17

16.993

16.993

16.993

17

17

8

17

17

17

16.998

16.998

16.998

82

Computer Science & Information Technology (CS & IT)

RBFNN was tested and the output shown in Table1 was obtained. It can be observed that the drift in stator current due to various faults in all the three phases are compensated by the neural network validating that trained neural network restores back the closest possible original value of stator current achieving the compensation in the stator current of the Induction motor.

7. CONCLUSION Vector control of Induction motor using Radial basis function neural network has been implemented in this paper. The neural network was trained with 960 sets of input data and tested to obtain a satisfactory output. The result of the K-MEANS algorithm was implemented in the RBFNN and hence the stator currents were restored to its original values. In this paper, supervised learning algorithm has been adopted to train the neural network. Artificial neural network can be implemented by either using supervised network or fixed weight network or both the types of network. By implementing the above said networks, performance of Induction motor can be improved as any change in the stator current has been compensated by the trained neural network and henceforth its performance.

REFERENCES [1] [2] [3] [4]

[5]

[6] [7] [8] [9] [10]

[11] [12] [13]

A.K.Sharma,R.A.Gupta, Laxmi Srivastava.: Performance of ANN based indirect vector control induction motor drive, Journal of theoritical and applied Information technology. IEEE trans 2007. M.H. Jokar, B. Abdi, M. Ardebili.: Vector Control of Induction Motors Using Radial Basis Function Neural Network. (2007 IEEE trans.) L.Galotto, J.O.P. Pinto, B. Ozpineci, L.C.Leite, L.E. Borges da silva,: Sensor compensation in motor drives using Kernel Regressio., IEEE International Electric Machines and drives conference,2007 L. Galotto, Bimal. K. Bose, L.C. Leite, J.O.P. Pinto, L.E. Borges da silva, Germano Lambert-Torres.: Auto-Associative Neural Network based sensor drift compensation in Indirect controlled drive system. IEEE Industrial Electronics society,2007. Kamel Baddari, Tahar Aifa, Noureddine Djarfour, Jalal Ferahtia.:Application of Radial Basis Function Artificial Neural Network to seismic data inversion. Science Direct Computers & Geoscience 35,2009(2338-2344). A. El-Antably, L. Xiaogang and R. Martin.:System simulation of fault conditions in the components of the electric drive system. IEEE journal 1993. N. Reitere, D. Roye and P. Mannevy.:Vector based investigation of induction motor drive under fault operations. IEEE 1997 Kramer. M .A.:Auto-associative Neural Networks. AIChE Journal, Vol.16 X.Xu, R.N.De Donker and D.W.Novotny.: A stator flux oriented induction machine drive. IEEE 1998 J.O.P.Pinto, B.K.Bose, L.E.Borges.: A stator flux oriented vector controlled induction motor drive with space-vector PWM and flux vector synthesis by neural networks. IEEE trans. on Industry Applications,Vol.37,No.5, 2001 J.O.P.Pinto, B.K.Bose, L.E.Borges, and M.P.Kazmierkowski.: A neural network based space vector PWM controller for voltage fed induction motor drive.IEEE trans. 2000. B.K.Bose,Ed.,Power Electronics and variable frequency drives, IEEE Press, New York, 1996. B.K.Bose., Modern Power Electronics and AC Drives, Prentice Hall, Upper Saddle River, NJ,2002

Computer Science & Information Technology (CS & IT)

83

AUTHORS Uthra.R completed her graduation in Electrical & Electronics from Madras University in 2002 and Masters in Power Electronics & Drives from SRM University in 2010. Her area of interest is artificial intelligence in power Electronics & Drives. She is currently working as Assistant Professor in SRM University.

N.Kalaiarasi received the Bachelor of Engineering in Electronics and Communication Engineering from Periyar University in the year 2002 and Master of Engineering in Power Electronics and Drives from college of Engineering, Anna University in the year 2004. She is currently doing Research in the area of solar energy. She is currently working as Assistant professor (Sr.G) in the Department of Electrical and Electronics Engineering, SRM University, Chennai, India. Her area of interest includes Power Electronics, Digital Signal Processing, and Fuzzy Logic applications in Drives, solar energy.

Srinivas Arun Tej P received the Bachelor of Engineering in Electrical and Electronics Engineering from Jawaharlal Nehru Technological University in the year 2011 and Master of Engineering in Power Electronics and Drives from SRM University in the year 2013.

ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING Pravesh Kumar Singh1, Mohd Shahid Husain2 1

M.Tech, Department of Computer Science and Engineering, Integral University, Lucknow, India [email protected]

2

Assistant Professor, Department of Computer Science and Engineering, Integral University, Lucknow, India [email protected]

ABSTRACT Although opinion mining is in a nascent stage of development but still the ground is set for dense growth of researches in the field. One of the important activities of opinion mining is to extract opinions of people based on characteristics of the object under study. Feature extraction in opinion mining can be done by various ways like that of clustering, support vector machines etc. This paper is an attempt to appraise the various techniques of feature extraction. The first part discusses various techniques and second part makes a detailed appraisal of the major techniques used for feature extraction.

KEYWORDS Opinion Mining, Feature Extraction, Clustering, Support Vector Machines.

1. INTRODUCTION People are generally more interested in other’s opinion and when it comes to company product then it becomes even more important. So, the information gathering behaviour makes us to collect and understand other’s views. Increasing networking capabilities provide a way for surprisingly large multitude of resources that contains options like blogs, reviews etc. As a result, now businesses are trying Opinions Sentence Feature Extraction to analyse these floating opinions for competitive advanExtraction tages. Now with the burst of activities in the area of senSentence Analysis timent analysis they deal with opinions in the first class object as there is increasing interest in the systems of Sentence opinion mining. Opinion A fundamental step in opinion-mining and sentimentanalysis applications is feature extraction. The combined opinion mining procedure is illustrated in figure 1. Several methods are used for feature extraction among which, following are the important ones: 1) Naïve –Bayes Classifier (NB) 2) Support Vector Machine (SVM)

Overall Review Score Calculation

Results and Reviews

Figure 1: Opinion Mining Process

Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 85–94, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3410

86

Computer Science & Information Technology (CS & IT)

3) Multi Layer Perceptron (MLP) 4) Clustering Classifier In this paper, I have categorized the work done for feature extraction and classification in opinion mining and sentiment analysis. We have also tried to find out the performance, advantages and disadvantages of different techniques.

2. DATA SETS This section provides brief details of datasets used by us in our experiments.

2.1 Product Review Dataset The following dataset is taken from the work of blitzer and is of multi-domain characteristics. It consists of product reviews taken from amazon.com which belongs to a total of 25 categories like toys, videos, reviews etc. From the randomly selected five domains 4000 +ve and 4000-ve reviews are randomly samples.

2.2 Movie Review Dataset The second dataset is taken from the work of pang & lee (2004). It contains movie review with of the feature of 1000+ve and 1000-ve processed movie reviews. Table 1: Result of Simple n-gram Movie Review Product Reviews Unigram only 64.1 42.91 Bigram 76.15 69.62 Trigram 76.1 71.37 (uni+bi) gram 77.15 72.94 (uni+bi+tri) 80.15 78.67 gram

3. CLASSIFICATION TECHNIQUES 3.1

Naïve Bayes Classifier

This classifier is based on the probability statement that was given by Bayes. This theorem provides conditional probability of occurrence of event E1 when E2 has already occurred, the vice versa can also be calculated by following mathematical statement. P ( E1 | E 2 ) =

P ( E 2 | E1 ) P ( E1 ) E2

This basically helps in deciding the polarity of data in which opinions / reviews / arguments can be classified as positive or negative which is facilitated by collection of positive or negative examples already fed. Naïve Bayes algorithm is implemented to estimate the probability of a data to be negative or positive. The aforesaid probability is calculated by studying positive and negative examples & then calculating the frequency of each pole which is technically termed as learning. This learning is actually supervised as there is an existence of examples1. Thus, the conditional probability of a word with positive or negative meaning is calculated in view of a plethora of positive and negative examples & calculating the frequency of each of class.

Computer Science & Information Technology (CS & IT)

P(Sentiment | Sentence) =

So, P(Word| Sentiment) =

87

P(Sentiment) P(Sentence | Sentiment) P(Sentence)

Numberof word occurence in class+1 1 Numberof wordsbelongingto a class + Total nos of Word

Algorithm is shown in figure 2: +ve Sentence

Classifier Classifier

Training Set −ve Sentence

Classifier Sentence Review Book Review Figure 2

Algorithm has following steps S1: Initialize P(positive) ← num − popozitii (positive)/ num_total_propozitii S2: Initialize P(negative) ← num − popozitii (negative) / num_total_propozitii S3: Convert sentences into words for each class of {positive, negative}: for each word in {phrase} P(word | class) < num_apartii (word | class) 1 | num_cuv (class) + num_total_cuvinte P (class) ←P (class) * P (word | class) Returns max {P(pos), P(neg)}

3.1.1. Evaluation of Algorithm The measures used for algorithm evaluation are:  Accuracy  Precision  Recall  Relevance Contingency table for analysis of algorithm: Detected Opinions Undetected Opinions Now, Precision = Accuracy = 1

Relevant True Positive (tp) False Negative (fn)

Irrelevant False Positive (fp) True Negative (tn)

tp tp + fp

2 * Pr ecision * Re call tp + tn tp ; Recall = ,F = tp + tn + fp + fn Pr ecision + Re call tp + fn

The concept is to actually a fact that each & every word in a label is already referred in learning set.

88

Computer Science & Information Technology (CS & IT)

3.1.2. Accuracy [1] Ion SMEUREANU, Cristian BUCUR, training the naïve gauss algorithm on 5000 sentences and get 0.79939209726444 accuracy where no of groups (n) is 2.

3.1.3. Advantages of Naïve Bayes Classification Methods 1. Model is easy to interpret 2. Efficient computation.

3.1.4. Disadvantage of Naïve Bayes Classification Methods Assumptions of attributes being independent, which may not be necessarily valid.

3.2

Support Vector Machine (SVM)

The basic goal of support vector machine is to search a decision boundary between two classes that is excellently far away from any point in the training data2. SVM develops a hyper planes or a set of hyper planes in infinite dimension space. This distance from decision surface to closest data point determines the margin of classifier. So the hyper planes act as decision surface which act as criteria to decide the distance of any data point from it. The margin of classifier is calculated by the distance from the closest data point. This successfully creates a classification but a slight error will not cause a misclassification. φ

Separating Hyperplane Input Space

Feature Space

Figure 3: Principle of Support Vector Machine

For a training data set D, a set of n points:

{

}

D = (x i , c i ) x i ε R p , c i ε {¬1,1} i =1 n

.......(1)

Where, xi is a p-dimensional real vector. Find the maximum-margin hyper plane i.e. splits the points having ci = 1 from those having ci = -1. Any hyperplane can be written as the set of points satisfying: w • x - b =1

........(2)

Finding a maximum margin hyperplane, reduces to finding the pair w and b, such that the distance between the hyperplanes is maximal while still separating the data. These hyperplanes (fig. 1) are described by: w • x - b =1 and w • x - b = - 1

The distance between two hyperplanes is

b and therefore w needs to be minimized. Or we w

can say that minimize w in w, b subject to ci (w.xi - b) ≥ 1 for any i = 1, … , n. Using Lagranges multipliers (αi) this optimization problem can be expressed as:

Computer Science & Information Technology (CS & IT)

min

max

w, b

α

{

89

n 1 2 w - ∑α i [c i ( w.x i - b) -1] } ..... (3) 2 2 i =1

3.2.1. Extensions of SVM To make SVM more robust and also more adaptable to real world problems, it has some extensions, some of which include following: 1. Soft Margin Classification For very high dimensional problems, common in text classification, sometimes, data are linearly separable. For multidimensional problems like in classification of text, data are linearly separable sometimes. But in most cases, the opinion solution is the one that classifies most of the data and ignore some outliers or noisy data. If the training set D cannot be separated clearly then the solution is to have fat decision classifiers and make some mistake. Mathematically, a stack variable ξi are introduced that are not equal to zero which allow xi to not meet the margin requirements with a cost i.e., proportional to ξ. 2. Non-linear Classification The basic linear SVM was given by Vapnik (1963) later on Bernhard Boser, Isabelle Guyon and Vapnik in 1992 pavd a way for non-linear classifiers by using kernel to max. margin hyper planes. The only difference from th kernel trick given by Aizerman is that every dot product is replaced by non-linear kernel function. The effectiveness of SVM in this case lies in the selection of the kernel and soft margin parameters. 3. Multiclass SVM Generally SVM is applicable for two class tasks. But multiclass problems can be deal with multiclass SVM. In this case labels are designed to instances which are drawn from a finite set of various elements. These binary classifiers can be built by two classifiers like by either distinguish one versus all labels or between every pair of classes one versus one. 3.2.2. Accuracy Usenet reviews were classified by pang by using numerical ratings which were accompanied as basic truth. Various learning methods are used but unigrams gave best outputs in a presence based frequency model run by SVM. The accuracy undergone is the process was 82.9%. 3.2.3. Advantages of Support Vector Machine Method 1. Very good performance on experimental results 2. Low dependency on data set dimensionality. 3.2.4. Disadvantages of Support Vector Machine Method 1. Categorical or missing values need to be pre-processed. 2. Difficult interpretation of resulting model.

2

Possibly discounting some points as outliers or noise.

90

Computer Science & Information Technology (CS & IT)

3.3 Multi-Layer Perceptron (MLP) MLP is a neural network which is feed forward with one or more layers between input and output. Feed forward implies that, data flows in one direction i.e., from input layer to output layer (i.e., in forward direction). This ANN which multilayer perceptron starts with input layer where each node or neuron means a predicator variable. Input neurons are connected with each neuron in hidden layers. The neurons in hidden layer are in turn connected to neuron in other hidden layers. The output layer is made up of one neuron in case of binary prediction or more than one neuron in case of non-binary prediction. Such arrangement makes a streamlined flow of information from input layer to output layer. MLP technique is quite popular owing to the fact that it can act as universal function approximator. A “back propagation” network has at least one hidden layer with many non-linear units that can learn any function or relationship between group of input variable whether discrete and for continuous and output variable whether discrete and for continuous. This makes the technique of MLP quite general, flexible ad non-linear tools. When output layers is to be classified that has total number of nodes as total number of classes and the node having highest value then it gives the output i.e., estimate of a class for which an input is made. If there is a special case of two classes than, generally there is a node in output layer and classification is carried between two classes and is done by applying cut off point to node value. An advantages of this technique, compared to classical modelling techniques, is that it does not impose any sort of restriction with respect to the starting data (type of functional relationship between variables), neither does it usually start from specific assumptions (like the type of distribution the data follow). Another virtue of the technique lies in its capacity to estimate good models even despite the existence of noise in the information analyzed, as occurs when there is a presence of omitted values or outlier values in the distribution of the variables. Hence, it is a robust technique when dealing with problems of noise in the information presented; however, this does not mean that the cleaning criteria of the data matrix should be relaxed. 3.3.1. Accuracy Ludmila I. Kuncheva, Member, IEEE on health care data calculated accuracy of Multilayer perceptron (MLP) as 84.25–89.50%.

3.3.2. Advantages of MLP 1) Capable of acting as a universal function approximator. 2) Capability to learn almost any relationship between input and output variables.

3.3.3. Disadvantages of MLP 1) Flexibility lies in the need to have sufficient training data and that it requires more time for its execution than other techniques. 2) It is somewhat considered as complex “black box”.

3.4

Clustering Classifier

To identifying the prominent features of human and objects and recognizing them with a type one can require the object clustering. Basically clustering is unsupervised learning technique.

Computer Science & Information Technology (CS & IT)

91

The objective of clustering is to determine a fresh or different set of classes or categories, the new groups are of concern in themselves, and their valuation is intrinsic. In this method, data objects or instances groups into subset in such a method that similar instances are grouped together and various different instances belong to the different groups. Clustering is an unsupervised learning task, so no class values representing a former combination of the data instances are given (situation of supervised learning).

Figure 4

Clustering basically assembles data objects or instances into subset in such a method that similar objects are assembled together, while different objects belong to different groups. The objects are thereby prepared or organized into efficient representations that characterize the population being sampled. Clustering organization is denoted as a set of subsets C = C1 . . . Ck of S, such that: S=

U

k i =1

Ci and Ci ∩ C j = φ for i ≠ j . Therefore, any object in S related to exactly one and only one

subset. For example, consider the figure 4 where data set has three normal clusters. Now consider the some real-life examples for illustrating clustering: Example 1: Consider the people having similar size together to make small and large shirts. 1. Tailor-made for each person: expensive 2. One-size-fits-all: does not fit all. Example 2: In advertising, segment consumers according to their similarities: To do targeted advertising. Example 3: To create a topic hierarchy, we can take a group of text and organize those texts according to their content matches. There are two main types of measures used to estimate this relation: distance measures and similarity measures. Basically following are two kinds of measures used to guesstimate this relation 1. Distance measures and 2. Similarity measures Distance Measures To conclude the similarity and difference between the pair of instances, many clustering approaches usage the distance measures. It is convenient to represent the distance between two instances let say xi and xj as: d (xi,xj). A valid distance measure should be symmetric and gains its minimum value (usually zero) in case of identical vectors. Distance measures method is known as metric distance measure if follow the following properties:

92

Computer Science & Information Technology (CS & IT)

1. Triangle inequality d ( x i , x k ) 2. d ( x i , x j ) = 0

⇒x = x i

≤ d(x , x ) + d(x , x

∀x , x , x ∈S i

j

i

j

j

j

k

)

k

∀x , x ∈S i

j

There are variations in distance measures depending upon the attribute in question. 3.4.1. Clustering Methods A number of clustering algorithms are getting popular. The basic reason of a number of clustering methods is that “cluster” is not accurately defined (Estivill-Castro, 2000). As a result many clustering methods have been developed, using a different induction principle. Farley and Raftery (1998) gave a classification of clustering methods into two main groups: hierarchical and partitioning methods. Han and Kamber (2001) gave a different categorization: density-based methods, model-based clustering and gridbased methods. A totally different categorization based on the induction principle is given by (Estivill-Castro, 2000). 1. Hierarchical Methods According to this method clusters are created by recursive partitioning of the instances in either a top-down or bottom-up way. 2. Partitioning Methods Here, starting from the first (starting) partition, instances are rearranged by changing the position of instances from one cluster to another cluster. The basic assumption is that the number of clusters will be set by the user before. In order to get global optimality in partitioned-based clustering, an exhaustive enumeration process of all possible partitions is done. 3. Density-based Methods The basis of this method is probability. It suggests that the instances that belong to each cluster are taken from a specific probability distribution. The entire distribution of the data is supposed to be a combination of numerous disseminations. The objective of these methods is to identify the clusters and their distribution parameters. This particular method is designed in order to discover clusters of arbitrary shape which are not necessarily convex. 4. Grid-based Methods In grid-based method all the operations for clustering are performed in a grid structure and for performing in the grid structure all the available space is divided into a fixed number of cells. The basic main advantage of this method is its speed (Han and Kamber, 2001). 5. Soft-computing Methods This includes techniques like that of neural networks. 3.4.2. Evaluation Criteria Measures for Clustering Technique Generally, these criteria are split into two groups named Internal and External. 1. Internal Quality Criteria This criteria generally measures compactness of clusters using similarity measures. It generally takes into consideration intra-cluster homogeneity, the inter-cluster separability or a combination of these two. It doesn’t use any exterior information beside the data itself.

Computer Science & Information Technology (CS & IT)

93

2. External Quality Criteria They are useful for examining the structure of the clusters match to some already defined classification of the objects. 3.4.3. Accuracy Several different classifiers were used and the accuracy of the best classifier varied from 99.57% to 65.33%, depending on the data.

3.4.4. Advantages of Clustering Method The main advantage of this method is that it offers the groups that (approximately) fulfil an optimality measure. 3.4.5. Disadvantages of Clustering Method 1. 2. 3.

There is no learning set of labelled observations. Number of groups is usually unknown. Implicitly, users already chooses the appropriate features and distance measure.

4. CONCLUSION The important part to gather information always seems as what the people think. The rising accessibility of opinion rich resources such as online analysis websites and blogs rises as one can simply search and recognize the opinions of some other one. One can precise his/her ideas and opinions concerning goods and facilities. These view and thoughts are subjective figures which signifies someone opinions, sentiments, emotional state or evaluation. In this paper, we present different methods for data (feature or text) extraction and every method have some benefits and limitations and one can use these methods according to the situation for feature and text extraction. Based on the survey we can find the accuracy of different methods in different data set using ngram feature shown in table 2.

Ngram Feature

Table 2: Accuracy of Different Methods Movie Reviews Product Reviews NB MLP SVM NB MLP 75.50 81.05 81.15 62.50 79.27

SVM 79.40

According to our survey, accuracy of MLP is better than other three methods when we use Ngram feature. The four methods discussed in the paper are actually applicable in different areas like clustering is applied in movie reviews and SVM techniques is applied in biological reviews & analysis. Although in the field of opinion mining is new, but still the diverse methods available to provide a way to implement these methods in various programming languages like PHP, Python etc. with an outcome of innumerable applications. From a convergent point of view Naïve Bayes is best suitable for textual classification, clustering for consumer services and SVM for biological reading and interpretation.

94

Computer Science & Information Technology (CS & IT)

ACKNOWLEDGEMENTS Every good writing requires the help and support of many people for it to be truly good. I would take the opportunity of thanking all those who extended a helping hand whenever I needed one. I offer my heartfelt gratitude to Mr. Mohd. Shahid Husain who encouraged, guided and helped me a lot in the project. I extent my thanks to Miss. Ratna Singh (fiancee) for her incandescent help to complete this paper. A vote of thanks to my family for their moral and emotional support. Above all utmost thanks to the Almighty God for the divine intervention in this academic endeavour.

REFERENCES [1]

Ion SMEUREANU, Cristian BUCUR, Applying Supervised Opinion Mining Techniques on Online User Reviews, Informatica Economică vol. 16, no. 2/2012. [2] Bo Pang and Lillian Lee, “Opinion Mining and Sentiment Analysis”, Foundations and TrendsR_ in Information Retrieval Vol. 2, Nos. 1–2 (2008). [3] Abbasi, “Affect intensity analysis of dark web forums,” in Proceedings of Intelligence and Security Informatics (ISI), pp. 282–288, 2007. [4] K. Dave, S. Lawrence & D. Pennock. \Mining the Peanut Gallery: Opinion Extraction and Semantic Classi_cation of Product Reviews." Proceedings of the 12th International Conference on World Wide Web, pp. 519-528, 2003. [5] B. Liu. \Web Data Mining: Exploring hyperlinks, contents, and usage data," Opinion Mining. Springer, 2007. [6] B. Pang & L. Lee, \Seeing stars: Exploiting class relationships for sentiment categorization with respect to rating scales." Proceedings of the Association for Computational Linguistics (ACL), pp. 15124,2005. [7] Nilesh M. Shelke, Shriniwas Deshpande, Vilas Thakre, Survey of Techniques for Opinion Mining, International Journal of Computer Applications (0975 – 8887) Volume 57– No.13, November 2012. [8] Nidhi Mishra and C K Jha, Classification of Opinion Mining Techniques, International Journal of Computer Applications 56 (13):1-6, October 2012, Published by Foundation of Computer Science, New York, USA. [9] Oded Z. Maimon, Lior Rokach, “Data Mining and Knowledge Discovery Handbook” Springer, 2005. [10] Bo Pang, Lillian Lee, and Shivakumar Vaithyanathan. “Sentiment classification using machine learning techniques.” In Proceedings of the 2002 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 79–86. [11] Towards Enhanced Opinion Classification using NLP Techniques, IJCNLP 2011, pages 101–107, Chiang Mai, Thailand, November 13, 2011

Author Pravesh Kumar Singh is a fine blend of strong scientific orientation and editing. He is a Computer Science (Bachelor in Technology) graduate from a renowned gurukul in India called Dr. Ram Manohar Lohia Awadh University with excellence not only in academics but also had flagship in choreography. He mastered in Computer Science and engineering from Integral University, Lucknow, India. Currently he is acting as Head MCA (Master in Computer Applications) department in Thakur Publications and also working in the capacity of Senior Editor.

DETECTION OF JARGON WORDS IN A TEXT USING SEMI-SUPERVISED LEARNING Alok Ranjan Pal1 and Diganta Saha2 1

College of Engineering and Management, Kolaghat, West Bengal, India, 721171 [email protected] 2

Jadavpur University, Kolkata, West Bengal, India, 700098 [email protected]

ABSTRACT The proposed approach deals with the detection of jargon words in electronic data in different communication mediums like internet, mobile services etc. But in the real life, the jargon words are not used in complete word forms always. Most of the times, those words are used in different abbreviated forms like sounds alike forms, taboo morphemes etc. This proposed approach detects those abbreviated forms also using semi supervised learning methodology. This learning methodology derives the probability of a suspicious word to be a jargon word by the synset and concept analysis of the text.

KEYWORDS Natural Language Processing (NLP), Jargon word, Suspicious word, Synset, Concept.

1. INTRODUCTION World Wide Web and Telecommunication system play a vital role in this fast and modern era. One of the major activities is information sharing. People can communicate with other via e-mail, chatting, community forums, SMS etc. By a single click or by pressing a single button on our mobile phones, we can communicate with people, who are far away from us. In the field of study, research, business, sports, entertainment, national and international affairs etc. these electronic mediums have made a radical change. But these facilities have some negative influences also on the society. At the time of information sharing, sometimes people use abusive words. In different public community forums, these jargon words openly appear. This type of malfunctioning makes the web polluted. Different communities use this medium to spread rumor and violence. Recently, Governments of different countries are taking different steps to protect the malfunctioning over Internet and Telecommunication system. As some effective measures, use of few words is banned in SMS, selected sites are blocked and discussions on few topics on community forum etc. are prohibited in different countries. Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 95–107, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3411

96

Computer Science & Information Technology (CS & IT)

This algorithm would detect the jargon words, used in different texts at the time of its submission onto the web or any network. Organization of rest of the paper is as follows: Section 2 is about motivation of our paper; Section 3 describes the background; Section 4 depicts the proposed approach in detail; Section 5 depicts experimental results; Section 6 represents conclusion of the paper.

2. MOTIVATION Recently, different effective measures have been taken by the Governments of different countries around the world. Pakistani government has banned few web sites, implied restriction on use of near about 1700 words in SMS. USA and CHINA also have taken different steps to resist the malfunctioning. Most recently, Government of India warns few community sites to become more responsible about their social consciousness. They should monitor the data, which are handled by their system. This proposed algorithm would detect a jargon word in a text, if this is used as a script in the specific method, through which the data is passed.

3. BACKGROUND Natural Language Processing (NLP) [1] play an important role in different real life applications. So many research works are carried out in different fields of NLP, as Information Retrieval (IR), Automated Classification [7], Language Translation by Machine [4, 5, 6], Word Sense Disambiguation [9, 10, 17], Part of speech Tagging [15, 16], Anaphora Resolution [11], Paraphrasing [12], Malapropism [13], Collocation Testing [14] etc. These research works greatly depend on some knowledge driven methods [8]. WordNet [2, 18, 20] is a machine readable dictionary, used as a strong knowledge base now a day. In this dictionary words are arranged semantically instead of alphabetically. Words of symmetric sense are grouped together into a set, called synset and each synset represents a distinct sense, called concept [19].This organisation of words play a vital role in different research areas of NLP like Automatic Summarisation, ELearning [3], Automatic Medical Diagnosis etc. Our approach adopts the idea of resolution of a sense from a given text to detect a jargon word in that text.

4. PROPOSED APPROACH This approach handles the jargon words in four ways. First, each word of the input text is compared with the entries of a jargon word Database. This Database is initially populated with some usual jargon words. If any word of the input text is completely matched with any entry of the Database, the process stops proceeding (Figure 10) with a message. An additional job is performed here. The sense of the discussion (concept) [19] is derived from the text. Secondly, each word of the input text is compared with the entries of another Database, contains a few commonly used jargon words and the words, which sound like those jargon words (Figure

Computer Science & Information Technology (CS & IT)

97

11). If the input text contains any sounds-alike jargon word, the algorithm detects that word and stops proceeding. Thirdly, the algorithm handles the suspicious words also. If any word is matched partially with any jargon word, the algorithm treats that word as a suspicious word. To perform this job, a window of consecutive characters is taken over a word. The window starts sliding (Figure 5) from the first character of the word. If any section, displayed in the window, is matched partially with any of the jargon words, the word is treated as a suspicious word and displayed. If the user wants to proceed with that suspicious word, the text is moved forward but the suspicious word is stored in a Database with a counter (Figure 13). If the user does not want to proceed with the detected suspicious words, the algorithm confirms those suspicious words as jargon words instantly and stores in the jargon word Database without further verification, as it can take part in decision making in the next time. Finally, the learning ability of the algorithm is handled by the derived concept and the suspicious word Database (Figure 13). Different concepts carry some user defined weights (Figure 8). These weights are assigned simply from experience of daily life. The probability of a suspicious word, to be a jargon word, depends upon two matters. First one is the frequency of occurrence of that suspicious word and second one is concept, where that word is used. So this algorithm stores a suspicious word with its frequency of use and the assigned weight from its concept (Figure 13). When the multiplication value of the counter and the weight of the concept crosses some threshold value, the suspicious word is treated as a jargon word and is stored in the jargon word Database (Figure 15) as training data.

Figure 1. Block diagram of the overall Procedure

98

Computer Science & Information Technology (CS & IT)

Algorithm 1: This algorithm takes a text as input and generates a text, free from jargon word. It performs four jobs in four different modules (Figure 1). In module 1, the jargon words are detected. In module 2, the sounds-alike jargon words are detected. The suspicious words are detected in Module 4 and the learning set is enriched in Module 3. Input: Input text. Output: Text to be submitted. 1.

Stop words are eliminated from the input text.

2.

Text, with only meaningful words, is created.

3.

This text is passed to a. Module 1 for detecting the jargon words. b. Module 3 for deriving the concept from the text.

4.

Text, without completely matched jargon words, is obtained from Module 1.

5.

The text from Module 1 is passed to Module 2, where the sounds-alike jargon words are checked.

6.

The text from Module 2 is passed to Module 4, where the occurrence of any suspicious word is checked. If any suspicious word is found in the text, it is passed to Module 3, where the learning set is enriched.

7.

Text, without any jargon or suspicious word is derived for further use.

8.

Stop.

Figure 2. Block diagram of the jargon word detection module Module 1: Algorithm 2: This algorithm checks each word of the text with the entries of a Database of jargon words. If any word is completely matched with any entry (Figure 2), this algorithm shows that word and stops proceeding.

Computer Science & Information Technology (CS & IT)

99

Input: Text, containing only meaningful words. Output: Text, without jargon words. 1. 2. 3. 4. 5.

Repeat steps 2, 3 and 4 for each word of the text. A word from the text is taken. The word is matched with each entry of the jargon word Database. If the word is matched with any entry, the algorithm stops proceeding and Exit. Else: Goto step1 loop. Stop.

Figure 3. Block diagram of the sounds-alike jargon word detection module Module 2: Algorithm 3: This algorithm checks each word of the text with the entries of a sounds-alike jargon words Database (Figure 3). If any sounds-alike word is matched with any entry, that is treated as a jargon word and the algorithm stops proceedings. Input: Text, free from completely matched jargon words. Output: Text, without jargon words. 1. Repeat steps 2, 3 and 4 for each word of the text. 2. A word is taken from the text. 3. The word is matched with each entry of the sounds-alike jargon word Database. 4. If the word is matched with any entry, A message displays the actual jargon word, which must be changed to proceed and Exit. Else: Goto step 1 loop. 5. Stop.

100

Computer Science & Information Technology (CS & IT)

Figure 4. Block diagram of the suspicious word detection module

Figure 5. Block diagram of the sliding window mechanism Module 4: Algorithm 5: This algorithm checks the suspicious words (Figure 4) from the text, using a sliding window of some fixed length. If any word from the text is matched partially with any part of a jargon word, that word is treated as a suspicious word. Input: Text, without jargon word. Output: a) Text, which can be used for proceeding and b) List of Suspicious words.

Computer Science & Information Technology (CS & IT)

101

1. Repeat step 2, 3 and 4 for each word of the input text. 2. A word is taken. 3. A character window (Figure 5) of some fixed length is taken and set at the beginning of the word. 4. Repeat step 5 till the window lies within the word length. 5. If the window is matched with any part of the jargon words, A message, mentioning the suspicious word is displayed and waits for confirmation to proceed. If the user confirms the suspicious word as a jargon word, the word is stored in jargon word Database directly and exit. Else, The suspicious word is passed to module 3 for enriching the learning set. Else, The window is shifted right by one character. 6. The text is displayed. 7. Stop.

Figure 6. Block diagram of the learning mechanism Module 3: Algorithm 4: This algorithm handles the learning set, which increases the efficiency of detection of jargon words. Input: a) Text, containing the only meaningful words from the input text and

102

Computer Science & Information Technology (CS & IT)

b) Suspicious words from module 4. Output: Jargon words would be stored in jargon word Database (Module 1). 1. Intersection (Figure 6) is performed between the words of the input text and the different synsets. 2. The concept is derived from the highest value of intersection. 3. Some predefined weight is assigned to the derived concept. 4. Suspicious words from Module 4 are stored in a Database with some counter. 5. Repeat steps 6, 7 and 8 for each suspicious word. 6. The counter value of a suspicious word is taken. 7. The counter value is updated by the weight, assigned for the concept. 8. If the counter value of a suspicious word crosses some thresh hold value, the suspicious word is treated as a jargon word and is stored in jargon word Database (Module 1) for further decision making. 9. Stop.

5. OUTPUT AND DISCUSSION The experiment was started with a table of common jargon words (Figure 7) and a table, consisting of different synsets and the related concepts (Figure 8). Each concept carries some weight ("assgval" in Figure 8), which is used for learning. For experiment few Greek words are considered as jargon words.

Figure 7. The table, containing few jargon words

Figure 8. The table of different synsets and related concepts

Computer Science & Information Technology (CS & IT)

103

In Figure 9, it is depicted; the input text is displayed as the output text as there is no jargon word in the input text.

Figure 9. The input text is submitted as output text, as it does not contain any jargon word In Figure 10, it is depicted; the input text contains few jargon words.

Figure 10. Few jargon words are detected in the input text. So, it is not submitted as output text In Figure 11, it is depicted; the input text contains few words, which sound like jargon words.

104

Computer Science & Information Technology (CS & IT)

Figure 11. Few sounds-alike jargon words are detected in the input text In Figure 12, it is depicted; the input text contains few suspicious words, which do not match with the stored jargon words completely but partially.

Figure 12. A message shows the suspicious words and waits for confirmation to proceed When a text, containing such jargon words(Figure 12) is submitted, the suspicious words are detected and alerts the user for verification. If the user does not want to proceed with those suspicious words, the process will be stopped and the derived suspicious words would be treated as jargon words without any further verification and would stored in the jargon word Database for further decision making. Otherwise, the suspicious words would be stored in a Database with some counter ("JCount" in Figure 13). Counter denotes the frequency of occurrence of that suspicious word in different contexts.

Computer Science & Information Technology (CS & IT)

105

Figure 13. The suspicious words are stored with the counter value, shown in “JCount” column Now, the learning ability of the algorithm is discussed with example. Figure 8 depicts the different synsets and associated concepts which are manually tagged for experiment. From real life scenario, it is obvious that according to the context of the input text, the probability of a suspicious word, to be a jargon word, is changed. In the “assgval” column, these different values are stored from real life knowledge. In figure 12, the concept of the input text is “Movie”. So, the suspicious words were stored in to the suspicious-word Database (Figure 13), with pre-assigned weight 10 (column "JValue" in Figure 13). Another text is considered about “Sports” and the suspicious words are stored in suspicious word Database with pre-assigned weight 7 (Figure 14). If any suspicious word is used again and again in different contexts, the associated "JValue" would be increased (Figure 14). If the "JValue" of any particular suspicious word crosses some threshold value, that suspicious word would be treated as jargon word and that would be stored in the jargon word Database (Figure 15). Experimentally, threshold value is taken 50 here.

Figure 14. “JValue” of a suspicious word is increased, as it is used repeatedly

106

Computer Science & Information Technology (CS & IT)

Figure 15. A suspicious is treated as a jargon word, as its 'JValue' crosses thresh hold value In this way, as the algorithm would be trained by different texts of different contexts, the jargon word Database would be stronger. The "assgval" is decided from the real life scenario according to the different concepts (in Figure 8). All the user assigned values might vary situation wise.

6. CONCLUSION AND FUTURE WORK This algorithm detects the jargon words, as well as the suspicious words from a text, which is used for conversation in any open medium. If the learning mechanism is handled with proper synset and probability analysis, the algorithm would solve a big problem of recent day. But, in some cases like medical field, judicial system etc. few words are used, which are considered as jargon words in other aspects. These situations should be handled as special cases.

REFERENCES [1] [2] [3] [4]

[5] [6] [7] [8]

Gelbukh, A., (2000) "Computational Processing of Natural Language: Tasks, Problems and Solutions", Congreso Internacional de Computacion en Mexico D.F. Miller, A. George., (1993) “WordNet: A Lexical Database”, Comm. ACM, Vol.38, No.11, pp. 39-41. Brill, E., Lin, J., Banko, M., Dumais, S., Ng, A., (2001) "Dataintensive Question Answering", Proc. of the Tenth Text Retrieval Conference. Peter F. Brown, John Cocke, Stephen A. Della Pietra, Vincent J. Della Pietra, Fredrick Jelinek, Robert L. Mercer & Paul S. Roossin, (1990) "A statistical approach to Language translation", Computational Linguistics,16(2):79—85. Gelbukh, A. & I.A. Bolshakov, (2003) "Internet, a true friend of translator", International Journal of Translation, Vol. 15, No. 2, pp. 31–50. Gelbukh, A. & Bolshakov, I.A., (2006) "Internet, a true friend of translator", the Google wildcard operator. International Journal of Translation, Vol. 18, No. 1–2, pp. 41–48. Heflin, J. & Hendler, J., (2001) "A Portrait of the Semantic Web in Action", IEEE Intelligent Systems, vol. 16(2), pp. 54-59. Wilks Y., Fass D., Guo C., McDonal J., Plate T. and Slator B., (1993) "Providing Muchine Tractablle Dictionan Tools", In Semantics and the lexicon (Pustejowsky J. Ed.) 341-401.

Computer Science & Information Technology (CS & IT) [9]

[10]

[11] [12] [13]

[14]

[15] [16] [17]

[18] [19]

[20]

107

Banerjee, S. & Pedersen, T. (2002) “An adapted Lesk algorithm for word sense disambiguation using WordNet”, In Proceedings of the Third International Conference on Intelligent Text Processing and Computational Linguistics, Mexico City. Lesk, M., (1986) "Automatic sense disambiguation using machine readable dictionaries: How to tell a pine conefrom an ice cream cone", Roc. 1986 SIGDOC Conference, ACM 24-26, New York of Sheffield, UK. Bunescu, R., (2003) "Associative Anaphora Resolution: A Web-Based Approach", In: Proc. of the EACL-2003 Workshop on the Computational Treatment of Anaphora, Budapest, Hungary. Bolshakov, I.A., Gelbukh, A., (2004) "Synonymous Paraphrasing Using WordNet and Internet", Lecture Notes in Computer Science N 3136, Springer, pp. 312–323. Bolshakov, I.A., Galicia-Haro, S.N., Gelbukh, A., (2005) "Detection and Correction of Malapropisms in Spanish by means of Internet Search", Lecture Notes in Artificial Intelligence N 3658, Springer, pp. 115–122. Bolshakov, I.A., Bolshakova, E.I., Kotlyarov A.P., Gelbukh A., (2008) "Various Criteria of Collocation Cohesion in Internet: Comparison of Resolving Power. CICLing 2008, Lecture Notes in Computer Science N 4919, Springer, 64-72. Deroualt, A.M. & Merialdo , B., (1986) “Natural Language modeling for phoneme-to-text transposition”, IEEE transactions on Pattern Analysis and Machine Intelligence. Ratnaparkhi, A., (1996) “A maximum entropy Part-of-speech tagger”, Proceedings of the Empirical Methods in NLP conference, University of Pennsylvania. Nameh, M., Fakhrahmad, S.M., Zolghadri Jahromi, M., (2011) "A New Approach to Word Sense Disambiguation Based on Context Similarity", Proceedings of the World Congress on Engineering Vol I) SUO Hong-Guang, LIU Yu-Shu, CAO Shu, CAO Shu-Ying, (2006) "A Keyword Selection Method Based on Lexical Chains. Journal of Chinese Information Processing", 20(6):25-30. Jason C. Hung, Ching-Sheng Wang, Che-Yu Yang, Mao-Shuen Chiu, George YEE, (2005) "Applying Word Sense Disambiguation to Question Answering System for E-Learning", Proceedings of the 19th Inter. Conf.on Advance Information Networking and Applications. Miller, G. A., Beckwith, R., Fellbaum, C., Gross, D., and Miller K. J., (1990) "WordNet An on-line lexical database", International Journal of Lexicography, 3(4):235-244.

AUTHORS Alok Ranjan Pal has been working as an a Assistant Professor in Computer Science and Engineering Department of College of Engineering and Management, Kolaghat since 2006. He has completed his Bachelor's and Master's degree under WBUT. Now, he is working on Natural Language Processing.

Dr. Diganta Saha is an Associate Professor in Department of Computer Science & Engineering, Jadavpur University. His field of specialization is Machine Translation/ Natural Language Processing/ Mobile Computing/ Pattern Classification.

ANALYSIS OF A CHAOTIC SPIKING NEURAL MODEL : THE NDS NEURON Mohammad Alhawarat1, Waleed Nazih2 and Mohammad Eldesouki3 1,2

Department of Computer Science, College of Computer Engineering and Sciences, Salman Bin Abdulaziz University, Kingdom of Saudi Arabia [email protected]

2

[email protected]

Department of Information Systems, College of Computer Engineering and Sciences, Salman Bin Abdulaziz University, Kingdom of Saudi Arabia [email protected]

ABSTRACT Further analysis and experimentation is carried out in this paper for a chaotic dynamic model, viz. the Nonlinear Dynamic State neuron (NDS). The analysis and experimentations are performed to further understand the underlying dynamics of the model and enhance it as well. Chaos provides many interesting properties that can be exploited to achieve computational tasks. Such properties are sensitivity to initial conditions, space filling, control and synchronization. Chaos might play an important role in information processing tasks in human brain as suggested by biologists. If artificial neural networks (ANNs) is equipped with chaos then it will enrich the dynamic behaviours of such networks. The NDS model has some limitations and can be overcome in different ways. In this paper different approaches are followed to push the boundaries of the NDS model in order to enhance it. One way is to study the effects of scaling the parameters of the chaotic equations of the NDS model and study the resulted dynamics. Another way is to study the method that is used in discretization of the original R¨ossler that the NDS model is based on. These approaches have revealed some facts about the NDS attractor and suggest why such a model can be stabilized to large number of unstable periodic orbits (UPOs) which might correspond to memories in phase space.

1. INTRODUCTION Chaos might play an important role in information processing tasks in human brain as shown in [Babloyantz and Lourenc¸o(1996), Destexhe(1994), Freeman(1999), Freeman(2000), Freeman and Barrie(1994), Rapp(1993), Theiler(1995),Wu et al(2009)Wu, Shyu, Chen, and Guo]. Some properties that might be useful for information processing tasks are: sensitivity to initial conditions, space filling, control, synchronization and a rich dynamics that can be accessed using different control methods. In theory, if Artificial Neural Networks (ANN) are equipped with chaos they will enable a large number of rich dynamic behaviors. After applying control, these dynamics can be accessed using one of the control mechanisms such as feedback control [Ott et al(1990)Ott, Grebogi, and Yorke, Pasemann and Stollenwerk(1998), Pyragas(1992)]. Applying such control mechanisms to discrete chaotic neural models showed that the model would stabilize into one of many UPOs that are embedded in the chaotic attractor. Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 109–121, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3412

110

Computer Science & Information Technology (CS & IT)

Different chaotic neural models have been devised in recent years to explore the possibilities of exploiting the rich dynamics that such models might provide for information processing tasks. One of these model is the NDS model [Crook et al(2005)Crook, Goh, and Hawarat].This model is based on R¨ossler system [R¨ossler(1976)]. R¨ossler is a simple chaotic system. It has been studied many times in terms of control investigation and biological studies [Ding et al(2010)Ding, Jiang, and Wang, Bershadskii and Ikegaya(2011)] to name a few. The origins of this model dates back to 2003 where the authors in [Crook et al(2003)Crook, olde Scheper, and Pathirana] have proposed a chaotic neuron that is based on R¨ossler system. The idea was to exploit the rich dynamics of the chaotic attractor to represent internal states and therefore the chaotic attractor can represent an infinite state machine. Many experiments have been carried out to show that using periodic input signals would cause the chaotic attractor to stabilize to an UPO. The control mechanism used was a modified version of Pyragas [Pyragas(1992)] where the period length is considered a system variable. Small networks of 2−3 neurons have been studied and the network has stabilized to one UPO according to a periodic length that is implicitly appears in the input pattern. The model is very interesting due to the fact that it theoretically allows an access to a large number of UPOs, which correspond to memories in phase space, using only single NDS neuron. In contrast, the Hopfield neural network can give only 0.15n memory size (where n is the number of neurons in the network). The NDS model is studied in a series of works [Crook et al(2005)Crook, Goh, and Hawarat, Goh and Crook(2007), Alhawarat(2007), Crook and Goh(2008), Aoun(2010)]. The authors in[Goh and Crook(2007)] have used Lorenz attractor instead of R¨ossler. They have used transient computation machine to detect human motion from sequences of video frames. In another paper[Crook and Goh(2008)] the authors argued that chaos may equip mammalian brain with the equivalent of kernel trick for solving hard nonlinear problems. In [Aoun(2010)] networks of NDS neurons have been investigated in the context of Spike Time Dependent Plasticity (STDP) which is a property of cortical neurons. The author has suggested that NDS neurons may own the realism of biological neural networks; this has been supported by experiments conducted by the author. The NDS model has been investigated thoroughly in[Alhawarat(2007)]. In his investigation, the author has studied the chaotic behavior of the model from both experimental and analytical perspectives. Explanation of the behavior of the model has become clear after the experimentations and the mathematical analysis and the study has shown interesting results. In this paper some of the limitations that exist in the NDS model will be investigated. This includes tuning the model parameters for the sake of enhancing the model capacity in terms of the number of successfully stabilized UPOs. Moreover, the discretization method that used to to convert the continuous R¨ossler system into the discrete NDS model will be discussed and compared to other well-known methods of discretization. The paper is organized as follows: in section 2 the original R¨ossler model is introduced, in section 3 the NDS model is described, in section 4 a mathematical analysis of the NDS model and

Computer Science & Information Technology (CS & IT)

111

related discretization methods are discussed, section 5 is devoted to describe the experimentation setups that are carried out to tune the parameters of the NDS model, section 6 includes discussions and finally section 7 concludes the paper.

2. R¨OSSLER CHAOTIC ATTRACTOR The R¨ossler system [R¨ossler(1976)] is a simple dynamical system that exhibits chaos and has only one nonlinear term in its equations. R¨ossler built the system in 1976; it describes chemical fluctuation and is represented by the following differential equations:

Where a and b are usually fixed and c is varied and is called the control parameter. The familiar parameter settings for the R¨ossler attractor are a = 0:2, b = 0:2, and c = 5:7, and the corresponding attractor is shown in figure 1. Note that the R¨ossler attractor most of the time lies in the x−y plane and comprises a disk that has a dense number of orbits. Note also that these orbits are stretching as a result of divergence and sensitivity to initial conditions. From time to time the R¨ossler attractor rises in the z direction and then folds back to the disk which forms a fin-like shape. The folding and stretching keep the R¨ossler attractor bounded in phase space.

Fig. 1 The R¨ossler chaotic attractor with parameters a = 0:2, b = 0:2, and c = 5:7.

112

Computer Science & Information Technology (CS & IT)

If a trajectory of a chaotic system evolved starting from an initial point within the attractor for a long period of time, then that trajectory will fill a bounded part of the phase space and the attractor of the system will have a fractional dimension. This bounded space is one of the properties of chaos, and is due to the attracting and the repelling of the trajectory by the fixed points that govern and organize the system behaviour. The type of these points determines the shape of the resulting attractor. This fractal dimension can be recognized in figure 1 where the attractor is not filling the whole space, instead it is filling part of the space. Unstable periodic orbits An UPO is one of the dynamic behaviours that a nonlinear system exhibit in phase space. An UPO is a repeating orbit and is unstable as a result of being attracted and repelled by fixed points of an attractor. Chaotic attractors usually have a dense number of UPOs which can be accessed using controlling methods. For example figure 2 shows two UPOs of period 1 and period 2 in the R¨ossler attractor when the c parameter is tuned to 2:5 and 3:5 respectively. Period 2 here means that the UPO repeat twice in the attractor.

Fig. 2 Two UPOs, one of period 1 and the other of period 2 in the R¨ossler chaotic attractor occurred when parameters a;b are fixed to 0:2 and parameter c is set to 2:5 and 3:5.

3. DESCRIBING THE NDS MODEL In[Crook et al(2005)Crook, Goh, and Hawarat], Crook et al. have proposed a chaotic spiking neuron model that is called the NDS neuron. The NDS neuron is a conceptual discretized model that is based on R¨ossler’s chaotic system [R¨ossler(1976)]. The NDS model is a modified version of R¨ossler’s equations as described by equations 1- 3 in section 2. By varying the system parameters such as period length , connection time delays and initial conditions, large number of distinct orbits with varying periodicity may be stabilised.

Computer Science & Information Technology (CS & IT)

113

The NDS model simulates a novel chaotic spiking neuron and is represented by:

Fig. 3 The chaotic behaviour of a NDS neuron without input (a) the time series of u(t) and and (b) the phase space of x(t) versus u(t)

where x(t), y(t) and u(t) describe the internal state of the neuron, is the neuron’s binary output, F(t) represent the feedback signals, In(t) is the external input binary spike train, and the constants and parameters of the model are: a = v = 0:002, b = c = 0:03, d = 0:8, k = −0:057, = −0:01, = −0:7 and is the period length of the feedback signals.

θ

The NDS model is a discrete version of the R¨ossler system. The main reason to have a discrete version of the R¨ossler system is because spikes should occur in discrete time. The discretization has been carried out by scaling the system variables x(t), y(t) and u(t) using different scaling constants: b, c, d. The values of these constants have been tuned experimentally until the dynamics of the R¨ossler system are preserved. If the values of these constants are large, then a

114

Computer Science & Information Technology (CS & IT)

system trajectory will miss many dynamic evolutions while moving from one discrete iteration to the next. Therefore, the time steps of the discrete system need to be very small so that a system trajectory will involve most of the dynamic evolutions of the R¨ossler system. This will become clear in section 4. The dynamics of a single NDS neuron without input is shown in Figure 3. However, when the NDS neuron is equipped with a time delayed feedback connection then the firing pattern of the neuron can become periodic. This is shown in figure 4 where period-4 orbit is stabilised due to the feedback control mechanism F

Fig. 4 The stabilizing of period-4 orbit of a NDS neuron with feedback connection.

4. DISCRETIZATION METHOD There are two kinds of discretization methods when converting a continuous system into a discrete one: standard and nonstandard methods. One of the nonstandard methods is Eulers Forward differentiation method that is usually used in developing simple simulation systems. To convert a continuous system into the corresponding discrete one using this method, then a time step TS is used to approximate the next value of a continuous system variable that it will evolve to. For example, equation1 when converted into a discrete equation using Eulers Forward differentiation it will become:

if this equation is compared with equation 4, it is obvious that the TS is chosen to be parameter b = 0.03. In order for the discretized function to behave similarly to the continuous one then TS should be chosen to be small. For simulation purposes it is preferable to choose TS according to the following formula :

Computer Science & Information Technology (CS & IT)

Where

115

is the largest absolute eigenvalues for the R¨ossler system. According to the

mathematical analysis that is carried out in [Alhawarat(2007)], substituting this value in equation 14 it becomes: TS ≤ 0:0176

= 5:68698. When

(14)

If this compared with b it is obvious that the time step that has been chosen doesn’t follow the simulation preferable setup. Moreover, if we look at equation 5 not only the TS is chosen to be c = 0:03 but also a scaling factor is used to reduce the y down by the factor a = 0:002. For the third variable in R¨ossler system, viz. z variable, there were many changes because the authors of the model according to [Crook et al(2005)Crook, Goh, and Hawarat] wanted to invent a spiking model that is based on a threshold variable. That variable was u which corresponds to z in the original R¨ossler system. In addition, the time step TS value that is used in the discretization process was different from those appear in equations 4-5. While the TS = b = c = 0:03 used in the aforementioned equations, TS is chosen to be TS =d =0:8 in discretization of the variable u. Moreover, the authors have scaled the constant c from 5:7 down to 0:057 and changed its sign to negative. A final change was made to the sign of x variable from positive to negative. All these changes made the new system to behave differently in phase space. To summarize, the new attractor of the system has different fixed points types. According to the mathematical analysis carried out by [Alhawarat(2007)], the original R¨ossler system fixed points, which are two spiral saddle points, have become two spiral repellors due to the varying scaling factors used and the change of the sign for both k and x. These results assure that the NDS model, although has a promising results as a spiking chaotic neuron model, it doesn’t have a strong connection to the properties of the original R¨ossler attractor. This is made obvious in [Alhawarat(2007)] when they concluded that the existence of the UPOs of the NDS attractor is due to the acting forces of the two spiral repellors and the reset mechanism. Because without the reset mechanism, the two spiral repellors will enforce any trajectory that starts near by to evolve away from both of them and approaches infinity. If the Eulers Forward differentiation discretization method is used to convert the continuous R¨ossler system into a discrete model, where the time step is chosen to be TS = 0:0055, then equations 1- 3 will become:

116

Computer Science & Information Technology (CS & IT)

Where TS = 0:0055, a = 0:2, b = 0:2, and c = 5:7.

Fig. 5 The Discrete version of R¨ossler attractor based on equations 15- 17 To verify if such settings will preserve the shape and properties of the original R¨ossler system, then an experiment is carried out to depict the discretized system’s attractor as shown in figure 5. If these equations are converted into the equations of the NDS model then different steps need to be followed: 1. Specify the value of TS, here TS is chosen to be 0:0055 2. Change the parameter b in equation 17 to v. 3. Change the parameter c in equation 17 to k. 4. Change the constant TS in equation 15 to b and give it the value of TS. 5. Change the constant TS in equation 16 to c and give it the value of TS. 6. Change the constant TS in equation 17 to d and give it the value of TS. 7. Change the value of a and v and give it the value of 0:2. 8. Change the value of k to 5:7 9. Change the variable z to u. 10. Change the sign of the term (x(t)−k) in equation 17 to become (−x(t)+k) After applying the previous changes the equations 15- 17 become: x(t +1) = x(t)+b(−y(t)−u(t))

(18)

y(t +1) = y(t)+c(x(t)+ay(t))

(19)

u(t +1) = u(t)+d(v+u(t)(−x(t)+k))

(20)

Where a = 0:2, b = c = d = 0:0055, and k = 5:7.

Computer Science & Information Technology (CS & IT)

117

Now this new model need to be verified, i.e. an experiment need to be carried out to depict the attractor such equations will produce. Figure 6 depicts the results of evolution of equations 1820.

Fig. 6 The attractor of the model that is based on equations 18- 20 Note that the original R¨ossler attractor has disappeared and this is due to the change of sign that is made to the term (x(t)−k) in equation 20.

5. TUNING THE PARAMETERS OF THE NDS MODEL In this research, many experiments have been carried out to tune the parameters of the NDS model. These experiments are carried out by varying one parameter and fix all other parameters to their default values that are used in the NDS model definition as stated in section 3. The following parameters have been considered in these experiments: a,v,b,c,d and k because the other parameters: have already been studied thoroughly in [Alhawarat(2007)]. One NDS neuron has been used in the experiments setup and random initial conditions are chosen for the values of the variables: x, y and u. After 1000 iterations the feedback control is applied and the experiment runs for another 9000 iterations. To decide whether a specific setting is valid; the values of the variables of the model are recorded and then depicted in phase space. If an attractor exist, then this setting is considered in the valid ranges for the values of the system parameters. Table 1 Parameter value’s ranges

To summarize the results; the valid ranges for the model parameters are shown in table 1.

118

Computer Science & Information Technology (CS & IT)

Table 2 Parameter settings with different selected values from the ranges appear in table1

To judge weather such ranges could enhance the capacity of the attractor in terms of the number of UPOs that it might encompass, then another experiment setup is used. Here the average number of successfully stabilized UPOs is computed over 1000 run for different parameter settings according to table 2 and the results are depicted in figure 6. Note that the original parameters values of the NDS model is used in setup 7. This is done to compare the capacity of the attractor with different parameter settings compared to the original parameter settings. The results that are shown in figure 6 suggest that there exist better parameter settings such as Settings 14 and Settings 05, but these will not make a significant enhancement in the capacity of the attractor in terms of successfully stabilized UPOs when compared to the NDS original settings (Setting 07). Based on the results that have been attained in section 4, if a parameter setting need to be chosen to represent the R¨ossler system then first a TS need to be set according to equation 14, then a mapping between the original R¨ossler equations and the NDS equations need to be performed. If TS is chosen to be 0:015, then after carrying out the mapping between the equations of both systems; the parameter settings become as listed in table 3 Table 3 Parameter settings for the original R¨ossler as discussed in section 2

This setting is considered in another experiment setup, and the result is that there is no single UPO that can be stabilized. One possible reason is that the fixed points of the system is reserved in this case and not changed as the case in the NDS model settings. The change in sign in the term

Computer Science & Information Technology (CS & IT)

119

(x−c) and the different nested scaling factors that are applied to the original R¨ossler equation have led to change in the types and properties of the fixed points as shown in [Alhawarat(2007)]. This can be proved easily because when multiplying an equation with a constant and then trying to find its roots, then it should be set to zero. Therefore, the constant will have no effect on the resulted roots as dividing both sides by constant will eliminate the constant from the left hand side and will not affect zero in the right hand side.

6. DISCUSSION The results of both experimentations and mathematical analysis of the discretization method suggest that the NDS model has weak connections to the original R¨ossler system. This is due to many factors. Firstly, the discretization process that is used in devising the NDS equations does not follow any known discretization method where different discretization time steps and scaling factors are used. Secondly, Changing the sign of the term (x(t)−k) that appears in equation 20 made the system attractor to disappear and approach infinity instead. These changes affected both the shape and properties of the original R¨ossler attractor. It is important here to stress that even before adding the feedback signal, the input signals and the reset mechanism to the system equations, the attractor has become completely different from the original R¨ossler attractor. This assure that the NDS model has weak connections to the R¨ossler model and has different fixed points, eigenvalues and eigenvectors as demonstrated in [Alhawarat(2007)]. The results also suggest that both the reset mechanism and the feedback signal are the major ingredients for the NDS model to work and to be stabilised to one of its available UPOs. The results of experimental setups made to tune the NDS parameters suggest that there exist better parameter settings but will not enhance the capacity of the attractor in terms of successfully stabilized UPOs significantly when compared to the NDS original settings. Also, the settings of the R¨ossler model when used in the NDS model resulted in no stabilized UPOs because the discretization method that is used to build the NDS model has led to changes in the shape and properties of the R¨ossler attractor. It is important to mention that the main factors that affect the shape and properties of the original R¨ossler attractor are both scaling the parameters of the model with different values and the change in sign that is made to the term (x(t)−k) that appears in equation 20.

7. CONCLUSION One chaotic model, viz., the NDS model has been studied in this paper. NDS is one of different chaotic models that are devised in recent years to explore the possibilities of exploiting the rich dynamics that such models might provide for carrying out information processing tasks. The NDS model might be stabilized to a large number of UPOs. These UPOs can be stabilised using a feedback control mechanism. The NDS model is a modified version of R¨ossler chaotic

120

Computer Science & Information Technology (CS & IT)

system. The rich dynamics of the R¨ossler system is supposed to be inherited by the NDS model. This is suggested by the large number of UPOs that can be stabilised as shown in figure 3. However, when the discretization methods are discussed in this paper, it is shown that the method that is used to discretize the original R¨ossler equations in devising the NDS equations is not a known discretization method. This along with the change in sign in the term u(t)x(t)−ku(t)) has affected the shape and properties of the NDS attractor when compared with its origin: the R¨ossler attractor. Different experimental setups have been prepared and performed to tune the NDS model parameters. The results of these experimentations have revealed the valid ranges of the parameters of the model. Also, other experimentations have shown different capacities for the NDS attractor in terms of the number of stabilized UPOs with different parameter settings. The results attained in this paper suggest that there are weak relationships between the NDS and the R¨ossler models. However, the NDS attractor encompasses large number of UPOs as shown in figure 7. These and the wide range of dynamic behaviours may be exploited to carry out information processing tasks. ACKNOWLEDGEMENTS This work was supported by Salman Bin Abdulaziz University in KSA under grant 40/H/1432. I’m grateful to this support and would like to thank the deanship of scientific research at the university, represented by Dr. Abdullah Alqahtani at that time. REFERENCES [1]

[Alhawarat(2007)] Alhawarat MOI (2007) Learning and memory in chaotic spiking neural models.PhD thesis, Oxford Brookes University [2] [Aoun(2010)] Aoun M (2010) Stdp within nds neurons. In: Advances in Neural Networks - ISNN 2010, Lecture Notes in Computer Science, vol 6063, Springer Berlin Heidelberg, pp 33–43 [3] [Babloyantz and Lourenc¸o(1996)] Babloyantz A, Lourenc¸o C (1996) Brain chaos and computation.International Journal of Neural Systems 7:461–471 [4] [Bershadskii and Ikegaya(2011)] Bershadskii A, Ikegaya Y (2011) Chaotic neuron clock.Chaos, Solitons & Fractals 44(45):342 – 347, DOI 10.1016/j.chaos.2011.03.001, URL http://www.sciencedirect.com/science/article/pii/S096007791100035X [5] [Crook and Goh(2008)] Crook N, Goh WJ (2008) Nonlinear transient computation as a potential ”kernel trick” in cortical processing. Biosystems 94(1-2):55–59 [6] [Crook et al(2003)Crook, olde Scheper, and Pathirana] Crook N, olde Scheper T, Pathirana V (2003) Self organised dynamic recognition states for chaotic neural networks. Information Sciences 150(12):59–75 [7] [Crook et al(2005)Crook, Goh, and Hawarat] Crook N, Goh W, Hawarat M (2005) The nonlinear dynamic state neuron. In: Verleysen M (ed) ESANN, 13th European Symposium on Artificial Neural Networks (ESANN’2005), Bruges, Belgium, pp 37–42 [8] [Destexhe(1994)] Destexhe A (1994) Oscillations, complex spatiotemporal behavior, and information transport in networks of excitatory and inhibitory neurons. Physical Review E 50(2):1594–1606 [9] [Ding et al(2010)Ding, Jiang, and Wang] Ding Y, JiangW,Wang H (2010) Delayed feedback control and bifurcation analysis of rossler chaotic system. Nonlinear Dynamics 61:707–715, DOI 10.1007/s11071-010-9681-y, URL http://dx.doi.org/10.1007/s11071-010-9681-y [10] [Freeman(1999)] FreemanW(1999) How Brains Make up their Minds.Weidenfeld and Nicolson, London

Computer Science & Information Technology (CS & IT)

121

[11] [Freeman(2000)] Freeman W (2000) A proposed name for aperiodic brain activity: stochastic chaos. Neural Networks 13(1):11–13 [12] [Freeman and Barrie(1994)] Freeman W, Barrie J (1994) Chaotic oscillations and the genesis of meaning in cerebral cortex. Temporal Coding in the Brain pp 13–37 [13] [Goh and Crook(2007)] Goh WJ, Crook N (2007) Pattern recognition using chaotic transients. In: In Submitted to 15th European Symposium on Artificial Neural Networks (ESANN2007 [14] [Ott et al(1990)Ott, Grebogi, and Yorke] Ott E, Grebogi C, Yorke JA (1990) Controlling chaos. Physical Review Letters 64:1196–1199 [15] [Pasemann and Stollenwerk(1998)] Pasemann F, Stollenwerk N (1998) Attractor switching by neural control of chaotic neurodynamics. Network: Computational Neural Systems 9(4):549–561 [16] .[Pyragas(1992)] Pyragas K (1992) Continuous control of chaos, by self-controlling feedback. Physics Letters A 170:421–428 [17] [Rapp(1993)] Rapp PE (1993) Chaos in the neurosciences: Cautionary tales from the frontier. Biologist 40(2):89–94 [18] [R¨ossler(1976)] R¨ossler OE (1976) An equation for continuous chaos. Physics Letters A 57(5):397– 398 [19] [Theiler(1995)] Theiler J (1995) On the evidence for low-dimensional chaos in an epileptic electroencephalogram. Physics Letters A 196:335–341 [20] [Wu et al(2009)Wu, Shyu, Chen, and Guo] Wu YT, Shyu KK, Chen TR, Guo WY (2009) Usingthreedimensional fractal dimension to analyze the complexity of fetal cortical surface from magnetic resonance images. Nonlinear Dynamics 58:745–752, DOI 10.1007/s11071-009-9515-y, URL http://dx.doi.org/10.1007/s11071-009-9515-y

ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMPONENTS R. Nirmala Devi1 and K.Kishan Rao2 1

Asooc .Prof., Department of Elelctronics and Instrumentation, Kakatiya Institute of Technology And Science Warangal, Andhrapradesh, India 2 Director Vagdevi Group of Institutions, Bollikunta Warangal, Andhrapradesh, India

ABSTRACT In this paper we consider blind signal detection for an asynchronous code division multiple access (CDMA) system with Principal component analysis (PCA) in impulsive noise. The blind multiuser detector requires no training sequences compared with the conventional multiuser detection receiver. The proposed PCA blind multiuser detector is robust when compared with knowledge based signature waveforms and the timing of the user of interest. PCA is a statistical method for reducing the dimension of data set, spectral decomposition of the covariance matrix of the dataset i.e first and second order statistics are estimated. Principal component analysis makes no assumption on the independence of the data vectors PCA searches for linear combinations with the largest variances and when several linear combinations are needed, it considers variances in decreasing order of importance. PCA improves SNR of signals used for differential side channel analysis. In different to other approaches, the linear minimum mean-square-error (MMSE) detector is obtained blindly; the detector does not use any training sequence like in subspace methods to detect multi user receiver. The algorithm need not estimate the subspace rank in order to reduce the computational complexity. Simulation results show that the new algorithm offers substantial performance gains over the traditional subspace methods.

KEYWORDS Blind Multiuser Detection, Code Division Multiple Access, Inter Symbol Inter-ference (ISI). Multiple Access Interference (MAI). Principal component analysis (PCA)

1. INTRODUCTION In DS-CDMA detector uses one user detection strategy in which each user is taken as a signal, while the other users are considered as noise. In recent years, multiuser detection has attracted significant interest due to enhancement of performance it offers in communication schemes with present multiple access interference (MAI) [1]. Blind multiuser detection is effective for reducing inter symbol interference (ISI) and improving system throughput. Among all blind methods the Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 123–131, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3413

124

Computer Science & Information Technology (CS & IT)

subspace method (SS) [2] is known for its better performance. However, the batch algorithm [2] requires singular value decomposition (SVD), which is inconvenient for adaptive implementation. Further, it requires accurate rank estimation of the correlation matrix, which is not easy in an inherently noisy environment [4]-[9]. 2

All the subbspace tracking algorithms were found with computational complexity around O(m ) , or O(md ) where d is the dimension of the signal subspace, in each recursion [3]. However, the 3

total computation of the blind channel identification is still O(m ) due to the second step, i.e., using the estimated subspace vectors to optimize channel estimation. The second step cannot be repeatedly implemented with reduced computations in an obvious manner[11]. Least square(LS) method is a simple way to estimate a Channel ,it’s efficiency is not significant . Principal component analysis does not assume on the independence of the data vectors. When many combinations are required PCA identifies linear combinations with the largest variances , it considers variances in decreasing order of importance. In PCA signal to noise ratio of signals used for differential side channel analysis is improved. By applying PCA to the frequency spectrum noise and signals can be separated. These detectors employ the PCA algorithm [9] at the outputs of a bank of matched filters. Main purpose is to retrive the original sequence from the received signal that is corrupted by other users and MAI, without the help of training sequences and a priori knowledge of the channel. The paper is organized as follows :Section 2 describes the System model followed by section 3 with the description of the algorithm used. In section 4 contains results and conclusions.

2. SYSTEM MODELLING Consider a DS-CDMA channel operating with coherent binary phase shift keying (BPSK) modulation format with L users sharing the same bandwidth. If L users are active, the received base band, continuous-time signal is a superposition of all L signals[4], y (t ) = X (t ) + z (t ),−∞ ≤ t ≤ ∞

(1)

where X(t) is the useful signal comprised of the data signals of L active users and z(t) the additive white Gaussian noise. The useful signal X(t) is taken as the expression L

M −1

l =1

i =0

X (t ) = ∑ wl ∑ bl (i ) xl (t − iT − τ l )

(2)

where M stands for the number of data symbols per user in the data frame of interest, T is the symbol interval, wl is the received signal amplitude, τ l is the delay, {bl (i ) , i = 0,1,....., M − 1} is the symbol stream, and x l (t ) , {x l (t );0 ≤ t ≤ T } is the normalized signaling waveform of the lth user. It is assumed that the signaling interval of each user is T seconds, and the input alphabet is antipodal binary: [−1,+1] . Further, direct-sequence spread-spectrum (DS-SS) multiple access signatures may be written as a succession of the chip pulses as

Computer Science & Information Technology (CS & IT)

125

N −1

xl (t ) = ∑ p ljϕ (t − jTc ), t ∈ [0, T ]

(3)

j =0

l l l where N is the processing gain, ( p 0 , p1 ,... p N −1 ) is the signature sequence of ± 1′ s assigned to the lth

user, and ϕ is the normalized chip waveform of duration Tc , with NTc = T . A. Synchronous Case For the synchronous case (i.e., τ 1 = τ 2 = .... = τ l = 0 ) of model (1), to demodulate the i th symbols L of the L users, {bl (i )}l =1 , it is sufficient to consider the received signal during the i th signaling interval, i.e.,

L

y (t ) = ∑ wl bl (i) x l (t − iT ) + z (t ), t ∈ [iT , (i + 1)T ] l =1

(4)

Near the receiver, y(t) is the received signal it is filtered by a chip-matched filter and then sampled at the chip rate. The resulting discrete-time signal sample corresponding to the j th chip of the i th symbol is given by iT + ( j +1)Tc

y j (i ) =

∫ y (t )ϕ (t − iT − jT

c

) dt

iT + jTc

(or) L

= ∑ wl bl (i ) x lj + zl (i )

(5)

l =1

L

y (i ) = ∑ wl bl (i ) x l + z (i )

(6)

l =1

T

where

xl =  x0l , x1l ,..., xNl −1  =

T 1  p0l , p1l ,.., pNl −1  N is the normalized signature sequence of the l th T

user, and z (i) = [ z0 (i ), z1 (i),..., z N −1 (i )] is the channel ambient noise sample vector at the i th symbol

{

}

interval. The term z j (i ) is assumed as a sequence of independent and identically distributed (i.i.d.) random variables with a non Gaussian distribution. In this paper, the pdf of impulsive noise model is modeled as commonly used two-term Gaussian mixture model for the additive noise samples, {z j (i )}, which has the form f = (1 − ε )ϖ (0, v 2 ) + εϖ (0, κ v 2 )

(7) 2

with v > 0 , 0 ≤ ε ≤ 1 , and κ ≥ 1 . ϖ (0, v ) term represents the nominal background noise and the ϖ (0, κ v 2 ) term represents an impulsive component, with ε representing the probability of

126

Computer Science & Information Technology (CS & IT)

occurrence of impulses. This model serves as an approximation to the more fundamental Middleton Class A noise model and also has been used extensively to model physical noise arising in radio and acoustic channels [4,10, 11]. B. Extension to Asynchronous Case This algorithm is applicable for the users when they are symbol and chip asynchronous. After some algebra, asynchronous signal model given in (1) can be written as [5] y m (i ) = Η m Wm b m (i ) + z m (i )

(8)

where 0   H (1) H(0) ...  : ... ... :  Hm ≅   : ... ... :    H(1) H(0)  Nm×L ( m+1) ...  0

(9)

where Hm denotes the NM × L( M + 1) Hermitian cross correlation matrix of the composite waveforms associated with the symbols in b and the matrices H (0) and H (1) are defined as H(0)  H(1)  ≅ [h1 ... hL ]  

(10)

with  0ml   0ml +1      hl ≅ (1 − π l )  xl  + π l  xl  0 N −m  0N −m −1  l  l   

(11)

τ  τ ml =  l  & π l = l − ml T Tc  c and . The parameter m is called the smoothing factor and is chosen such H that the Sylvester matrix m has full column rank. If the signature waveforms of all users as well

as the relative delays are known to the receiver, then the Sylvester matrix H m can be constructed. Here, using PCA, principal components are calculated for received ym (i) as in eq(4) The output matrix is is found as the covariance matrix

Computer Science & Information Technology (CS & IT)

 y (1)  y (0) y=  y (−1)   M

y (t )  y (t − 1)  y (0) .... y (t − 2)   y (1)  M O

127

y (2) .... y (1) ....

C = Covariance(y)

(12)

(13)

C = U ΣV T

(14)

3. PRINCIPAL COMPONENT ANALYSIS ALGORITHM PCA is a technique which is generally used for reducing the dimensionality of multivariate data sets i.e. reducing the number of dimensions, without much loss of information .The covariance matrix of n random variables x is Σ, the principal components are defined as z = Ax Where A is n by n orthogonal matrix with rows of that are eigen vectors of covariance matrix as the rows of z is the vector of n principal components (PCs) . The Eigen values of Σ are proportional to the fraction of the total variance accounted for by the corresponding eigenvectors, so the PCs explaining most of the variance in the original variables can be identified. Regularly some of the original variables are correlated like a small group of the PCs describes a large space of the variance of the main data. The data matrix X of size m x n is considered as received signal.

X (t ) = [ x1 (t ), x1 (t ), x1 (t ),KK x1 (t )]

(15)

is the time ordered collection of a single matrix to which PCA can be applied. The means of the xi are removed and the covariance matrix computed by

∑ = 1  X X T  n

(16) ∑ is an m x m square matrix, Eigen values, and corresponding eigenvectors will be calculated, First eigenvectors are calculated from the covariance matrix, second step is to arrange them by Eigen values in descending order .This gives you the components in order of significance. The lesser Eigen values are ignored there by reducing the data. Principal components are ordered eigenvectors of the covariance matrix. The PCs were obtained using zj=aj x

j=1,2, …….n

The PCs are a linear transformation with transformation coefficients given by the eigenvectors . PCA is solved by using covariance matrix and singular value decomposition (SVD) methods.

128

Computer Science & Information Technology (CS & IT)

T Let X be an arbitrary n × m matrix and X X . be a rank r, square, symmetric m × m matrix. {vˆ1 , vˆ2 , vˆ3 ...... vˆr } is the set of orthonormal m×1 eigenvectors with associated eigenvalues for

{λ1 , λ2 , λ3 ,...... λr } the symmetric matrix X T X .

( X T X ) vˆi = λi vˆi

(17)

σ i = λi

are positive, real and named as the singular values 1 {uˆ1 , uˆ2 , uˆ3 ......uˆr } is the group of n×1 vectors defined by uˆi = σ i [ X vˆi ]

1 i = j uˆi uˆ j =  0 i ≠ j Eigenvectors are orthonormal.

(18)

X vˆi = σ i The scalar expansion of SVD is

X vˆi = σ i uˆi T X multiplied by an eigenvector of X X .is equal to a scalar times another vector. The set of eigenvectors {vˆ1 , vˆ2 , vˆ3 ...... vˆr } and the set of vectors are {uˆ1 , uˆ2 , uˆ3 ......uˆr } both orthonormal sets and bases in r dimensional space.

K σ1  O ∑= M  σ γ%  L 0

0  M   0 

(19)

σ 1 ≥ σ 2 ≥ σ 3 K ≥ σ γ%

are the rank-ordered set of singular values. Likewise we construct accompanying orthogonal matrices,

V = [ vˆ1 , vˆ2 , vˆ3 ...... vˆr ]

(20)

U = [uˆ1 , uˆ2 , uˆ3 ...... uˆr ]

(21)

Matrix expansion of SVD

XV = U ∑

(22)

Computer Science & Information Technology (CS & IT)

129

where each column of V and U perform the scalar version of the decomposition (Equation 3). Because V is orthogonal, we can multiply both sides by V−1 = ܸ ் to arrive at the final form of the decomposition.

XV = U ∑ V T Implementation of PCA is as follows The description of PCA using the covariance method is as follows: The purpose is to transform one data set X of dimension M to an another data set Y of smaller dimension L. Step 1: Get some data and organize the data set. Step 2: Subtract the mean: For better performance of PCA , subtract the mean from each of the data dimensions. The mean subtracted is equal to the average across each dimension. Step 3: Calculate the covariance matrix. Step 4: Calculate the eigenvectors and Eigen values of the covariance matrix. Step 5: Choosing components and forming a feature vector: The eigenvector containing the maximum Eigen value is considered as the principle component of the data set. Feature Vector = (eig1, eig2, eig3, eig4,………………, eign) . Step 6: Deriving the new data set:

4. EXPERIMENTAL RESULTS In simulations, first a synchronous system with 6 users is considered. The spreading sequence of each user with length 31 is considered (as shown in the following experiments). Figure 1(a-f) shows the bit error rate and signal to noise ratio comparisions for 6 different users which are estimated using corresponding principal componets. And the received users powers are all equal for the considered detectors (i.e., in the case of tight power control). The noise distribution parameters for are fixed as ε = 0.01& 0.1 and κ = 100 , respectively. These plots demonstrate the performance gains achieved by the robust blind multiuser detector with PCA in impulsive noise. Next, an asynchronous system with 6 users and the noise distribution parameters ε =0.01 & 0.1 and κ = 100 are considered. The delays of the 6 users are randomly generated. Fig 1( a-f) show the transmitter and estimated symbols for user 1.and Fig 2 show the BER for 6 different users with different Principal compon. Fig 3. Shows the details of transmitted and received symbols for of user one. Fig 4 gives the details of proposed method and subspace method. It is observed from these plots that the robust blind multiuser detector with the proposed PCA technique outperforms the traditional subspace method based linear MMSE detector in impulsive noise. The performance gain increases as the SNR increased.

130

Computer Science & Information Technology (CS & IT) 10

0

10

0

-1

BER

BER

10

10

-1

-2

10

-3

10

-10

-5

0

5

10

10

15

-2

-10

-8

-6

-4

-2

0 SNR

SNR

(a)

2

4

6

8

10

(b)

0

10

10

-1

10

-1

BER

BER

10

0

10

-2

10

10

-3

10

-10

-5

0

5

10

-2

-3

-10

-5

0

5

10

15

SNR

15

SNR

(c)

(d)

0

10

0

10

-1

BE R

BER

10

-1

10

-2

10

-3

10

-10

-2

-5

0

5

10

10

15

-10

-8

-6

-4

SNR

(e)

-2

0 SNR

2

4

6

8

10

(f)

Fig 1. BER and SNR Plots for different users using first 6 Principal Components 10

user1 user2 user3 user4 user5 user6

-1

BER

10

0

10

10

-2

-3

-10

-5

0

5

10

15

SNR

Fig 2 BER for 6 different users with different Principal components

Computer Science & Information Technology (CS & IT) Transmitted Symbols of User 1

Received Noisy Signals 10 Im ag

Im ag

2 0

-2 -2

-1

0 1 2 Real Equalized symbols of User 1

0

-10 -10

-5

0 5 10 Real Scaled Equalized Symbols

2 Im ag

Im ag

5 0

-5 -4

131

-2

0 Real

2

4

0

-2 -2

-1

0 Real

1

2

Fig 3. Transmitted and received symbols for user 1

5. CONCLUSIONS In this paper, Multiuser detection has been done using principal components in asynchronous non-Gaussian channels is proposed and analyzed. Even the process of computing principal components is complex, simulation results show that the robust blind multiuser detector with the proposed PCA technique outperforms the traditional subspace method based linear MMSE detector in both synchronous and asynchronous CDMA non-Gaussian channels. REFERENCES [1] [2]

S. Verdu, Multiuser Detection, Cambridge University Press, Cambridge, 1998. E. Moulines, P. Duhamel, J. Cardoso, and S. Mayrargue, “Subspace Methods for the Blind Identification Multichannel FIR filters,” IEEE Trans. on Signal Processing, vol. 43, pp. 516-525, Feb 1995. [3] B.Yang, “Projection Approximation Subspace Tracking,” IEEE Trans. on Signal Processing, vol. 43, pp. 95-107, Jan 1995. [4] T.AnilKumar and K.DeerghaRao, “ Improved Robust Technique for Multiuser Detection in NonGuassian Channels”, Circuits Systems and Signal Processing,vol 25,No 4,2006. [5] X.Wang and H.V.Poor, “Robust Multiuser Detection in Non-Guassian Channels”, IEEE Trans. On Signal Processing, vol. 47, pp. 289-305,Feb,1999. [6] G.W.Stewart, “An Updating Algorithm for Subspace Tracking”, IEEE Trans. On Signal Processing, vol. 40., pp. 1535-1541, June 1992 [7] U. Madhow and M.L. Honig. MMSE Interference Suppression for Direct-Sequence Spread-Spectrum CDMA. IEEE Trans. Communications, Vol. 42, No. 12, pp. 3188-3188, Dec. 1994. [8] J.B. Schodorf and D.B. Williams. Array Processing Techniques for Multiuser Detection. IEEE Trans. Communications, Vol. 45, No. 11, pp. 1375 -1378, November 1997. [9] M. Aminghafari, N. cheze, J.M Poggi,”Multivariate denoisious using wavlets and principal component Analysis,” computational statistics & Data Analsis, vol. 50 pp. 2381-2398, 2006 [10] ROBUST MIMO-CDMA DECORRELATING DETECTOR Hasan Abuhilal, Aykut Ho-canin and Huseyin Bilgekul Department of Electrical and Electronic Engineering Eastern Mediterranean University, Gazimagosa, via Mersin 10, Turkey [11] R.Nirmaladevi,T.Anilkumar,K.K.Rao” Improved adaptive algorithm for blind multiuser detection in non gaussian noise” ISPPA2010Kuala Lumpur, Malaysia, 10-13 May, 2010. IEEE , ISBN 978-14244-7165-2, 270-273

AN ACCESS CONTROL MODEL OF VIRTUAL MACHINE SECURITY QIN Zhong-yuan1,3, CHEN Qi2, LV You2, QIANG Yong2, GUO Ai-wen2, SHEN Ri-sheng1,3, Zhang Qunfang4 1

Information Science and Engineering School, Southeast University, Nanjing 210096, China 2 Wu Jainxiong Department, Southeast University, Nanjing, Jiangsu 210096, China 3 Key Lab of Information Network Security, Ministry of Public Security, Shanghai 201204, China 4 Computer Department, Nanjing Institute of Artillery Corps , Nanjing, Jiangsu, China

ABSTRACT Virtualization technology becomes a hot IT technology with the popu-larity of Cloud Computing. However, new security issues arise with it. Specifically, the resources sharing and data communication in virtual machines are most concerned. In this paper an access control model is proposed which combines the Chinese Wall and BLP model. BLP multi-level security model is introduced with corresponding improvement based on PCW (Prioritized Chinese Wall) security model. This model can be used to safely control the resources and event behaviors in virtual machines. Experimental results show its effectiveness and safety.

1. INTRODUCTION As one of the key technologies of cloud computing, virtualization has been widely used, this makes the security problem of virtual machines (VM) more and more prominent [1]. Compared to traditional computer systems, virtual machines will meet more security threats; the threats come not only from outside, but also from inside, which are caused by the characteristics of the virtual machine system [2-4]. Nowadays the internal threats increasingly aroused academia and industry interests. The main internal threats include communication attacks between virtual machines, denial of service and information leakage, etc. Communication attack is a kind of attacks that attackers implant code and attack through the process, shared memory or memory error, which is also called covert channels. There is no satisfied solution for this problem in the industry yet [5-7]. Denial of service makes the computer resources cannot be allocated to the target machine if the malicious VM apply for resources unlimitedly.

Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 133–145, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3414

134

Computer Science & Information Technology (CS & IT)

The information leakage can happen in the following two situations: (1) The attackers transmit data through covert channels, such as using the time delay between cache miss detection in the CPUs which share the same cache, such attacks usually have some alliance relations, they achieve key data transmission by using the system holes through consultations. (2) The attackers use the resource shared between different VMs, such as shared memory or CPU, to steal information. This kind of data leakage will not cause damage to the system or data to the virtual machine system, but if the VM running in upper layer is a server which contains critical data, the leakage of such information can bring serious risks. Usually the operation of the virtual machine is controlled by the Virtual Machine Monitor (VMM, also known as Hypervisor). Secure hypervisor can realize the resource isolation, data security, communication security and integrity of their code. Representative work is the IBM’s hypervisor architecture: sHype [8]. It uses security model to control system processes, memory access and isolation of internal resources through access control module (ACM). But when the Chinese Wall policy is adopted to prevent the hidden stream passing through different virtual machines, sHype statically divide the different conflict resources into different access area, as a result the resource utilization is reduced [9]. Cheng et al proposed a Chinese Wall model with a priority (Prioritized Chinese Wall, PCW) [10] to reduce the risk of the hidden information flow in a virtual machine system. Based on the previous work, especially sHype and PCW architecture, we propose an access control model suitable to virtual machine environment, and we also verify the model in Xen. The main contributions of this paper are: 1. An access control security model of virtual machines is proposed, it introduces the BLP(Belllapadula) model on the basis of the PCW model to control the memory sharing among virtual machines and maintain the CW model to manage the virtual machine start. 2. The BLP model is improved, the control range of trusted subjects and security level are added. 3. We implement a prototype for the security model, three strategies are used to realize the security model. Results show the effectiveness of the proposed model.

2. MODEL ANALYSIS 2.1 Analysis of virtual machine access control model In 2005 IBM proposed sHype, which is a security architecture used to control the information flow between the operating systems that share the same hardware platform and it can achieve the controlled sharing of resources between virtual machines. Xen virtual machines adopted the core idea of sHype that it set an ACM module in the virtual layer and implemented two security policies [11]: Chinese Wall (CW) [12] and Simple Type Enforcement (STE). Its main objectives are: (1) Management of the communication between two virtual machines in the same system; (2) Management of the hardware resources that virtual machine can access; (3) Multiple virtual machines in the same conflict set of interest cannot be run at the same time, this reduced the occurrence of the convert channel. While the CW strategy can prevent virtual machines have conflict of interest running at the same time in the same VMM, the STE policies can control whether communications can happen between different virtual machines and the hardware resources virtual machines can access.

Computer Science & Information Technology (CS & IT)

135

CW and STE both have significant advantages on the control and distribution of resources, which is the main reason why Mandatory Access Control (MAC) method can be well applied in VMs. However, CW and STE also have many limitations, which mainly reflected in that they cannot prevent the covert channel; an attacker can easily take advantage of shared resources or thirdparty virtual machine for data transfer. Ge Cheng, Hai Jin et al proposed the PCW strategy model [10], which is based on the Chinese Wall security policy, but it is also different with the sHype’s CW strategy, i.e., the relationship of conflict sets is no longer static, but can be extented along with the flow of information. This model can prevent the convert channel effectively, however, the following defects also existed: 1. PCW model is so strict that it greatly reduced the resource utilization of virtual machine, which is contrary to the original goal of virtual machine design, and there is also a possibility of system deadlock that a virtual machine may never get a chance to run because of dynamic conflict set of interest unless you restart the system. 2. PCW is only limited to isolated control of virtual machine resource allocation, that is, either access or refused, but this does not match the actual requirements. Virtual machine is equivalent to a computer group, there are two conflicts between the virtual machines in this group, one is the resource request and the other is access rights. But restrictions on access rights cannot be strictly isolated. For example, FTP service, when there is a conflict between the host and client access rights, the host can set the access rights of the client, limit the client’s read and write permissions so that client can operate within its scope, but PCW can only permit or deny which cannot fit this demand.

2.2 BLP model and its improvement From above, we can see that the CW and PCW conflict sets cannot fully meet the security needs of the virtual machine. In order to solve the problem from the security of the whole system, we introduce another model: BLP multi-level security model. In our model, BLP will be used to control the memory sharing of virtual machine, it also manage the CW model to control the start of virtual machine. Considering the PCW can effectively prevent the covert channel threats brought by the communication and CPU resource sharing of virtual machine. Therefore, CW, PCW and BLP will simultaneously exist in our model. We have made some improvements on the BLP to better meet the system requirements. BLP model was proposed for the U.S. military in the 1970s to solve the information security and confidentiality problems of time-division system, the model is mainly used to prevent confidential information to be accessed by unauthorized subject [13]. In BLP model, set L( s) = ls as security permissions of subject s , set l (o) = lo as sensitivity level of object o and for all the security levels l i ( i = 0,1,……,k − 1, li < li +1 )

,there are three access and control rules:

1. Independent safety features: the subject s has discretionary access permissions on the object o . 2. Simple safety conditions: the subject s can perform read operation on object o , if and only if lo < ls , s has autonomous read permissions on o .

136

Computer Science & Information Technology (CS & IT)

3. *-properties: subject s can perform write operation on object o , if and only if lo > ls , s have autonomous read permissions on o . Considering the special features of VMs, we made the following improvements on BLP: 1. The trusted subject is added BLP model’s strict confidentiality brings the system a lot of restrictions, e.g., any virtual machine can communicate only based on the security level, however, some special virtual machines need to exchange information unconditionally. Therefore, we add a trusted subject, which can go beyond the BLP model’s strict security level system and exchange information with the target object. We make a limitation that trusted subject cannot exchange malicious objects with other objects, i.e., a trusted subject cannot be served as malicious object transfer medium. 2. Control of the security level’s range In the conventional implementation of BLP axiom, a subject’s sensitive level is fixed in its entire life cycle. The system set a security level for each VM, but it does not mean that all the virtual machine of higher security level have read permission on those of lower security level, because it does not meet the actual service’s demand. Therefore, there is a need to set a zone classification for the security level. There are multi-level security data streams in a security zone, while it does not exist in the different zones. In this way the flow of data between the virtual machines in different security levels can be controlled according to system requirements.

3. MODEL DESIGN AND SECURITY ANALYSIS 3.1 Model Design In our model we assume that the security levels of all the virtual machines are in the same zone, meanwhile virtual machines have independent access rights to the resource allocated by the system, that is, the subject and object both meet the discretionary access permissions. We present the Virtual machine Based Access Control model (VBAC), which is defined as follows: 1. Model elements • Subject and object elements Subject set S :{s1 , s2 ,……, sm} , defined as an object which sends access request, Object set O :{o1 , o2 ,……, om } , defined as an object is accessed. In the virtual machine system, both VM and system resources are likely to become one of subject or objects;

: T (s) :{s | s is trusted and s ∈ S};

Trusted subject set

• Access characteristic and request decision sequence Access characteristic (AC) contains memory read and write: {read , read | write} , memory transfer: {mem − tranfer} , VM label {addlabel , rmlabel} , resource apply and release: {apply, release} , VM create and destroy: {create, destroy} , VM start and stop: {start , stop} , communication apply and



Computer Science & Information Technology (CS & IT)

137

release: {com − apply , com − release} , security level adjustment: {level ( Lu ) | Lu is the new sec urity level} ; The state set of the virtual machine

:State(o){running,stop,sleep};

System security level F: security category, f1 and f2 represent subject’s and object’s security level respectively, f3 and f4 represent category; Request set R : S + × O × X , S + = S ∪ {φ } , X = AC ∪ {φ} ∪ F , request element is Ri :{Ri | Ri ∈ R, i ≥ 0}; Security Decision set D:{yes,no,error,?}, its element is Dj :{Dj | Dj ∈ D, j ≥ 0}, which is the decision of request Rj ; Request sequence X : RT , which represents the request sequence at different time, request element is x xt represent the request at time t;



Decision sequence Y : DT , it’s the decision sequence set which security policy responses to the request sequence, decision element is denoted as y, yt represents the decision at time t; • The conflicts set and access matrix The conflicts interest set: CIS(o), the data set which has interest conflict with object o, element CISt(o) represents the conflict relation set of o at time t; conflict zone: RC, all the elements in a conflict set belong to the corresponding conflict zone, that is ∀s ∈ CIS(s), s ∈ RC ; if s is not included in any conflict set, ¬ ∃s`∈ S , s ∈ CIS ( s`) , it’s the same to say s belongs to no conflict zone, then define s ∉ RC ;

System access matrix A: (S×O), it’s used to record the access memory of the subjects and objects controlled by the system, matrix element At ( si , o j ) represents the access matrix at time t, At → {−1,0,1} ,1 represents that si had accessed oj, 0 represents that it’s still not decided and will

change with decision Dt ( si , o j , x ) , -1 represents that it cannot be accessed .A0 is the initial access matrix. • System state and system Present access set: P ( S × O × AC ) ; System state V: P ( S × O × AC ) × A × F ; State sequence Z : V T is the state sequence, state element is denoted as z, zt represent the state of time t; z0 is the initial state, usually regard initial state of system as safe.

138

Computer Science & Information Technology (CS & IT)

State shift: W ⊆ R × D × V × V represent a state shift to another state after request and decide; SYM : ∑ ( R , D , W , z 0 ) ⊆ X × Y × Z , ( x , y , z ) ∈ SYM , only at any time

t ∈ T ( xt , yt , zt , zt −1 ) ∈W ;

2. Model rules To implement the security control of the system, the subjects and objects of the virtual machine system is defined as the safety rules below. In B1, B4, B5, B6, B7, B8, B9, and B10, subjects and objects are VMs, but in other rules the subjects are virtual machine and the objects are the hardware resources. Rule B1: The subject add a label or remove a label , Rt ( s, o, addlabel ) | Rt ( s, o, rmlabel ) Rt ( s, o, addlabel ) | Rt ( s, o, rmlabel ) is permitted only when s ∈T (s) , that is, the subject is a trusted

subject. Rule B2: The subjects apply for resource, Rt ( s, o, apply ) Rt ( s, o, apply ) is permitted only when the following condition is satisfied.

1. At ( s, o) ≠ 1 , s had never accessed o before t; 2. There’s no other subject is accessing o at t; 3. ∀s ' ≠ s : At (s ', o) = 1 ∧ ∀o ' ∈ CISt +1 (o) : At (s ', o ') ≠ 1 , the subjects had accessed o will not be conflicted with s . Rule B3: Subjects release resources, Rt ( s, o, release) Rt ( s, o, release) is permitted only when state( s) = stop , that is, the subject is stopped.

Rule B4: Subjects create and destroy the objects, Rt ( s, o, create | destroy) Rt ( s, o, create | destroy ) is permitted only when s ∈T (s) ;

Rule B5: Subjects start the objects, Rt ( s, o, start )



Rt ( s, o, start ) is permitted only when: s ∈ T ( s ) and ∀o` Dt (o, o`, apply ) = 1 , that is, all the

resources applied by the client is permitted by Rule 2; ∀s ' | ( state( s ') = running ) ^ ( state( s ') = sleep ), o ∉ CIS ( s ') , the object is not conflicted with the VMs which is running or suspended.



Rule B6 The subjects stop the objects, Rt ( s, o, stop ) Rt ( s, o, stop ) is permitted only when s ∈ T ( s) .

Computer Science & Information Technology (CS & IT)

139

Rule B7: The subjects communicate with the objects, Rt ( s, o, com − apply) Rt ( s, o, com − apply ) is permitted only when:

1. s ∉ RC || o ∉ RC , that is, s and o don’t belongs to any conflict set; 2. s ∉ CIS ( o) || o ∉ CIS ( s ) , that is, the two sides of communication aren’t in the same conflict set. Rule B8: The subjects release communication, Rt ( s, o, com − release) Rt ( s, o, com − release) is permitted only when Dt ( s, o, com − apply ) =1, that is, if the communicating

rules between s and o fit B7 and get permission, release communication is always permitted. Rule B9: The subjects adjust the security level, Rt (s, o, level ( Ln )) Rt (s, o, level ( Ln )) is permitted only when s ∈T (s) ^ (state(o) = stop) ,that is, s is trusted subjects and

the client is not running. Rule B10: The subjects apply for memory transfer from the objects, Rt ( s, o, mem − tranfer ) Rt (s, o, mem − tranfer ) is permitted only when ( f1( s) > f2 (o) ^ f3( s) ⊇ f4 (o)) || ( s ∈T (s)) ; that is, the subjects

dominate the object or the subject is trusted subject. Rule B11: The subjects only read the mapped memory, Rt (s, o, readonly − map) Rt ( s, o, readonly − map) is permitted only when: ( f1(s) > f2(o)^ f3(s) ⊇ f4(o))||(s ∈T(s)) , that is, the subjects

dominate the object or the subject is trusted subject. Rule B12: The subjects read or write the mapped memory, Rt ( s, o, read | write) Rt ( s, o, read | write) is permitted only when:

{( f1(s) = f2(o)) ^[ f3(s) ⊇ f4(o) || f4 (s) ⊇ f3(o)]}||(s ∈T(s)) , that is, the two sides of read and write are at the same security level. Conflict set expansion theorem: 1. If Rt(s,o,apply) fit B2, then: a) If (∀s1 ∈ SYM , s ∈ CISt (s1 )) ^ (∃s2 ∈ SYM , A( s2 , o) = 1) , let A( s, o) = 1 , expand the conflict set of

s2 as: CIS ( s2 ) =

U

s1

s2 ≠ s1 | A( s2 ,o ) =1

b) If (∀s1 ∈ SYM , s ∉ CISt ( s1 )) ^ (¬ ∃s2 ∈ SYM , A(s2 , o) = 1) , then only let A( s, o) = 1 ,that is, if s is not in any conflict set and o was never accessed by any object, we only need to modify the access history matrix A;

140

Computer Science & Information Technology (CS & IT)

(2) If Rt ( s, o, com − apply ) fits B7, then: a) If s ∉ RC || o ∉ RC ( s or o doesn’t belong to any conflict set, then expand the conflict set: CIS (o) = U s, s ∉ RC ^ o ∈ CIS (o)    s≠o    CIS ( s) = U o, o ∉ RC ^ s ∈ CIS ( s )  o≠s    do _ nothing , o ∉ RC ^ s ∉ RC   

b) s ∉ CIS (o) || o ∉ CIS (s) , if the two sides of communication aren’t in a same conflict set, expand any of them: CIS ( s) = U CIS (o) s ≠o

So, ∃(s1 , s2 ,K, sN ),( D(s1 , s2 , com − apply) = 1) ^ ( D(s2 , s3 , com − apply) = 1) ^(……) ^ ( D(sN −1 , sN , com − apply) = 1)

,will expand all conflict sets of s (1 ≤ i ≤ N ) : i

2≤i ≤ N

CIS ( s1 ) =

U

si

si ≠ s1

By symmetry and transitivity, we can be obtained that all the subjects of direct or indirect communication will in a same conflict set, which is the previously mentioned Alliance of conflict set.

3.2 VBAC model security analysis In VBAC model, rule B1 to B8 of VBAC adopt the core ideas of CW’s conflict set; B9 to B12 adopt the multi-level security idea of BLP. We assume that the initial system state is safe in a conflict of interest and secure confidentiality. Rule B2, B3 control resource allocation, in full compliance with the idea of conflict isolation, meet CW’s simple security features to ensure there’s no information disclosure on the resource allocation. Rule B7, B8 control event channels between virtual machines by CW’s idea, event channel is a technical core of the virtual machine, as semaphore mechanism of the traditional system. Many virtual machine behaviors are based on the event channel, if the control is too strict, the availability of the virtual machine will be affected, so the control of event channel need to be set in accordance with the secure requirements of the system. There are a third party covert channel in Rule B2, B3, B7, B8, the conflict set expansion theorem is proposed to solve this problem and eliminates the third-party security risks well. The model rules B9 B12 control the virtual machine resource sharing and communication problems by idea of BLP, rule B10, B11, B12 meet the security features of the multi-level security system, thus, the system conversion will limited by B9 to B12 to ensure the confidentiality.

Computer Science & Information Technology (CS & IT)

141

From the model, we can better avoid information leakage caused by system resource allocation, as well as better control of third-party covert channel of virtual machines.

4. IMPLEMENTATION AND EXPERIMENT RESULTS In the implement, we divide the virtual machine-based access control model into three parts: the main strategy, the second strategy, the third strategy. The secure control strategy is realized through the cooperation of three strategies. (1) The main strategy primary policy: It implemented the conflict set model, used core idea of CW and is responsible for create, start and destroy of the virtual machine. The strategy is based on virtual machine and follows VBAC model’s Rule B1, B4, B5, B6; (2) The second strategy second policy: In Xen, resource control and event channel management uses STE model, we also use this security model. STE adopted CW’s idea of interest conflict set, it is responsible for application, allocation, revocation of virtual hardware resources, and the event channel management, in the model proposed in this paper, it will follow the VBAC model’s rule of B1, B2, B3, B7, B8, as well as the conflict set expansion theorem; (3) The third strategy third policy: The third strategy controls the multi-level secure communications between virtual machines; it adopted the core idea of the BLP, and is responsible for managing memory sharing, data transfer and other issues. It follows the VBAC model rule B9, B10, B11, B12.

4.1 Test Results 1. Memory management test In our experiment the PC’s physical memory is 4GB, that is, number of pages in the memory space: 4G/4KB = 1M. Test scenarios of memory access control are as follows: create three VMs Dom1, Dom2, Dom3, configuration information for each VM memory is: memory 512MB for Dom1, memory 256MB for Dom2, and 256MB for Dom3. (1) Scheme 1: test if there is conflict relationship between Dom1 and Dom2; These two virtual machines are allocated memory space respectively. The test procedure is as follows: ① Both Dom1 and Dom2 were not set a security type, after starting Dom1 detect the memory space allocated by Xen; ②close Dom1, then start Dom2 and detect memory space allocated by Xen. We get memory allocation of Dom1 and Dom2 through Xentrace tools and debug-keys in Xm as shown in Figure 1. In figure 1, the vertical axis represents the time axis, the horizontal axis represents the number of pages, and experimental machine has 4GB physical memory or memory pages 1M, so the maximum memory page number is 1048576. In the Xen virtual machine system, Xen occupied the starting 64MB memory space, as the red region shown in the figure; after start of the Domain0, all the other memory was managed by Domain0 and it got a memory allocation of 131,072, as the green region shown; When start Dom1, it was allocated a memory of 65536

142

Computer Science & Information Technology (CS & IT)

pages, its page space is the yellow region shown in Figure1, after closing Dom1, Dom1’s memory page was recovered; so when starting Dom2, Domain0 allocate memory for it in-memory heap, as the black region shown in the figure. We can conclude from the data that Dom2 and Dom1 can share memory pages.

Fig. 1. Control of Memory resource test results (2) Scheme 2: Test the memory space which is allocated for the virtual machine of same conflict set. The test procedure is as follows:Label the Dom1 with security type "A", and label the Dom2 with Close "B", after switch on the Dom1, test the memory address segment assigned to Xen; Dom1, switch on Dom2 ,examine the memory page status allocated for Dom2 . Figure 2 shows the results of scheme 2. In the design of scheme, there are some conflict of interests between Dom1, and Dom2.



Thus, despite Domain0 recover its memory after Dom1 is closed, the type of access has been recorded in memory by the history array. The memory page used by Dom1 cannot be assigned to Dom2 when allocating memory pages for Dom2 because the conflict relationship mentioned above. The memory page used by Dom1 is marked in yellow, page of memory allocated for Dom2 is marked in bright blue, from the statistics, we find that there is no shared memory page in Dom1 and Dom2. (3) Scheme 3: Test the influence that conflict set expansion theorem may have on memory allocation. In order to achieve the expected results, we set memory configuration of Dom1 to 512MB, the memory of Dom2 and Dom3 to 256MB. The test procedure is as follows: Set all the array which contain memory usage history to 0, the Dom1 with security label "A" , Dom2 with security label "C", examine the memory address ranges assigned to Xen after switched on Dom1; ② Close Dom1 and switch on Dom2, test status of memory page allocated for Dom2; ③ create Dom3 which is set with security label "E" , then close Dom2 and switch Dom , test status of memory page allocated for Dom3.

Computer Science & Information Technology (CS & IT)

143

Fig. 2. Result of memory resources control test in scheme 2 Three memory allocation of the test scheme 3 is shown in Figure 3. 131,072 memory pages used by Dom1 are marked in yellow, Dom2 represent memory pages for Dom1 which is allocated by Domain0 after Dom1 is closed; in the scheme, there are some conflict between Dom2 and Dom3, for they had shared the same memory page. According to conflict set expansion theorem, they had the same type of conflict. Thus memory page used by Dom1 cannot be assigned to Dom3, In Figure3 memory allocated for Dom3 is marked in bright blue.

Fig. 3. Result of memory resources control test in scheme 3

4.2 Result analysis From the test data and result analysis, we find the proposed security model has the following several characteristics: (1) High safety. In the section about security and effectiveness in this paper, the safety of virtual machine management, event channel, resource management and shared memory access control have been tested. Results show that the virtual machine management control accord with the requirement of CW set model of interest conflict; Resource management and event channel control can get the effective control through extended definition of conflict set; the control to memory shared follows multistage safety control rules of VBAC model which has been mentioned in this paper.

144

Computer Science & Information Technology (CS & IT)

(2) Less space overhead. In access control module, the security level and conflict set type stored in arrays after the mapping, the size of strategy information cache array is decided by security type number M and virtual machine number N. Assuming that each array element occupied 1 Byte, then the array of strategy information will occupy M * N Bytes totally. In resource controlling, the largest overhead comes from the memory pages. In order to reduce the cost of the space, we adopt the Bit-map storage, which has greatly reduced the space overhead. (3) Existence of time performance loss. From the testing process, we can see that performance loss in access control are mainly caused by memory allocation, because a lot of memory page need to be allocated every time when the system starts, and each allocation will cause reading and decision of model information, thus a certain period of time loss happened.

5. SUMMARY Virtual machine is one of the key technologies of cloud computing, but there exist many attacks to the virtual machine. According to the internal safety problems of virtual machine, we propose a novel access control model which is suitable for virtual machine environment. On the basis of PCW security model, we introduced the BLP multilevel security model, and make corresponding improvements of BLP. The performance and space overhead are ananlyzed. The simulation results show that the proposed model is feasible and secure.

ACKNOWLEDGMENTS This work is supported by the Key Lab of Information Network Security, the Ministry of Public Security and Information Security Special fund of National Development and Reform Commission (Project name: Development of Security test service capabilities in wireless intelligent terminals).

REFERENCES [1] [2] [3] [4]

[5] [6]

Feng DG, Zhang M, Zhang Y, Xu Z. Study on cloud computing security[J]. Journal of Software, 2011,22(1):71-83. Wang, Z.,X.X. Jiang. HyperSafe: A Lightweight Approach to Provide Lifetime Hyper-visor ControlFlow Integrity[C]. 2010 IEEE Symposium on Security and Privacy, 2010:380-395. Salaun, M. Practical overview of a Xen covert channel[J]. Journal in Computer Virology, 2010, 6(4): 317-328. Liu, Q., G.H. Wang, C.L. Weng, et al. A Mandatory Access Control Framework in Vir-tual Machine System with Respect to Multi-level Security II: Implementation[J]. China Communications, 2011, 8(2): 86-94. Ranjith, P., C. Priya,K. Shalini. On covert channels between virtual machines[J]. Journal in Computer Virology, 2012, 8(3): 85-97. Okamura, K.,Y. Oyama. Load-based covert channels between Xen virtual machines[C]. 25th Annual ACM Symposium on Applied Computing, Sierre, Switzerland, 2010:173-180.

Computer Science & Information Technology (CS & IT) [7]

[8] [9] [10]

[11] [12] [13]

145

JingZheng, W., D. Liping, W. Yongji, et al. Identification and Evaluation of Sharing Memory Covert Timing Channel in Xen Virtual Machines[C]. 2011 IEEE 4th Interna-tional Conference on Cloud Computing (CLOUD 2011), Los Alamitos, CA, USA, 2011:283-91. R. Sailer, E.V., T. Jaeger, R. Perez, L. van Doorn, J. L. Griffin, and S. Berger. .sHype: Secure Hypervisor approach to trusted virtualized systems, Yorktown Heights, NY, USA:2005. CHENG Ge, JIN Hai, ZOU De-qing, ZHAO Feng. Chinese wall model based on dy-namic alliance[J]. Journal on Communications, 2009, 30(11): 93-100. Cheng, G., H. Jin, D.Q. Zou, et al. A Prioritized Chinese Wall Model for Managing the Covert Information Flows in Virtual Machine Systems[M]. Proceedings of the 9th In-ternational Conference for Young Computer Scientists, Vols 1-5, ed. G.J. Wang, et al.Los Alamitos: Ieee Computer Soc,2008. Shi Nei, Zou Deqing, Jin hai. Xen Virtualize technology [M]. Wu han: Huazhong Uni-versity of Science and Technology Press,2009. Foley, S.N. Building Chinese walls in standard unix(TM)[J]. Computers & Security, 1997, 16(6): 551-563. Gansen, Z.,D.W. Chadwick. On the modeling of Bell-LaPadula security policies using RBAC[C]. 2008 IEEE 17th Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises., Piscataway, NJ, USA, 2008:257-62.

ENHANCING KEYWORD SEARCH OVER RELATIONAL DATABASES USING ONTOLOGIES Ahmed Elsayed1, Ahmed Sharaf Eldin1, Doaa S. El Zanfaly1, 2 1

Information Systems Department, Faculty of Computers and Information, Helwan University, Cairo, Egypt [email protected], [email protected], [email protected]

2

Informatics and Computer Scinence, British University in Egypt, Cairo, Egypt [email protected]

ABSTRACT Keyword Search Over Relational Databases (KSORDB) provides an easy way for casual users to access relational databases using a set of keywords. Although much research has been done and several prototypes have been developed recently, most of this research implements exact (also called syntactic or keyword) match. So, if there is a vocabulary mismatch, the user cannot get an answer although the database may contain relevant data. In this paper we propose a system that overcomes this issue. Our system extends existing schema-free KSORDB systems with semantic match features. So, if there were no or very few answers, our system exploits domain ontology to progressively return related terms that can be used to retrieve more relevant answers to user.

1. INTRODUCTION A significant amount of plain text and structured data has been stored side by side in relational databases for decades. In order to query this data, users have to know the database schema and then use Structure Query Language (SQL) to issue a precise, unambiguous and well-formed query. To relieve users from doing this, Keyword Search over Relational Database (KSORDB) enables casual users to query this data using a set of keywords called keyword query. Existing KSORDB approaches can be categorized into two main categories: Schema-based approaches [1-3] and Schema-free approach [4-7]. In order to process a keyword query, the schema-based approach uses the schema graph to generate Candidate Network (CNs) and then evaluate these networks using SQL queries. While in the second approach, schema-free, the database is modeled as a data graph where nodes are tuples and edges are foreign - primary key relationships. The graph is then traversed, at the query time, to answer keyword queries. The main difficulties with the schema-based KSORDB systems are in generating optimal SQL queries from a huge number of CNs. Moreover, the generated queries usually contain many join Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 147–154, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3415

148

Computer Science & Information Technology (CS & IT)

operations which are characterized by complex processing and time consumption features. Schema-free KSORDB systems have three main drawbacks: First, they are not efficient for large size databases as they consume the memory in materializing and processing the data graph. Second, the data graph should be updated each time the underlying database is updated; therefore, this model is not appropriate for databases that change frequently. Third, traversing a huge data graph to find minimum Steiner trees is proved to be an NP-hard problem [8]. Furthermore, both KSORDB approaches implement exact keyword matching without exploiting the semantic relationships, such as such as meronym, hyponymy, and antonym, between keywords to find the correlated data. In Information Retrieval (IR) community, Ontology is used to support semantic matching. “An ontology is an explicit specification of a conceptualization” [9]. Therefore, ontology is used to relate concepts in a specific domain. Keyword search over relational database techniques can exploit ontology to support semantic matching. In this paper a KSORDB system based on the schema-free approach is proposed. The system does not need to maintain a whole data graph in memory as it pre-computes and materializes the connectivity information offline in a data structure called reachability index. In addition, the proposed system also supports the semantic matching by exploiting the structure of domain ontology. The rest of this paper is organized as follows: section 2 discusses related work. Whereas, section 3 describes the proposed system architecture. A review of Ontology-based semantic similarity methods is given in section 4. Finally, section 5 discusses the performance and enhancement expectation of the proposed system

2. RELATED WORK Extensive work has been done in the area of keyword search over relational database. This work can be categorized into two main categories according to the data models they adopted: Schemabased approaches [1-3] and Schema-free approaches [4-6]. The former use schema graph information to compute the results. DBXplorer [1] exploits the database schema to find Candidate Networks (join trees) connecting all of the potential tuples that collectively contain the query keywords. DISCOVER [2] also uses the database schema to generate candidate networks. Then both systems leverage Database Management System (DBMS) to evaluate the CNs using SQL join queries and return results to users. IR-Style [3] extends DISCOVER to perform relevanceranked and top-K keyword queries. The drawback of these approaches is that the execution is usually inefficient because they can access data indirectly using SQL queries on DBMS. The large number of generated join queries lead to high I/O cost. Schema-free approaches view a database as a graph where nodes represent tuples and edges represent the foreign key relationships between pairs of tuples. The interconnected tuples that contain all or some of input keywords are then identified to answer keyword queries. BANKS [4] employs a backward expanding search algorithm which is based on Dijkstra’s single source shortest path algorithm. It expands node clusters by visiting nodes backward until the rooted tree is completed. Traversing the data graph in order to construct the Steiner tree is inefficient because minimum Steiner tree problem is known to be NP-hard [8]. BANKS-II [5] improves the search efficiency of BANKS through Bidirectional expansion technique. The drawback of these methods

Computer Science & Information Technology (CS & IT)

149

is that a data graph must be materialized and kept into memory and this is not suitable for large size databases. In [6, 7] other techniques are presented for pre-computing and materializing the neighborhood for each distinct keyword in the database offline in order to reduce the query processing time. In [10] a polynomial time solution for the minimum Steiner tree problem was introduced. A compact Steiner tree is used to answer keyword queries efficiently. It devises a structure-aware index to materialize structural relationships. Although the methods above facilitate the KSORDB, they still have two main challenges, controlling both the granularity and the size of the index as they are related directly to the database size. The system proposed in this paper belongs to the schema-free approach. It maintains the graph connectivity information in a reachability index in order to overcome the scalability and high memory requirement limitations of this approach. In [11] a method to support ontology-based semantic matching in RDBMS was presented. This approach makes ontology-based semantic matching available as part of SQL by creating set of new operators, namely ONT_RELATED, ONT_EXPAND, ONT_DISTANCE, and ONT_PATH. It does not support keyword search as users must be aware of these operators to use them when needed. Si-SEEKER [12] provides ontology based semantic search over a schema-based KSORDB system. It is required to annotate all data in the database and then use those annotations to build a semantic index. During query processing, a user keyword query is mapped to concept query then the similarity between this query and the annotated data are calculated to find results. While Si-SEEKER focuses on the improvement of the effectiveness of the results, its semantic searcher is not efficient as its author stated. However, our work provides semantic match capability over schema-free KSORDB system and progressively identifies the query related terms to efficiently generate related results.

3. PROPOSED SYSTEM ARCHITECTURE This section describes the proposed system architecture. The system has two execution stages: Pre-processing stage and Query processing stage. Figure 1 shows in details the different components of the system. A detailed illustration of each component is given in the following subsections.

3.1 Pre-Processing Stage During the pre-processing stage, the system builds some structures that are later used while processing the keyword search query. This stage consists of the Ontology pre-processing module and the Database Pre-processing module. Ontology pre-processing module In this module, the Parser loads and parses the Ontology to construct the concept graph that models the ontology as a weighted directed graph where nodes/vertices represent concepts and edges specify the relationships (specifically "is-a" links) between concepts. The edge weight reflects the similarity value between concepts depending on the direction of the edge. Both upward edge (generalization) weight and the downward edge (specialization) weight can be specified by ontology designers or domain experts. Then, the Annotator associates each concept with a list of tuples that satisfy the concept and populates the concept table with these annotations.

150

Computer Science & Information Technology (CS & IT)

Database Pre-processing Module The underlying database is modeled as a data graph G (V, E), where nodes represent tuples and edges represent foreign - primary key relationships. The data graph can be directed or undirected graph. The directed graph has two types of edges: forward edge (u, v) and backward edge (v, u). Accordingly, for each forward edge (u, v) Є E, there is its corresponding backward edge (v, u) Є E with a different weight. When such differentiation in weights is not necessary, each forward edge and its backward edge are combined into one edge producing an undirected graph. The Indexer builds an inverted index that is used to efficiently identify the tuples in the database containing query keywords. For each distinct keyword in the database, it stores a list of tuples that contains the keyword.

Fig. 1. Proposed System Architecture The Crawler traverses the data graph in a breadth-first manner. The main objective of the crawler is to materialize the neighborhood of the tuples that contain text attributes, called content node, into a reachability index. The neighborhood of each node u is represented by an entry in the reachability index. Each entry is a list of entries where, V is a node connected to u via a path of length dmax or less, weight is the weight of the shortest path from u to V, and P is the nodes constructing that path. The maximum distance dmax is provided to restrict the exploration to neighbors that are within a given diameter. Lists are sorted by weight. The crawler iteratively constructs the neighborhoods of content nodes and populates the reachability index. Then, the reachability index is used at the query time to map nodes to their neighborhoods. With the reachability index there is no need to maintain the whole data graph in memory. This is how the proposed system handles the critical issue of working with large and dense data graphs.

Computer Science & Information Technology (CS & IT)

151

3.2 Query Processing Stage The user enters a query consisting of a set of keywords. The system answers it as follows: • Concept Parser. The concept parser maps the query terms to ontology concepts. It extracts all n-grams from the query [13], sorts them descending by the number of terms, and checks whether the ontology contains a concept that match each of them. If a match is found, the remaining smaller n-grams (covered by this concept) are skipped. Using this strategy, each query term either belongs to mapped concepts/terms or doesn't belong to any of them, unmapped terms. • Semantic Tuple Locator receives the mapped concepts from the concept parser and exploits the Ontology to progressively return related terms/concepts along with the tuples associated with these terms. For this, the concept table is looked up to find the tuples associated with the mapped concepts. Next, if there was any concept that has no annotation instance (i.e. there was no tuple satisfying this concept) or when the number of the final answers generated by the system is less than what the user needs, the concept graph is traversed starting from nodes that correspond to the mapped concepts to identify the related concepts in a recursive manner based on their degree of similarity to the mapped concepts. Section 4 discusses measuring semantic similarity between concepts and the adopted method. • Keyword Tuple Locator receives unmapped terms/keywords and looks up the inverted index to find tuples that satisfy these terms. • Result Generator receives a set of matched nodes that satisfy each mapped and unmapped term from Semantic Tuple Locator and Keyword Tuple Locator respectively. Given the matched nodes of query terms, the objective of the result generator is to progressively produce the top-k answer trees. An answer tree is a distinct rooted tree containing at least one matched node for each term and there is at most one answer rooted at each node. The weight of an answer tree is the sum of shortest path distances/weights from the root to the matched nodes (leaves) of the tree. Note that the matched nodes of a term may satisfy the term either syntactically or semantically. For this, the result generator does the following: (1) the reachability index is looked up for each term to retrieve the neighborhoods of its matched nodes, called term neighborhood. (2) A cursor is constructed for each term in order to traverse its neighborhood in sorted order (i.e. nodes with smaller weights are accessed first). (3) The cursors are called in a round robin manner in order to identify the Top-k nodes (roots) that has minimum weight sum; in order to identify such nodes efficiently, a top-k algorithm [14] is employed; the pruning technique presented in [4] is used to discard duplicated trees and trees whose root has only one child. (4) If less than K results have been generated then the Semantic Tuple Locator is recursively called in order to retrieve more related results. • Result Assembler receives the IDs of tuples constructing each answer and retrieves the real information of each tuple from the database to deliver the final results to the user.

4. ONTOLOGICAL SEMANTIC SIMILARITY METHODS Several methods for measuring semantic similarity between terms based on ontology have been proposed in the literature. They can generally be classified into four categories: • Edge Counting Methods: this type of measures determine the semantic similarity between two terms/concepts based on how close the two terms in the taxonomy are [15]. • Information Content methods: measure the similarity based on how much information the two concepts share [16].

152

Computer Science & Information Technology (CS & IT)

• Feature Based Measures: measure the similarity based on the properties of the concepts [17]. • Hybrid Methods: the similarity in this category is based on combination of previous options [18]. Most semantic similarity methods assign higher similarity value to terms which are close together in the taxonomy. Edge counting methods exploit the structure/taxonomy of the Ontology to evaluate the distance between the ontological nodes corresponding to the concepts being compared. [15] Has presented a simple method to calculate the similarity between concepts based on the shortest path length connecting their corresponding nodes. Thus, the distance between two concepts A and B is computed as: dist(a,b) = minimal number of edges separating a and b

(1)

Where a and b are the ontological nodes representing A and B concepts respectively. This indicates that the shorter the path, the more similar the terms are. This measure suffers from being symmetric measure (i.e. sim(a,b) = sim(b,a)). An asymmetric similarity measure has proposed in [19]. It argued that while concept inclusion (is-a) intuitively implies strong similarity in the opposite direction of inclusion (specialization), the direction of inclusion (generalization) must contribute with some degree of similarity. Thus, the degree to which a is similar to b is defined as: ࢐



sim(a,b) = ࢓ࢇ࢞࢐ୀ૚,…,࢓ ቄࢾ࢙(ࡼ ) ࢽࢍ(ࡼ ) ቅ

(2)

Where δ is the downward (specialization) weight, γ is the upward (generalization) weight, ࢙(ࡼ࢐ ) and γ(P ୨ ) are number of specializations and generalizations along the path j respectively. This indicates that the similarity between two concepts a and b is the maximal product of weights along the paths between a and b. In order to progressively expand the query concepts with related concepts, the Semantic Tuple Locator employs function (2) as a similarity function. Thus starting with nodes corresponding to the query concepts, the concepts with highest similarity are retrieved first followed by those with lower values.

5. PERFORMANCE EXPECTATIONS Through implementing the proposed system, we expect the following performance enhancements: Storage requirements reduction The proposed reachability index is expected to reduce the space requirements compared to existing techniques [7, 10]. This is because the materialization strategy employed by our system materializes the neighborhood of each content node only once, but other systems redundantly materialize these data, a content node’s neighborhood, either for each keyword in the content node (as in [7]) or for each keyword in the neighbor nodes that does not exist in the content node (as in [10]). Therefore, while the granularity and the size of the indexes maintained by other systems are affected greatly by the number of distinct keywords in each tuple, the proposed reachability index is not affected by this factor. Quality of results While existing schema free KSORDB systems generate structures that connect the nodes that exactly (syntactically) contain the query terms (we call such results exact or direct

Computer Science & Information Technology (CS & IT)

153

results), the proposed system also find semantic/related results that may connect nodes that do not contain the exact query terms but related terms. Thus, even though existing systems generate results with high precision, their recall is relatively small, as stated in [12]. The proposed system exploits the structure of domain ontology to progressively return query related terms that can be used to retrieve more relevant answers and hence increasing the effectiveness in terms of the recall rate of results. Performance In order to efficiently identify the tuples containing terms that are related to a query terms and may contribute in the final results, the proposed semantic tuple locator exploit the structure of domain Ontology to progressively return related terms and pass the tuples associated with these terms to the Result generator. Compared to the semantic searcher of Si-SEEKER [12], the proposed technique is expected to reduce the time required to identify these tuples. This is because the Si-SEEKER semantic searcher exploits domain ontology structure to calculate the semantic similarity between the query and all tuples in the database and then picks tuples with similarity value greater than a given threshold. Therefore it takes linear time in terms of the total number of database tuples no matter the number of needed results. On the other hand, the semantic tuple locator exploits the ontology structure to progressively identify query related terms and then the tuples associated with these terms. Accordingly, the progressive manner adopted by the semantic tuple locator generates only the highly related tuples needed to generate the final results without being affected by the number of tuples in database. Currently, we are implementing and performing experiments using restbase1 data set. A Cuisine ontology (specifically is-a hierarchy) is used as a domain specific knowledge.

REFERENCES [1]

S. Agrawal, S. Chaudhuri, and G. Das: DBXplorer: A System for keyword Search over Relational Databases. In: ICDE, pp. 5-16 (2002) [2] V. Hristidis and Y. Papakonstantinou: DISCOVER: Keyword search in relational data-bases. In: Proc. 28th Int. Conf. On Very Large Data Bases, pp. 670–681 (2002) [3] V. Hristidis, L. Gravano, Y. Papakonstantinou: Efficient IR-Style Keyword Search over Relational Databases. In: VLDB, pp. 850-861 (2003) [4] G. Bhalotia, A. Hulgeri, C. Nakhe, S. Chakrabarti, and S. Sudarshan: Keyword searching and browsing in databases using BANKS. In : Proc. 18th Int. Conf. on Data Engineering, pp. 431–440 (2002) [5] V. Kacholia, S. Pandit, S. Chakrabarti, S. Sudarshan, R. Desai, and H. Karambelkar: Bidi-rectional expansion for keyword search on graph databases. In VLDB, pp. 505-516 ( 2005) [6] H. He, H. Wang, J. Yang, and P. Yu: BLINKS: Ranked keyword searches on graphs. In: Proceedings of the 2007 ACM SIGMOD international conference on Management of data, pp. 305-316 (2007) [7] Guoliang Li, Jianhua Feng, Feng Lin, Lizhu Zhou: Progressive Ranking for Efficient Keyword Search over Relational Databases. Proceedings of the 25th British national con-ference on Databases: Sharing Data, Information and Knowledge, pp. 193 - 197 (2008) [8] Garey, M.R., Johnson, D.S.: The rectilinear Steiner tree problem in NP complete. SIAM J. Appl. Math. 32, pp. 826–834 (1977) [9] Gruber: Toward Principles for the Design of Ontologies Used for Knowledge Sharing. In IJHCS, pp. 907-928 (1994) [10] Li, Guoliang; Feng, Jianhua; Zhou, Xiaofang; Wang, Jianyong: Providing built-in keyword search capabilities in RDBMS. In VLDB, pp. 1-19 (2011)

1

ftp://ftp.cs.utexas.edu/pub/mooney/nl-ilp-data/restsystem/restbase

154

Computer Science & Information Technology (CS & IT)

[11] S. Das, E.I. Chong, G. Eadon, J. Srinivasan. Supporting Ontology-Based Semantic match-ing in RDBMS. On VLDB, pp. 1054-1065 (2004) [12] Jun Zhang, Zhaohui Peng, Shan Wang, Huijing Nie: Si-SEEKER: Ontology-Based Se-mantic Search over Databases. In: Knowledge Science, Engineering and Management (2006) 4092, pp. 599-611 (2006) [13] Edgar Meij , Marc Bron , Laura Hollink , Bouke Huurnink , Maarten de Rijke: Mapping queries to the Linking Open Data cloud: A case study using DBpedia, Web Semantics: Science, Services and Agents on the World Wide Web, v.9 n.4, pp. 418-433 (2011) [14] Nikos Mamoulis, Kit Hung Cheng, Man Lung Yiu , David W. Cheung: Efficient Aggre-gation of Ranked Inputs. In: Proceedings of the 22nd International Conference on Data Engineering, page 72 (2006) [15] Rada, R., Mili, H., Bichnell, E., & Blettner, M.: Development and application of a metric on semantic nets. IEEE Transactions on Systems, Man, and Cybernetics, pp. 17–30 (1989) [16] Resnik, P.: Using Information Content to Evalutate Semantic Similarity in a Taxonomy. In: IJCAI, pp. 448–453 (1995) [17] Tversky, A.: Features of similarity. Psycological Review, 84, pp. 327–352 (1977) [18] Rodriguez, M. A., & Egenhofer, M. J. Determining semantic similarity among entity classes from different ontologies. IEEE Transactions on Knowledge and Data Engineering, 15, pp. 442–456 (2003) [19] Bulskov, H.; Knappe, R.; Andreasen, T.: On measuring similarity for conceptual querying. In: 5th international conference, FQAS 2002, Copenhagen, Denmark, pp. 100-111 (2002)

COMBINED FEATURE EXTRACTION TECHNIQUES AND NAIVE BAYES CLASSIFIER FOR SPEECH RECOGNITION Sonia Sunny1, David Peter S2, K. Poulose Jacob1 1

Dept. of Computer Science, Cochin University of Science & Technology, Kochi, India 2 School of Engineering, Cochin University of Science & Technology, Kochi, India [email protected], [email protected], [email protected]

ABSTRACT Speech processing and consequent recognition are important areas of Digital Signal Processing since speech allows people to communicate more natu-rally and efficiently. In this work, a speech recognition system is developed for re-cognizing digits in Malayalam. For recognizing speech, features are to be ex-tracted from speech and hence feature extraction method plays an important role in speech recognition. Here, front end processing for extracting the features is per-formed using two wavelet based methods namely Discrete Wavelet Transforms (DWT) and Wavelet Packet Decomposition (WPD). Naive Bayes classifier is used for classification purpose. After classification using Naive Bayes classifier, DWT produced a recognition accuracy of 83.5% and WPD produced an accuracy of 80.7%. This paper is intended to devise a new feature extraction method which produces improvements in the recognition accuracy. So, a new method called Dis-crete Wavelet Packet Decomposition (DWPD) is introduced which utilizes the hy-brid features of both DWT and WPD. The performance of this new approach is evaluated and it produced an improved recognition accuracy of 86.2% along with Naive Bayes classifier.

KEYWORDS Speech Recognition; Soft Thresholding; Discrete Wavelet Transforms; Wavelet Packet Decomposition; Naive Bayes Classifier.

1. INTRODUCTION Spoken digits recognition has great importance in the field of speech recognition [1]. In our dayto-day life, we encounter many applications that require recognition of spoken digits that uses numbers as input. Some of the applications include automated banking system, airline reservations, voice dialing telephone, automatic data entry, command and control etc [2]. This work uses digits from Malayalam which is one of the four major Dravidian languages of southern India and the official language of the people of Kerala. Speech recognition is one of the core disciplines of pattern recognition which also includes a number of technologies and research Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 155–163, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3416

156

Computer Science & Information Technology (CS & IT)

areas like Signal Processing, Natural Language Processing, Statistics etc [3]. Speech signals are non stationary in nature. There are many factors that make recognition of speech a complex task. This is due to the fact that when people speak, there is difference in gender, emotional state, accent, pronunciation, articulation, nasality, pitch, volume and speed variability [4]. Background noise, additive noise and different types of disturbances may also affect the performance of a speech recognition system. Usually the performance of a speech recognition system is measured in terms of recognition accuracy. There has been a lot of research in the area of speech recognition in different languages like English, Chinese, Arabic, Bengali, Tamil, Hindi etc. But only few works have been reported in Malayalam. When compared to speaker dependent speech recognition system which involves a single speaker, developing an efficient speaker independent system is a difficult task since it involves the recognition of the speech patterns from a group of people. As speech recognition involves different stages like pre-processing, feature extraction and pattern classification, the performance of the overall speech recognition system depends on the techniques selected for these stages. Speech signals are usually affected by different additive as well as background noise. So, pre-processing has to be done to remove the noise from the signals. Here, preprocessing is done using wavelet denoising method based on soft thresholding [5]. Feature extraction is done using two wavelet based feature extraction methods namely DWT and WPD due to the good time and frequency resolution properties of the wavelets. The performance of both these methods in classifying the digits is evaluated using Naive Bayes classifier and a new hybrid algorithm is developed by combining the features obtained from both the methods. The paper is organized as follows. Section 2 gives a brief description of the problem definition and the methodology used. The digits database is explained in section 3. The method used for preprocessing is illustrated in section 4. Section 5 elaborates the various feature extraction techniques used in this work followed by the classification technique in section 6. A detailed evaluation of the experiments and the results obtained are explained in section 7. Conclusion is given in the last section.

2. STATEMENT OF THE PROBLEM AND ARCHITECTURE OF THE SYSTEM ASR enables people to communicate more naturally and effectively without the use of an interface in between. In this work, a speech recognition system is designed for recognizing speaker independent spoken digits in Malayalam, since research in Malayalam is in its infancy stage. The speech signals captured are to be converted to a set of parameters. Feature extraction is the front end processing and most important part of speech recognition since it plays an important role in separating one speech from other. So developing new techniques for feature extraction has been an important area of research for many years. Most of the speech-based studies are based on spectral analysis of speech signals using Mel-Frequency Cepstral Coefficients (MFCCs), Linear predictive Coding (LPCs) etc . Results from most of the works reveal that the dimensions and computational complexity of the feature vectors obtained are higher in these methods. In wavelet transforms, the size of the feature vector is less compared to other methods. This reduces the computational complexity. Now, more and more studies are being done on wavelets. The main objective of this work is to design a more efficient speech recognition system which performs better than the existing methods. Since wavelets are found to be good in speech

Computer Science & Information Technology (CS & IT)

157

recognition, here two wavelet based feature extraction methods namely DWT and WPD are used and the performance of both these in recognizing the digits database created are compared and analyzed. Naive Bayes classifiers are used in order to obtain the classification performance of the features. Both the methods are found to be good in recognizing speech. But since feature extraction is the front end processing part of a speech recognition system, designing of a new algorithm with improved feature vectors is a challenging research problem. So a new feature extraction method is developed by utilizing the features obtained from both WPD and DWT to improve the recognition rate. In this work, first the digits database is created since there is no standard database available in Malayalam. The captured speech signals are then pre-processed using wavelet denoising techniques to tune the signals for extracting features by removing the noise from it. After denoising, the signals are presented to feature extraction techniques namely DWT, WPD and the proposed DWPD. The extracted features are then given for pattern classification using Naive Bayes classifier. Finally these techniques are compared and the performance of these techniques is evaluated based on recognition accuracy.

3. DIGITS DATABASE A new database is created for spoken digits in Malayalam language using 200 speakers of age between 6 and 70 uttering 10 Malayalam digits. 200 speakers including 80 male speakers, 80 female speakers and 40 children were entrusted with the task of recording the speech samples. Male and female speech differ in pitch, frequency, phonetics and many other factors due to the difference in physiological as well as psychological factors. A high quality studio-recording microphone at a sampling rate of 8 KHz (4 KHz band limited) is used for recording the speech samples. Ten Malayalam digits from 0 to 9 are used to create the database under the same configuration. Thus the database consists of a total of 2000 utterances of the digits. The spoken digits are numbered and stored in the appropriate classes in the database. The spoken digits and their International Phonetic Alphabet (IPA) format are shown in Table 1. Table 1. Numbers Stored in the Database and their IPA Format Number digit

Words in Malayalam

IPA format

English Translation

0

/pu:dƷıəṁ/

Zero

1

/onnə/

One

2

/r˄ndə/

Two

3

/mu:nnə/

Three

4

/na:lə/

Four

5

/˄ndƷe/

Five

6

/aːrə/

Six

7

/eiƷə/

Seven

8

/ettə/

Eight

9

/onp˄θə/

Nine

158

Computer Science & Information Technology (CS & IT)

4. PRE-PROCESSING USING WAVELET DENOISING Speech signals are often degraded by the presence of additive or convolution noise present in the background. So, in order to remove the background noise, these signals are to be denoised so that the noise present in it are suppressed during pre-processing stage before extracting the features. Different techniques are available for speech enhancement. In this work, we have used wavelet denoising algorithms for reducing the noise present in the signal. Wavelet denoising uses thresholding functions which are used to limit the values of the elements. The most popular thresholding functions that are widely used in wavelet denoising method are the hard and the soft thresholding functions [6]. Hard thresholding sets to zero any element whose absolute value is lower than the threshold. In soft thresholding, the absolute values of the elements that are lower than the threshold are first set to zero. Then it shrinks the nonzero coefficients towards 0. Hard and soft thresholding can be defined as

X Hard = {0X

if if

| X | >τ | X | ≤τ

sign ( X ) (| X |−|τ |)

X Soft = {0

(1) if

if

| X | >τ | X | ≤τ

(2)

Where X denotes the wavelet coefficients and ι represents the threshold value. Here we have used soft thresholding technique. Threshold value can be obtained using different methods. The universal threshold derived by Donoho and Johnstone [7] for the white Gaussian noise under a mean square error criterion is used in this work which is represented as

τ = σ 2log ( N )

(3)

where σ denotes the standard deviation and N denotes the length of the signal. The algorithm used for denoising mainly consists of 3 steps.

• Apply wavelet transform up to 8 levels to the noisy signal to produce the noisy wavelet coefficients. • Select an appropriate threshold limit. Apply soft thresholding to the detail wavelet coefficients. • Apply inverse discrete wavelet transform to the wavelet coefficients that are obtained from the previous step. This produces the denoised signal.

5. FEATURE EXTRACTION TECHNIQUES USED Every speech signal has different individual characteristics embedded in it and these characteristics can be extracted using a wide range of feature extraction techniques. A brief description of the feature extraction techniques used in this work namely DWT, WPD and the new proposed hybrid algorithm DWPD is explained below.

5.1 Discrete Wavelet Transforms DWT is a more recent, popular and computationally efficient technique which is used in different areas like signal processing, image processing etc. One of the main characteristics of the wavelet

Computer Science & Information Technology (CS & IT)

159

transforms is that it uses windows of different sizes. It adopts broad windows at low frequencies and narrow windows at high frequencies, thus leading to an optimal time–frequency resolution in all frequency ranges [8]. DWT and WPD use digital filtering techniques to obtain a time-scale representation of the signals. DWT is defined by the following equation.

Where Ψ (t) is the basic analyzing function called the mother wavelet. In DWT, the one dimensional speech signal passes through two discrete-time low and high pass quadrature mirror filters which produces the corresponding wavelet coefficients. It produces two signals, called approximation coefficients and detail coefficients [9]. In speech signals, low frequency components h[n] are of greater importance than high frequency components g[n] as the low frequency components characterize a signal more than its high frequency components [10]. The successive high pass and low pass filtering of the signal is given by

Where Yhigh (detail coefficients) and Ylow (approximation coefficients) are the outputs of the filters obtained by sub sampling by 2. According to Mallat algorithm, the filtering process is continued until the desired level is reached [11].

5.2 Wavelet Packet Decomposition DWT performs a one sided dyadic tree decomposition of signals. But, WPD allows any dyadic tree structure analysis where the approximation as well as detail coefficients are decomposed iteratively up to a certain level chosen [12]. Thus WPD is a more flexible and detailed method than DWT and it also produces good time and frequency resolutions. In WPD, more detailed time-scale analysis can be achieved. The main characteristic of WPD is that it uses long-time interval for low-frequency information and short-time interval for high-frequency information [I3].

5.3 Proposed Hybrid algorithm Wavelets are a powerful and extremely useful method for speech recognition. A wavelet transform decomposes a signal into sub-bands with low frequency components which contain the characteristics of a signal and high frequency components which are related with noise and disturbance in a signal [14]. The features of the signals can be retained if the high frequency contents are removed. This reduces the noise in the signal [15]. But sometimes the high frequency components may contain useful features of the signal. The main drawback of DWT is that it cannot decompose the high frequency band into more partitions. Although WPD can achieve this decomposition, it is also applied to low frequency band signals, which mainly includes the desired signals. So this causes unnecessary computational complexity. To overcome the limitations of DWT and WPD, we propose a new algorithm for speech enhancement by

160

Computer Science & Information Technology (CS & IT)

combining the features of both DWT and WPD. The outline of the proposed DWPD algorithm is given below.

• The speech signal is decomposed into a low frequency band signal and a high frequency band signal. That is one level of decomposition is performed. • 7 scales of DWT are then applied on the low frequency components and 7 scales of WPD are applied on the high frequency components. • The features obtained from both decomposition are combined together to form the new feature vector set. The wavelet decomposition trees of DWT, WPD and DWPD up to 3 levels are shown in figure 1.

Fig. 1. DWT decomposition

WPD decomposition

DWPD decomposition

The proposed new hybrid algorithm DWPD has the following advantages.

• Decomposes high frequency band into more partitions. • Saves computational complexities. • Improves recognition rate.

6. CLASSIFICATION USING NAIVE BAYES CLASSIFIER Since speech recognition is a multiclass classification problem, Naive Bayes classifiers are used because it can handle multiclass classification problems. Naive Bayes classifier is based on the Bayesian theory which is a simple and efficient probability classification method based on supervised classification technique. For each class value it estimates that a given instance belongs to that class [16]. The feature items in one class are assumed to be independent of other attribute values called class conditional independence [17]. Naive Bayes classifier needs only small amount of training set to estimate the parameters for classification. The classifier is stated as P(A|B) = P (B|A) * P (A)/P(B)

(7)

Where P(A) is the prior probability or marginal probability of A, P(A|B) is the conditional probability of A, given B called the posterior probability, P(B|A) is the conditional probability of B given A and P(B) is the prior or marginal probability of B which acts as a normalizing constant. This provides the mathematical representation of the way in which the conditional probability of event A given B can be related to the conditional probability of B given A. The probability value of the winning class dominates over that of the others [18].

Computer Science & Information Technology (CS & IT)

161

7. EXPERIMENTS AND PERFORMANCE EVALUATION In this work, we have used wavelets for feature extraction. There are different wavelets available for signal analysis. So the first step is to select the suitable wavelet family and hence the wavelet. In this work, the Daubechies wavelets are used which are found to be efficient in signal processing applications. Among the Daubechies family of wavelets, the db4 type of mother wavelet is used for feature extraction since it gives better results [19]. The speech samples after pre-processing are successively decomposed into approximation and detailed coefficients. Another consideration is the level up to which decomposition is to be performed. For DWT, less frequency components from level 8 is used to create the feature vectors. In WPD, both the high frequency and low frequency components are decomposed up to level 8. The number of features obtained using DWT is 16 and using WPD is 20. In the proposed DWPD, the features from both DWT and WPD are combined. Classification task using Naive Bayes classifier involves separating data into training and test sets. In all the three methods, we have divided the database into three. 70% of the data for training, 15% for validation and 15% for testing. In this work, better results are obtained at level 8 during decomposition. The original signal and the 8th level decomposition coefficients of spoken word Poojyam (Zero) using DWT is given in figure 2. Original Signal 1 0.5 0 -0.5 -1

0

0.5

1

1.5

2

2.5

3 4

x 10 Word -zero Approximation coefficients Level 8

Detail coefficients Level 8

1

1.5 1

0.5

0.5

0

0 -0.5

-0.5

-1 -1.5

-1 0

10

20

30

40

50

-1.5

60

0

10

20

30

40

50

60

Fig. 2. Decomposition of digit poojyam at 8th level using DWT The original signal and the 8th level decomposition coefficients of spoken digit Poojyam (zero) using WPD is given in figure 3. Original Signal -zero 1 0.5 0 -0.5 -1

0

0.5

1

1.5

2

2.5

3 4

x 10 coefficient values using wpd -zero 0.3 0.2 0.1 0 -0.1 -0.2

0

2

4

6

8

10

12

14

Fig. 3. Decomposition of digit poojyam at 8th level using WPD

162

Computer Science & Information Technology (CS & IT)

All these methods produced good recognition accuracies after classification. The overall recognition accuracies obtained using these methods are shown in table 2.

Table 2. Comparison of results Feature Extraction Method

Recognition Accuracy (%)

DWT

83.50

WPD

80.70

DWPD

86.20

8. CONCLUSION In this work, we have exploited the powerful features of wavelets in developing a novel speech recognition system for speaker independent digits recognition in Malayalam. Here, two major wavelet based feature extraction techniques such as DWT and WPD are used for feature extraction and the performance of these methods are evaluated. Since speech recognition is a pattern recognition problem, Naive Bayes classifiers are used for classification. Both the methods produced an accuracy of 83.5% and 80.7% respectively. The ultimate aim of a speech recognition system is to attain maximum recognition rate. Though both the methods produced good results, a more enhanced method called DWPD is developed by combining the features of DWT and WPD. An accuracy of 86.2% is obtained using this hybrid structure. Soft thesholding technique is applied to the signal for reducing the noise before feature extraction. The experimental results show that this hybrid architecture using DWT and WPD along with Naive Bayes classifier could effectively extract the features from the speech signal. As an extension of this study, the performance of this proposed method can be analyzed using other classifiers like Support Vector Machines, Artificial Neural Networks etc.

REFERENCES [1]

Y. Ajami Alotaibi (2005) Investigating Spoken Arabic Digits in Speech Recognition Setting. Information Sciences 173:115-139 [2] C. Kurian, K. Balakrishnan (2009) Speech Recognition of Malayalam Numbers. World Con-gress on Nature and Biologically Inspired Computing 1475-1479 [3] B. Gold, N. Morgan (2002) Speech and Audio Signal Processing. John Wiley and Sons, New York [4] recognition.http://www.learnartificialneuralnetworks.com/speechrecognition.html [5] Danie Rasetshwane, J. Robert Boston, Ching-Chung Li (2006) Identification of Speech Transients Using Variable Frame Rate Analysis and Wavelet Packets. Proc.of the 28th IEEE EMBS Annual International Conference 1:1727-1730 [6] Yasser Ghanbari, Mohammad Reza Karami (2006) A new Approach for Speech Enhancement based on the Adaptive Thresholding of the Wavelet Packets. Speech Communication 48:927–940 [7] D.L. Donoho (1995) De-noising by Soft Thresholding. IEEE transactions on Information Theory 41:613-627 [8] Elif Derya Ubeyil (2009) Combined Neural Network model Employing Wavelet Coefficients for ECG Signals Classification. Digital Signal Processing 19:297-308 [9] S. Chan Woo, C.Peng Lin, R. Osman (2001) Development of a Speaker Recognition System using Wavelets and Artificial Neural Networks. Proc. of Int. Symposium on Intelligent Multimedia, Video and Speech Processing 413-416 [10] S. Kadambe, P. Srinivasan (1994) Application of Adaptive Wavelets for Speech. Optical Engineering 33:2204-2211

Computer Science & Information Technology (CS & IT)

163

[11] S .G. Mallat (1989) A Theory for Multiresolution Signal Decomposition: The Wavelet Representation. IEEE Transactions on Pattern Analysis and Machine Intelligence 11:674-693 [12] R.R.Coifman, M.V.Wickerhauser (1992) Entropy based Algorithm for best Basis Selection. IEEE Transactions on Information Theory 38:713-718 [13] Wu Ting, Yan Guo-zheng, Yang Bang-hua et al (2008) EEG Feature Extraction based on Wavelet Packet Decomposition for Brain Computer Interface. Measurement 41:618-625 [14] B. C. Li, J. S. Luo (2003) Wavelet Analysis and Its Applications. Electronics Engineering Press, Beijing, China [15] Zhen-li Wang, Jie Yang, Xiong-wei Zhang (2006) Combined Discrete Wavelet Transform and Wavelet Packet Decomposition for Speech Enhancement. Proc. of 8th International Conference on Signal Processing [16] Li Dan, Liu Lihua, Zhang Zhaoxin (2013) Research of Text Categorization on WEKA. Proc. of Third International Conference on Intelligent System Design and Engineering Applications 1129-1131 [17] J. Han, M. Kamber (2000) Data Mining Concepts and Techniques. Morgan Kauffman Publishers [18] Laszlo Toth, Andras Kocsor, Janos Csirik (2005) On Naive Bayes In Speech Recognition. Int. J. Appl. Math. Comput. Sci 15:287–294 [19] Sonia Sunny, David Peter S, K Poulose Jacob (2013) Performance Analysis of Different Wavelet Families in Recognizing Speech. International Journal of Engineering Trends and Technology 4:512517

HAMALT : GENETICS BASED PEER-TOPEER NETWORK ARCHITECTURE TO ENCOURAGE THE COOPERATION OF SELFISH NODES T. C. Jermin Jeaunita1,T. C. Jermin Jersha2 1

Department of Computer Science and Engineering, PESIT Bangalore South Campus, Bangalore, India [email protected]

2

Department of Computer Science and Engineering, P.S.V. Padmavathy Engineering College, Chennai, India [email protected]

ABSTRACT Since its inception, Internet has grown tremendously not only in the size of its customers but also with the technology used behind to run it. For the well ex-istence and proper development of Peer-to-Peer Networks, all nodes in the overlay must be cooperative and donate their resources for any other peer. The paper dis-cusses the reason of peers being selfish, causes of selfish peers and the methods used so far to resolve selfish peers problem. A Genetic Algorithm based solution has been proposed in this paper that solves the selfish nodes problem in Peer-toPeer Networks and that also encourages the cooperation among all nodes in the overlay. An architecture HAMALT is proposed in this paper for disseminating altruism among the peers.

KEYWORDS Altruism, Genetics, Kin Selection, Overlay, Peer-to-Peer Networks, Selfish Nodes.

1. INTRODUCTION In peer to peer networks, a peer takes up the task of a master as well as slave; a client and a server; a requester and a provider. These peers are overlaid on the Internet for information sharing, hardware or software resource sharing, instant communication, on demand audio or video sharing and so on. For successful survival of a network that is made for such purpose, the well cooperation of all the peers in the network is required. But there will be some coward and selfish peers among the good peers that may stop the other peers in achieving the sole purpose of the network and threaten the proper subsistence of the network. Such peers are called as selfish nodes or free riders as they utilize the network for their benefit and sit inoperative otherwise and this practice of such nodes is termed as leeching. Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 165–173, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3417

166

Computer Science & Information Technology (CS & IT)

Peers may be selfish for various purposes. In Peer-to-Peer networks which are used for various applications including social networking, a malicious peer may try to acquire the personal information of other peers to threaten them or for cost. When such misbehaving node is detected through the shared history mechanism[1] or trust mechanism[2], and when the node has learnt about this detection of its behavior, it can leave the network and join the same network with different identity. Such type of nodes is called as white-washers [3]. Some peer-to-peer networks punish such deviant nodes and when a new node joins the network and misinterpreted as a deviant node, the node might be discouraged [4]. Some Peer-to-Peer networks are built with titfor-tat strategy, where in a peer is allowed to access a resource based on its interaction with the corresponding node before the case. This leads to the discouragement of strange or new nodes after joining the network that obviously would not have had any interaction before with the peer it requested. This may inculcate selfishness in the new node which it can reflect later, when it receives a request. A node may also act selfish to increase its own utility and to reduce overheads [5]. They may go selfish about their limited battery power, bandwidth availability and transmission speed. The free loaders can be treated in various ways. They can be deprived from accessing the network. Authors of reference [6] proposed an approach to punish the free riders by forbidding them to download files from the network if their utility value is lower than the size of the requested file. The requests submitted by the selfish nodes can be ignored or the TTL(Time to Live) of these request messages can be reduced[7]. A selfish peer if identified needs to pay a fine in the form of packet sending cost, which means the deviant node has to send some n number of penalty packets to continue in the network. A selfish node receives low QoS while a cooperative node receives high QoS. The growth of selfish nodes worsens the continued existence of the network in various ways. It may also give wrong reputation to improve its incentive[8]. Some nodes are socially selfish such that they share resources to other peers which are only socially tied with them. Some peers may share with peers of stronger social tie than with weaker social tie. A selfish node may give wrong routing information or may devoid from forwarding routing packets, which may lead to longest path, more cost and wastage of resources. Peers may also deviate from forwarding data packets to any other peer proving individual selfishness. A selfish peer may utilize the services provided by other nodes in spite of concern of the resources of other peers. A selfish node may change its identity or neighbor to utilize the resources, so that it will not be identified as deviant node. This paper proposes a new and interesting solution to resolve the free loaders problem by appropriately choosing the neighbor peers and keep the peers encouraging incessantly. Developing a framework to dole out altruism in the network will be a touchstone if the total evolutionary change of a network is also considered. The trait of a node to behave selfish is considered as evolved right from the self organization of the network. Hence for effective as well as efficient self organization of the network the problem is considered as a natural selection process of Genetics. Instead of considering socially tied peers as a drawback in the network, since they share information only with their socially tied peers, this paper considers the psychology of peers for forming a network of altruistic peers. Hence the architecture proposed is named as ‘HAMALT’- a Hamilton Rule based Altruism Dissemination. The remaining sections of the paper are organized as follows. Section 2 discusses the concepts of Genetics used for the proposed architecture. Section 3 describes the proposed HAMALT

Computer Science & Information Technology (CS & IT)

167

architecture. Mathematical proofs of the proposed lemmas that make the architecture are elaborated in section 4. Section 5 concludes the usefulness of the proposed framework.

2. GENETICS Genetics is a scientific discipline that deals with the genes that are responsible for heredity of a living organism, and more specifically the physical or character trait of an organism. A gene can take various forms and each form of a same gene is called an allele. So literally an allele becomes responsible for the different observable or non observable traits present in any organism. Genes emanates phenes, as if genes are the biochemical instructions in the form of alleles in organisms while phenes are the observable characteristic of the organism itself. Hence the phenotype directly relates to the process of natural selection in organisms. Natural selection can be explained as the statistically consistent difference in reproductive success or fitness among phenotypes. Even more specific is the kin selection strategy of genetics that favors the reproductive success among relatives in-spite of an organism’s own cost or survival.

2.1 Kin Selection Genetics define kin selection as a theory of organisms helping their relatives than to any others, in spite of its own well being or survival. This leads to the transfer of a part or whole of the altruistic allele to the later generation of the selected kin.

2.2 Inclusive Fiteness Inclusive fitness theory plays a vital role in learning the evolution of social behavior[9-12]. It is also said that inclusive fitness improves the phenotypic success of organisms by their altruistic social trait. Hence the genetic endowment of altruistic trait is considered as a predictor in the proposed mechanism. The goal of the proposal is to disseminate the fecundity of altruism among the peers of the network, so as to improve the coordination of all peers in the network.

3. SYSTEM MODEL 3.1 Problem Description The system is considered as an overlay network with the peers ready to share their resources and the peers waiting to collect resources of their interest from other peers. If none other than few peers are ready to share their resources, the network either fails or very soon become a master/slave overlay network, and the goal of the Peer-to-Peer network may not be able to attain. Hence this paper proposes a framework called ‘HAMALT’ – a Hamilton Rule based Altruism Dissemination. The paper discusses solutions to keep all the peers active and encouraged for altruism.

3.2 Parameters Used The parameters used in the proposed framework are tabularized in Table 1.

168

Computer Science & Information Technology (CS & IT)

Parameters

Table 1: Parameters Description Description

Ai

Inclusive fitness responsible for altruism

ai

Individual fitness of any peer i

Vi

Average contribution of any peer i’s cluster of all two hop peers

Ci

Contribution of peer i to any other peer in the network

Cvi

Summation of contributions of all one hop peers of peer i

rij

Degree of connectedness between peer i and peer j

L

Loss to the donor

G

Gain to the recipient

k

Total number of chunks uploaded

δ

Quantity of altruistic allele donated to the recipients

Pi

Representation of a peer with its nature as i

3.3. HAMALT Architecture The proposed architecture with only two peers- one as donor and the other as recipient is modeled in Fig. (1). The working consists of two phases. In phase 1, every peer node calculates the altruistic fitness of itself using the fitness of other peers. The fitness is calculated using the contribution factor of the peer and its neighbors. Since the altruistic fitness depends on other peer’s altruism, it is claimed that altruism of any peer encourages the other related and neighbor peers. The goal of Phase 2, is to spread altruism to the next generation. To keep all the nodes encouraged throughout the network’s lifetime, it is not enough only to encourage the nodes to be altruistic. But at the same time, altruism itself must be transmitted from one generation to the next.

Computer Science & Information Technology (CS & IT)

169

Fig.1. HAMALT Architecture with two peers peers- donor and recipient demonstrating the dependence of altruism and altruistic allele dissemination. The contribution calculator calculates the contribution factor using the contribution factor exchange process. The allowances that can be provided for a donor node or if the node is selfish, necessary action too be taken is decided using the benefits calculator. The quantity of altruistic allele received by the recipients is also fed to the benefits calculator in case the node is a recipient so that the node is stimulated to be altruistic.

4. SYSTEM DESIGN The two phases of the proposed framework are explained with mathematical proofs in the following subsections. 4. 1 Phase 1: Dependence of altruism Inclusive fitness depends on the peer’s individual fitness which is a measure on its immediate neighbors or can be called as kin peers. Every peer tries to improve its own fitness for the survival in the network which will happen only if the peer possesses altruism. Inclusive fitness denoted as Ai of a peer i is found as Ai = ai / Vi

(1)

Where ai is the individual fitness of a peer i and Vi is the average contribution of a peer i’s cluster of all two hop nodes. The personal fitness or individual fitness of a peer is given by ai = Ci + Cvi

(2)

Ci is the contribution factor of peer i to any other peer in the network and Cvi is the summation of contributions of all one hop peers of peer i, as shown in equ. (3).

170

Computer Science & Information Technology (CS & IT)

 = ∑ . 

(3)

Where rij is the degree of connectedness between the peer i and its one hop peers j = 1 to n, n is maximum number of one hop neighbors of peer i. The kin selection criteria also propose the selection of degree of relatedness. This degree of relatedness is shown in Fig. (2). Lemma 1: Altruism of a peer depends on the altruism of the neighbor peers. Proof: Equations (1) & (2) show the dependence of altruism that discusses about the altruistic measure of every node which depends on the contribution of a neighbor peer to any other peer. When one peer’s altruism depends on the altruism of another peer which is directly proportional to each other, obviously the peer also improves the altruistic measure of the neighbor peer. The degree of connectedness plays a major role to maintain the altruistic fitness and it is considered that r ≤1. Dependence of altruism on other peer is demonstrated using Fig. (3). The figure shows an overlay of 7 peers. Fitness of peer P1 is calculated from the contribution factor of itself and contribution of its 1-hop peers (P2, P3, P4, P5). The contribution of peers up to two-hop (P2, P3, P4, P5, P6, P7), shown in the figure helps to calculate the average contribution of the peer’s population. The inclusive fitness Ai can be found from these two parameters. Lemma 2: Personal fitness of a peer is reduced if it is not ready for contribution in the network. Proof: If a request is neglected by a peer or if the individual altruistic factor Ci is constant for a specified duration, the individual contribution factor of a peer is reduced. A peer may utilize the altruistic nature of its neighbor and try to survive in the network without its own contribution as anyways the altruistic fitness of a neighbor increases its own too. But if allowed will invite more free riders. In order to avoid such scenario in the network, if a node is not ready to contribute or if the node goes to sleep mode, its contribution factor is reduced and it may lead to a chance of its ID added in the Neglected Peers List(NPL). Once if a node is added in the NPL, it is not allowed to access the benefits of the network. Donor Recipient Connectedness Peer (j) Peer (rij) P1 P2 0.5 P2

P3

0.5

P2

P4

0.5

P2

P5

0.5

P1

P3

0.25

P1

P5

0.25

P1

P4

0.25

Fig. 2. Coefficient of Connectedness: The directly connected peers are related by a factor of r = 0.5 and 0.25 otherwise.

Computer Science & Information Technology (CS & IT)

171

Fig. 3. Dependence of altruism on other peers Lemma 3: A closely related peer encourages the altruism of its neighbor peers. Proof: By Lemma 2, If the inclusive fitness of altruism is reduced, the framework notifies the intimates about the issue. The neighbor peers, find the relatedness with the selfish peer and sends an alert to its neighbor for its contribution to the network. The alert sent to the peer varies based on its relatedness with the other peer. If r = 0.5, the alert carries the recommendation of the selfish peer to other peers, so that the so far selfish peer might get a request and improve its altruistic factor. This encourages the peer to come out of selfishness and act altruistic, as well as its chance of survival to benefit the network is improved. 4.2 Phase 2: Spreading Altruism According to Hamilton’s rule, altruism spreads to the recipients if the gain to the recipients is more than the loss to the donor, which is formulated as L < rG

(4)

Where L is the loss factor to the donor, r is the connectedness of the recipient to the donor and G is the gain factor to the recipient. The formulation represented in equation (4), had also revealed that the donor’s fitness is also improved by assisting their relative peers[13]. Lemma 4: The peer also donates its altruism to the recipient peer with the resources. Proof: If the cost of each chunk i of resource is Li, the overall loss factor of a donor for one upload is given by = ∑  − (5) Where k is the total number of chunks, δ is the altruistic allele donated to the recipients. If the gain of each chunk i of resource is Gi, the overall gain factor of a donor for one download is given by  = ∑  (6) and for simplicity, Gi is calculated from Li and it is given as  =  + (7) δ in equation (7) is the altruistic allele transferred from the donor to the recipient.

172

Computer Science & Information Technology (CS & IT)

Lemma 5: A peer with more gain is more altruistic in the next generation. Proof: During the content discovery process a peer node searches for a resource for itself or for its relatives. When this peer identifies the resource and the same in x peers where x ≥ 2, then there arises a tie for the proper peer as donor. Then a peer P is selected as a donor using the following criteria.  = max  ;  = 1 ! "

(8)

Where n is the maximum number of peers with the searched resource and Amax is the maximum fitness out of those n peers. The donor peer is Pd, such that Pd = Pj if Apj = Amax Where Apj is the fitness of peer Pj. Now Pd will act as the donor peer of next generation which is because of the altruistic allele δ in its gain factor G that has improved its chance of being a donor. Lemma 6: A peer with more fitness is recommended for benefits in the network. Proof: Peers also maintain their interest on resources. When the loss factor L of a peer reaches or crosses a loss threshold, the peer is recommended for its resources of interest without any request by its relative peer to other peers in the network. This encourages every peer to be altruistic.

5. CONCLUSION As the interest and demand for P2P networks accessing is growing day by day, the cooperation among nodes should attract more nodes to join the network. If the nodes are selfish to take up other peer’s resources and not donate their resources, it may lead to the shutdown of the network or the network will be static. Even though many incentive based peer-to-peer resource sharing approaches exists, an approach based on kin selection is proposed in this paper. Since selfishness is a character of humanness or many other living organisms, and the solution to solve this trait in Genetics is proposed as a solution in selfishness problem in Peer-to-Peer networks. Hence this framework will avoid a peer to behave selfish, and encourage and disseminate altruism in all peers.

REFERENCES [1] [2] [3] [4] [5]

Stefano Arteconi, David Hales, and Ozalp Babaoglu: Greedy Cheating Liars and the ools Who Believe Them, ESOA 2006, LNAI 4335, pp. 161–175, Springer(2007). Qinghua Li, Wei Gao, Sencun Zhu, Guohong Cao: A routing protocol for socially selfish delay tolerant networks, Ad Hoc Networks, Elsevier, 2012, Volume 10, Issue 8, Pages 1619–1632 (2012). Murat Karakaya, Ibrahim Korpeoglu, Ozgur Ulusoy: Counteracting free riding in Peer-to-Peer networks, Computer Networks, Science Direct, 52: 675–694 (2008). Alex Friedman and Idit Keidar: Discouraging Selfishness in Lossy Peer-to-Peer Networks, Technion (2009) Idit Keidar Roie Melamed Ariel Orda: EquiCast: Scalable Multicast with Selfish Users, ACM, PODC (2006).

Computer Science & Information Technology (CS & IT) [6] [7] [8] [9] [10] [11] [12] [13]

173

Landon P. Cox, Brian D. Noble: Samsara: Honor Among Thieves in Peer-to-Peer Storage, ACM, SOSP (2003). Alberto Blanc, Yi-Kai Liu, Amin Vahdat: Designing Incentives for Peer-to-Peer Routing, IEEE, INFOCOM (2005). Michael Sirivianos Xiaowei Yang Stanislaw Jarecski: Dandelion: Cooperative Content Dis-tribution with Robust Incentives, Usenix (2007). James A.R. Marshall: Group selection and kin selection: Formally equivalent approaches, Trends in Ecology and Evolution, Elsevier (2011). W. D. Hamilton: Innate Social Aptitude of Man: An approach from Evolutionary Genetics, Biosocial Anthropology. pp. 133–155. Wiley, New York. Hardin, G. (1968). Steven A Frank: George Price’s Contributions to Evolutionary Genetics, Journal of Evolutio nary Biology, Elsevier (1995). B. Brembs: Hamilton’s theory, Encyclopedia of Genetics, Academic Press (2001). (Online) www.wwnorton.com

SEMI ADIABATIC ECRL AND PFAL FULL ADDER Subhanshi Agarwal and Manoj Sharma Electronics and Communication Engineering Department Bharati Vidyapeeth’s College of Engineering New Delhi, India

ABSTRACT Market demands have compelled the VLSI industry stake holders to integrate more and more number of functionalities and which is also being well supported by the advances in fabrication techniques. This has challenged the circuit designers to design the power ware circuits and in the process many experts are using concept from other engineering areas to resolve the power equations more optimally. Adiabatic Logic is one such technique used to reduce the power dissipation of the circuit utilizing the principle from thermo dynamic of zero entropy exchange with environment. Authors have used adiabatic principle and implemented full adder circuit with ECRL and PFAL techniques. Transistor count for carry and sum are 14, 22 and 16, 24 respectively for ECRL and PFAL. The maximum frequency, maximum load driving capability are analyzed for 1.25 micron and 0.18 micron technology. It is found that for 1.25 micron technology ECRL based carry circuit dissipates least power of 2.860176 µW at 25 MHz, max power of 18.17460 µW at 100 MHz and maximum Cload derived is 7 fF with 8.464489 µW at 50 MHz. The PFAL based carry circuit dissipates least power of 38.52858 µW at 20 MHz, max power of 51.52832 µW at 100MHz and maximum Cload derived is 20 fF with 40.61746 µW at 50 MHz. ECRL based sum circuit dissipates least power of 4.932597 µW at 25 MHz, max power of 53.1588 µW at 100 MHz and maximum Cload derived is 30 fF with 29.6655 µW at 50 MHz. The PFAL based sum circuit dissipates least power of 7.052026 µW at 25 MHz, max power of 53.33038 µW at 100 MHz and maximum Cload derived is 20 fF with 24.11132 µW at 50 MHz. For 0.180 micron technology – ECRL based carry circuit dissipates 59.2158 µW at fmax of 200MHz and maximum Cload derived is 20 fF with 88.63479 µW at 200MHz. PFAL based carry circuit dissipates 583.6617 µW at 20 MHz. ECRL based sum circuit dissipates 24.37457 µW at fmax of 200 MHz and maximum Cload derived is 10 fF with 38.95504 µW at 200MHz. PFAL based sum circuit dissipates 1555.033 µW at 20 MHz.

KEYWORDS ECRL, PFAL, Full Adder, Adiabatic circuit

1. INTRODUCTION Low power circuits aim at providing best output and utilizing minimum possible power. Need for low power VLSI circuits is increasing day by day due to remarkable success and growth of the class of personal computing devices and wireless communications systems which demand highspeed computation and complex functionality with low power consumption. Large power Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 175–184, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3418

176

Computer Science & Information Technology (CS & IT)

dissipation requires larger heat sinks hence increased area and cost, and therefore highlight the need and importance of low power circuits. Adiabatic Logic is based on adiabatic switching principle. The term ‘adiabatic’ refers to a process in which there is no heat exchange with the environment [8-10]. The adiabatic switching technique can achieve very low power dissipation, but at the expense of circuit complexity. Adiabatic logic offers a way to reuse the energy stored in the load capacitors rather than the traditional way of discharging the load capacitors to the ground and wasting this energy [1].

2. ADIABATIC LOGIC TYPES Adiabatic families can be mainly classified as either Partially Adiabatic or Fully Adiabatic [2]. In Partially Adiabatic circuits, some charge is allowed to be transferred to the ground, while in Fully Adiabatic Circuits, all the charge on the load capacitance is recovered by the power supply. Efficient Charge Recovery Logic (ECRL) and Positive Feedback Adiabatic Logic (PFAL) are partially adiabatic techniques. ECRL is based around a pair of cross-coupled PMOS transistors. Their source terminals are connected to the power-clock, and the gate of each one is connected to the drain of the other. These nodes form the complementary output signals. The function is evaluated by a series of pull-down NMOS devices [3]. The basic structure of ECRL circuits is shown in figure 1. The core of the PFAL circuits is a latch made by the two PMOS and two NMOS, that avoid a logic level degradation on the output nodes “out” and “/out”. The two ntrees realize the logic functions. This logic family also generates both positive and negative outputs. Figure 2 shows the PFAL basic structure.

Fig 1: Basic structure of ECRL [3]

Fig 2: Basic structure of PFAL [4]

3. CIRCUIT IMPLEMENTATION A 1-bit full adder is a basic cell in digital computing systems. If it has three 1-bit inputs (A, B, and C) and two 1-bit outputs (sum and carry), then the relations between the inputs and the outputs can be expressed as:

Computer Science & Information Technology (CS & IT)

177

 B C + BC + A B C + BC sum = A carry = AB + BC + CA Tanner ECAD tool [8] is used for implementing the ECRL and PFAL semi adiabatic, dual rail full adder circuit and results obtained from the two are compared. 1.25 micron and 0.18 micron technologies are used. Tanner suit components S-edit is used for schematic entry, TSpice for simulation and W-Edit for waveform analysis. The logic function blocks (F) shown in the basic structures of ECRL and PFAL can be implemented using the above equations of sum and carry. Similarly, /F logic function block can be implemented by finding out the complement of sum and carry equations and then simplifying them. The equations for /F logic function block will be as follows:   BC + B C + A C sum = A BC + B









= ̅ +  .  + ̅ . ̅ + ̅  Figure 3 to figure 6 show the circuit implementations of the sum and carry using ECRL and PFAL techniques.

Fig 3: Circuit of Sum in an Adder using ECRL

Fig 4: Circuit of Carry in an Adder using ECRL

178

Computer Science & Information Technology (CS & IT)

Fig 5: Circuit of Sum in an Adder using PFAL

Fig 6: Circuit of Carry in an Adder using PFAL

4. RESULTS The two circuits are verified with different set of test vectors covering several input combinations for different set of frequencies and load capacitances. The simulation waveforms are shown in figure 7 to figure 10. The results pertaining to minimum voltage, average power, maximum frequency and maximum load are tabulated in table1 to table 7. The results are graphically analyzed and shown in figure 11 to figure 17.

Computer Science & Information Technology (CS & IT)

Fig 7: Waveform for Sum in an Adder using ECRL

Fig 8: Waveform for Carry in an Adder using ECRL

Fig 9: Waveform for Sum in an Adder using PFAL

179

180

Computer Science & Information Technology (CS & IT)

Fig 10: Waveform for Carry in an Adder using PFAL

Computer Science & Information Technology (CS & IT)

181

Transistor Count, Maximum Frequency and Average Power for carry using 0.18micron technology

583.6617 600 500 400 300

ECRL

200

PFAL

200 100

14

16

20

59.2158

0 NUMBER OF TRANSISTORS

MAXIMUM FREQUENCY(MHz)

AVERAGE POWER(µW)

Fig 11: Comparison between carry-ECRL ECRL and PFAL for 0.18 micron technology

182

Computer Science & Information Technology (CS & IT) Transistor Count, Maximum Frequency and Average Power for Sum(0.18 micron technology)

1555.033

2000 1500

ECRL

1000 22

500

200

24

20

24.37457

PFAL

0 NUMBER OF TRANSISTORS

MAXIMUM FREQUENCY(MHz)

AVERAGE POWER(µW)

Fig 12: Comparison between sum sum-ECRL ECRL and PFAL for 0.18 micron technology Transistor Count, Maximum Load Capacitance and Average Power at f=200MHz(0.18 micron technology)

88.63479

100 80 60

38.95504

40 14

22

20

20

ECRL(CARRY) ECRL(SUM)

10

0 NUMBER OF TRANSISTORS

MAXIMUM LOAD CAPACITANCE(fF)

AVERAGE POWER(µW)

Fig 13: Transistor Count, Maximum Load Capacitance and Average Power at f=200MHz ECRL sum and carry for 0.18 micron technology

Fig 14: Average Power and Frequency for Sum ECRL and PFAL for 1.25 micron technology

Computer Science & Information Technology (CS & IT)

183

For Carry Circuit at f=50MHz using 1.25 micron technology

40.61746

50 40 30 20 10 0

14

20

16

ECRL 8.464489

7

NUMBER OF TRANSISTORS

PFAL

MAXIMUM LOAD CAPACITANCE(fF)

AVERAGE POWER(µW)

Fig 15: ECRL and PFAL Carry Circuit at f=50MHz using 1.25 micron technology Analysis for SUM at f=50MHz using 1.25 micron technology

50

22 24

30

20

29.6655 24.11132 ECRL

0 PFAL

Fig 16: ECRL and PFAL Sum Circuit at f=50MHz using 1.25 micron technology

AVERAGE POWER(µW)

Average Power versus Frequency for Carry

60 50 40 30

ECRL

20

PFAL

10 0 25

50

100

FREQUENCY(MHz)

Fig 17: ECRL and PFAL Carry Circuit Power vs frequency

184

Computer Science & Information Technology (CS & IT)

5. CONCLUSION Authors have implemented the full adder circuit using semi adiabatic, dual rail, ECRL and PFAL techniques with 1.25 micron and 0.18 micron technology. Through the implementation, authors have compared the two techniques with respect to the transistor count, maximum operating frequency, power dissipation and output level quality. The transistor count for carry and sum are 14, 22 and 16, 24 respectively for ECRL and PFAL. It is found that for 1.25 micron technology ECRL based carry circuit dissipates least power of 2.860176 µW at 25 MHz, max power of 18.17460 µW at 100 MHz and maximum Cload derived is 7 fF with 8.464489 µW at 50 MHz. The PFAL based carry circuit dissipates least power of 38.52858 µW at 20 MHz, max power of 51.52832 µW at 100MHz and maximum Cload derived is 20 fF with 40.61746 µW at 50 MHz . ECRL based sum circuit dissipates least power of 4.932597 µW at 25 MHz, max power of 53.1588 µW at 100 MHz and maximum Cload derived is 30 fF with 29.6655 µW at 50 MHz. The PFAL based sum circuit dissipates least power of 7.052026 µW at 25 MHz, max power of 53.33038 µW at 100 MHz and maximum Cload derived is 20 fF with 24.11132 µW at 50 MHz. For 0.180 micron technology – ECRL based carry circuit dissipates 59.2158 µW at fmax of 200 MHz and maximum Cload derived is 20 fF with 88.63479 µW at 200MHz. PFAL based carry circuit dissipates 583.6617 µW at 20 MHz. ECRL based sum circuit dissipates 24.37457 µW at fmax of 200 MHz and maximum Cload derived is 10 fF with 38.95504 µW at 200MHz. PFAL based sum circuit dissipates 1555.033 µW at 20 MHz. The output levels for PFAL are better and stabilize quickly as compared to the ECRL based full adder circuit.

REFERENCES [1]

Rama Tulasi, G., Venugopal, K., Vijayabaskar, B., SuryaPrakash, R.: Design & Analysis of full adders using adiabatic logic. In: International Journal of Engineering Research & Technology (IJERT), vol. 1, Issue 5, July 2012. [2] Indermauer, T., Horowitz, M.: Evaluation of Charge Recovery Circuits and Adiabatic Switching for Low Power Design. In: Technical Digest IEEE Symposium Low Power Electronics, San Diego, pp. 102-103, October 2002. [3] http://dspace.thapar.edu, Sanjay Kumar “Design Of Low Power Cmos Cell Structures Based On Adiabatic Switching Principle”. [4] Fischer, J., Amirante, E.,Bargagli-Stoffi, A., Schmitt-Landsiedel, D.: Improving the positive feedback adiabatic logic family. In: Advances in Radio Science(2004), pp. 221-225 [5] Atul Kumar Maurya, Gagnesh Kumar: Energy Efficient Adiabatic Logic for Low Power VLSI Applications. In: International Conference on Communication Systems and Network Technologies 2011. [6] Y. Sunil Gavaskar Reddy, V.V.G.S. Rajendra Prasad. In: Power Comparison Of CMOS and Adiabatic Full Adder Circuits. [7] http://www.tannereda.com/ poduct 21 dec 2012 [8] Adiabatic Process http://hyperphysics.phy-astr.gsu.edu/hbase/thermo/adiab.html date 21 Dec 2012 [9] Adiabatic Process, http://www.britannica.com/ EBchecked/topic/5898/adiabatic-process date 21 dec 2012 [10] The Adiabatic Principle http://academic. brooklyn.cuny.edu/education/jlemke/webs/time/mcaadiabatic.htm date 21 dec 2012

THE IMPROVEMENT AND PERFORMANCE OF MOBILE ENVIRONMENT USING BOTH CLOUD AND TEXT COMPUTING Dr.S.Saravana Kumar, J.Lakshmi Priya, P.Hannah Jennifer, N.Jeff Monica and Fathima Panimalar Institute of Information Technology Chennai, India {Saravanakumars81,hannahalbert07,lakshmibtch,monica.nedun, ayeshu9298}@gmail.com

ABSTRACT In this research paper presents an design model for file sharing system for ubiquitos mobile devices using both cloud and text computing. File sharing is one of the rationales for computer networks with increasing demand for file sharing applications and technologies in small and large enterprise networks and on the Internet. File transfer is an important process in any form of computing as we need to really share the data across. The Wireless Network changed the way we were sharing the files. Infra-Red and Bluetooth are the technology we use to share files in mobile phones and Bluetooth is the successful one. In exisiting system there is no immediate predecessor for the proposed system. Bluetooth file transfer is the already existing system. Drawbacks of Existing System are Short Range , Slow transfer rate and Unsecure .But in our research paper the idea is to use Both cloud and text computing network to transfer files.A wireless network is created and the devices connected in this network can share files between them. Benefits over the Existing System are more Secure , Range – upto 300 mts and Data rate is 50-140 mbps. In future without internet connection we can transfer our information very easily.Key words : cloud and text computing, Bluetooth, network, internet, system , file transfer.

1. INTRODUCTION Cloud Computing and Text Computing are becoming the hottest topics due to the increase in the technological advancements. In this research wifi source is used instead of local network. You can shift your whole OS to the Web using the Concept of Cloud Computing. Text Computing is used as an addition feature to provide more performance measure and efficiency for Cloud Computing.

2. WHAT IS CLOUD COMPUTING ? Cloud computing is Internet-based computing, whereby shared resources, software and information are provided to computers and other devices on-demand, like electricity. Computing in which services and storage are provided over the Internet (or "cloud").Cloud computing is a Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 185–191, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3419

186

Computer Science & Information Technology (CS & IT)

general term for anything that involves delivering hosted services over the Internet. These services are broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-asa-Service (PaaS) and Software-as-a-Service (SaaS).

2.1 Software as a Service With software as a service as large number of concern can access applications and large amounts of virtual computing power without buying it. instaed, the application is used by some other company, that huge loss of cost and time for the users. Some Service applications may operate via a connection between two or many networks . "Now we're talking about large number of computers" linked together via the Internet or some other network connection.

3. PURPOSE OF CLOUD COMPUTING While using online storage application when it get stores or we going download else timing or any other internet-based application, you use Cloud and text Computing. Internet based applications is mainly used for daily in home, organization, schools, offices, social media, etc. There are technological, economic and communications reasons for why Cloud Computing is used by many people. Simply we can one sentence , its user friendly , easier to learn and easy to understand by all people including new learner too, finally easy remember ever technical aspect.

4. ADVANTAGES OF CLOUD COMPUTING Main advantages of cloud computing Query Flooding and Query responses are monitored and kept on track for future verification in order to avoid major flaws in the system. Peer Nodes failure will be automatically updated to the fellow nodes and an automatic inherit plan occurs to avoid bifurcation of request to the failed peers.

4.1 Reduced Cost: Cloud technology is paid incrementally, saving organizations money.

4.2 Increased Storage: Organizations can store more data than on private computer systems.

4.3 Highly Automated: No longer do IT personnel need to worry about keeping software up to date.

4.4 Flexibility: Cloud computing offers much more flexibility than past computing methods.

Computer Science & Information Technology (CS & IT)

187

4.5 More Mobility: Employees can access information wherever they are, rather than having to remain at their desks.

4.6 Allows it to Focus: No longer having to worry about constant server updates and other computing issues, government organizations will be free to concentrate on innovation.

5. REQUIREMENTS OF CLOUD COMPUTING Requirements specification is produced at the culmination of the analysis task. The function and performance allocated to software as part of system engineering are refined by establishing a complete information description as functional representation of system behavior, an indication of performance requirements and design constraints, appropriate validation criteria.

Figure 1.Cloud Computing Network

6. WEB OS- MEANS MOVING OS TO THE WEB This study is carried out to check the technical feasibility, that is, the technical requirements of the system. Any system developed must not have a high demand on the available technical resources. This will lead to high demands on the available technical resources. This will lead to high demands being placed on the client. The developed system must have a modest requirement, as only minimal or null changes are required for implementing this system. Of course, the Web OS won’t replace the traditional operating system any time soon. But as users become more comfortable working over the Web, the Web OS could become more popular. Nonetheless, the technology still has several important shortcomings that proponents must address.

7. EARLY DEVELOPMENTS One of the Web OS’s predecessors was Tarantella, which the Santa Cruz Operation launched in 1993. It was a Unix-based X Window System that worked over corporate networks and let PCs

188

Computer Science & Information Technology (CS & IT)

display a Unix desktop. However, the technology never caught on commercially. Sun acquired Tarantella in 2005 and integrated it into the SGD. In 1992, University of California, Berkeley, researchers began work on what, four years later, became Web OS. The system delivered OS like functionality via the Internet.

8. INSIDE THE WEB OS Web OSs bring together Web based applications using the browser as the interface, which is designed to look like a traditional operating system’s interface, as Figure 1 shows. They work with a URL-based file system that lets a Web based application access files from the OS provider’s server online via a domain-name-system query. Similarly, the technology uses a location-independent resource naming system that lets applications make calls to services and resources on remote severs.

Figure 2. Simplified Web Os Architecture

Figure 3. Web Os System Architecture The Application Environment refers to Objector uses the term” agents” to represent some of the hardware and software systems. In Fusion method, there is no requirement phase, where a user will supply the initial requirement document. Any software project is worked out by both the analyst and the designer. The Architecture is a graphic tool used for expressing system requirements in a graphical form. The purpose of clarifying system requirements and identifying major transformations that to become program in system design. This can be stated as the starting point of the design phase that functionally decomposes the requirements specifications down to the lowest level of detail. It consist of series of bubbles joined by lines. The bubbles represent data transformations and the lines represent data flows in the system. This describes what that data flow in rather than how they are processed. So it does not depend on hardware, software, data structure or file organization.

Computer Science & Information Technology (CS & IT)

189

9. ADVENT OF WEB APPLICATIONS The development of Web OSs has been the improvement of Web-based applications using text computing. Several of these applications have started gaining traction in recent years, particularly those for e-mail (such as Hotmail and Gmail), instant messaging, and storage (like Xdrive). Recently, there have also been Web -based word-processing and spreadsheet applications (such as Google Docs and Number). With the first generation of Web applications, implementing even some modest functions like dragging and dropping files, making minor changes to documents without having to refresh the entire page, and caching data locally—was difficult.

10. TEXT COMPUTING Text computing is nothing but resources from multiple concern domains from a similar goal. Text Computing is an technology that provides seamless access to computing large amount of data storage capacity and distributed all over the world.

10.1 Purpose of Text is Cloud The cloud computing is achieves its communication with supercomputing, or high-performance computing power, sequentially used by military and research facilities, to perform million of computations works per second, in consumer-oriented applications such as financial portfolios or even to deliver personalized information, or power immersive computer application likes multimedia, graphics ,etc . We can increase our ability of work it by coupling it with Text computing.

10.2 The Text Batch System There are two fundamental data types in Text-Batch: table or indexed table (borrowed from database terminology). A table contains a set of records (rows) that are independent of each other. All records in a 730 table follow the same schema, and each record may contain several fields (columns). Indexed table is SIMILAR to table except that each record also has an associated index, where the index could simply be one of the fields or other data provided by the user. The Text-Batch system consists of two pieces of related software components: the distributed file system (DFS) and the job scheduler.

Figure 4. Cloud with Text Architecture

190

Computer Science & Information Technology (CS & IT)

11. CONCLUSION Cloud solution embeds a state-of-the-art PIR protocol in a distributed environment, by utilizing a novel striping technique. Cloud can retrieve arbitrarily large blocks of information with a single query. We present a comprehensive solution that includes a data placement policy, result retrieval, and authentication mechanisms, which confirm the effectiveness and practicality of our scheme. Specifically, compared to the traditional client/server architecture, pCloud drops the query response time by orders of magnitude, and its performance improves linearly with the number of peers. Whether you call it Cloud Computing or utility computing, the omnipresent power of high-speed internet connections and linkages to databases, applications and processing power will change the way we work in communications. We may use Cloud Computing tools without being aware of what they actually are. We may learn our way into Cloud Computing applications that seem strange today. We will find entirely new applications in the Cloud to help send messages more effectively to target audiences. Young practitioners today will stand back and listen with wry smiles to their seniors who talk about the “good old days” when the PC first appeared and early Local Area Networks provided the first hint of productivity. In fact, they are smiling already at the old fogies.

REFERENCES [1]

[2] [3]

[4] [5]

[6]

Mancini,E.P.;Rak,M.;Villano,U.; Enabling Technologies: Infrastructures for Collaborative Enterprises, 2009. WETICE '09. 18th IEEE International Workshops on Digital Object Identifier: 10.1109/WETICE.2009.47 Publication Year: 2009 , Foster,I.;YongZhao;Raicu,I.;Lu,S.; Text Computing Environments Workshop, 2008. GCE '08 Digital Object Identifier: 10.1109/GCE.2008.4738445 Publication Year: 2008 Mancini, E.P.; Rak, M.; Villano, U.; Enabling Technologies: Infrastructures for Collaborative Enterprises, 2009. WETICE '09. 18th IEEE International Workshops on Digital Object Identifier:10.1109/WETICE.2009.47 Publication Year: 2009 Vieira, K.; Schulter, A.; Westphall, C.B.; Westphall, C.M.; IT Professional Volume: 12 , Issue: 4 Digital Object Identifier: 10.1109/MITP.2009.89 Publication Year 2010; Shuai Zhang; Shufen Zhang; Xuebin Chen; Xiuzhen Huo; Future Networks, 2010. ICFN '10. Second International Conference on Digital Object Identifier: 10.1109/ICFN.2010.58 Publication Year: 2010 AjayKumar, S.; Nachiappan, C.; Periyakaruppan, K.; Boominathan, P.; 2009 International Conference on Signal Processing Systems Digital Object Identifier: 10.1109/ICSPS.2009.106 Publication Year: 2009

Computer Science & Information Technology (CS & IT)

AUTHORS Dr. S. Saravana Kumar received the Undergraduate Degree in Information Technology from Madras University, the Post Graduate degree in Computer Science and Engineering from Anna University ,and Doctorate from Bharath university. He has published more than 45 publications in National and International journal proceeding. He has more than11 years of teaching experience. His areas of interest includes Artificial Neural Networks , Image Processing, Data Mining, Data Structures, Database Management Systems, Distributed systems and Operating systems.

J.Lakshmi Priya is a third year student pursuing her B. tech Information Technology, Panimalar institute of Technology. She has attended several conferences and National level Symposium. She has submitted papers on cloud computing, peer to peer systems and search engine optimisation. Her domain of interest are Database management and systems, mobile optimization.

P. Hannah Jennifer is a third year student pursuing her B.Tech Information Technology, Panimalar Institute of technology. She has attended several conferences and National level symposium. She has submitted papers on peer to peer systems and search engine optimization. Her domain of Interest in area of Adhoc, ANN, Security in Sensor Network, Mobile Database and Data Mining.

N. Jeff Monica is a third year student pursuing her B.Tech Information Technology, Panimalar institute of technology. She has attended several conferences and National level symposium. She has submitted papers on system search engine optimization. Her domain of Interest are Database management and systems, web technology and web designing technology.

Z. Fathima is a third year student pursuing her B.Tech Information Technology, Panimalar Institute of Technology. She has attended several Conferences and National Level symposium. She has submitted papers on Cloud computing, peer to peer system and search engine optimization. Her domain of Interest are web technology, web designing, search engine optimisation.

191

A SEMANTIC BASED APPROACH FOR KNOWLEDGE DISCOVERY AND ACQUISITION FROM MULTIPLE WEB PAGES USING ONTOLOGIES A.M.Abirami1, Dr.A.Askarunisa2 1

Department of Information Technology, Thiagarajar College of Engineering, Madurai, Tamil Nadu, India, [email protected]

2

Department of Computer Science and Engineering, Vickram College of Engineering, Enathi, Tamil Nadu, India [email protected]

ABSTRACT The data from internet are dispersed in multiple documents or web pag-es. Most of them are not properly structured and organized. It becomes necessary to organize these contents in order to improve the search results by increasing the relevancy. The semantic web technologies and ontologies play a vital role in in-formation extraction and new knowledge discovery from the web documents. This paper suggests a model for storing the web content in an organized and structured manner in RDF format. The information extraction techniques and the ontologies developed for the domain together discovers new knowledge. The paper also proves that the time taken for inferring the new knowledge is also minimal compared to manual effort when semantic web technologies are used while developing the applications.

1. INTRODUCTION The World Wide Web has many documents which includes both relevant and irrelevant information. It becomes the user’s responsibility to disregard unnecessary data and considers the necessary information. Also some web pages have unstructured or semi-structured textual content and the user needs to aggregate or segregate information based on his search needs. So Information Extraction from the web documents becomes predominant now-a-days. The use of semantic web technologies like RDF, OWL, SPARQL, etc enables the information retrieval and extraction easier. A core data representation format for semantic web is Resource Description Framework (RDF). RDF is a data model for web pages. RDF is a framework for representing information about resources in a graph form. It was primarily intended for Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 193–200, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3420

194

Computer Science & Information Technology (CS & IT)

representing metadata about WWW resources, such as the title, author, and modification date of a Web page, but it can be used for storing any other data. It is based on triples subject-predicateobject that form graph of data [21]. All data in the semantic web use RDF as the primary representation language [16]. RDF Schema (RDFS) can be used to describe taxonomies of classes and properties and use them to create lightweight ontologies. Ontologies describe the conceptualization, the structure of the domain, which includes the domain model with possible restrictions [18]. More detailed ontologies can be created with Web Ontology Language (OWL). It is syntactically embedded into RDF, so like RDFS, it provides additional standardized vocabulary. For querying RDF data as well as RDFS and OWL ontologies with knowledge bases, a Simple Protocol and RDF Query Language (SPARQL) is available. SPARQL is SQL-like language, but uses RDF triples and resources for both matching part of the query and for returning results [17]. With the help of ontologies, the data is stored and organized in a meaningful way. It helps for context based search unlike the keyword based search, whereas the latter gives more irrelevant search results.

2. LITERATURE SURVEY Raghu et. al [1] developed yellow pages service provider by using semantic web technologies and improved the search results by increasing the relevancy through feedback mechanism for geospatial and mobile applications. Richard Vlach et.al [2], developed a single schema to extract information from multiple web sources and handled ambiguous text. Wood et. al. [3] extracted the botanical data presented in the form of text and defined a model for correlating them using ontologies. Rifat et. al [4], in his paper suggested the lazy strategy scheme for information extraction along with usual machine learning techniques by building the specialized model for each test instance. Jie Zou et. al [5] segmented HTML documents into logical zones for medical journal articles using Hidden Markov Model approach. In their technical report [6], Rifat Ozcan et. al used ontologies and latent semantic analysis technique to reduce the irrelevancy. Ayaz et.al [7] discussed that the data from web sites can be converted to XML format for better information analysis and evaluation. Harish et. al [8] developed an interactive semantic tool to extract pertinent information from unstructured data and visualized it through spring graph using NLP and semantic technologies. James Mayfield et.al [9] discussed that the information retrieval could be tightly coupled with inference so that the semantic web search engines can lead to improvements in retrieval. Mohammed et.al [10], in his paper developed a web based multimedia enabled eLearning system for selecting courses to suit to students’ needs using the dynamic mash-up technique. Uijal et.al [11] presented a Linked Data approach to discover resume information enabling the task aggregation, sharing and reusing information among different resume documents. Chris Welty et.al [12], in his research paper, transformed the data into knowledge base and used deeper semantics of OWL to improve the precision of relation extraction. Maceij Janik et.al [15] in their paper classified Wikipedia documents using ontology and claimed that their model not required training set for classification, but can be done with the help of ontologies. Canan Pembe et. al [18] proposed a novel approach for improving the web search by representing the HTML documents hierarchically. They used semantic knowledge to represent the section and subsection of HTML documents.

Computer Science & Information Technology (CS & IT)

195

3. METHODOLOGY The general methodology adopted in this paper is diagrammatically represented in Fig. 1 and explained in this section. Keywords are given to the search engines and the search results are analyzed further for relevant information extraction. The layout of different HTML pages is learnt and the pointer is moved to the section where the necessary data or information is present. We’ve conducted various experiments for different HTML’s tags for retrieving the information, which in detail is explained in Section 4. Relevancy of web pages is determined with the help of synsets generated by the WordNet. Earlier, ontologies, or the vocabularies used for different domains are generated using Protégé tool [15]. The user query is mapped with the updated repositories and ontologies by ontology mapping module and then the fine tuned results are given back to the user. This feedback mechanism introduced through ontology mapping increases the relevancy.

Fig. 1. Generic model for relevant Information Extraction from web documents Sample ontology representation [19] used for Experiment 1 is shown in Fig 2 where the relationship can be easily maintained for knowledge inference.

Fig. 2. Ontology representation of College staff members

196

Computer Science & Information Technology (CS & IT)

4. EXPERIMENTAL RESULTS We’ve conducted two different experiments with HTML pages to extract information and to discover new knowledge from them. We’ve used RDF for storing the content and SPARQL and Jena [18] for querying RDF content. Ontologies created using Protégé tool is used for context based search. It establishes the relationship between the concepts and enables the increased relevancy.

4.1 Experiment 1 The staff profile in various formats like .html, .pdf, .doc is fed to the structured data extraction module after preprocessing and converted into RDF format. The model followed for this process is shown in Fig. 3. For this experiment, we’ve taken our college web site (www.tce.edu) and collected the profiles of all staff members of all the departments. We’ve ignored the HTML pages in which the journal publication details may not present and have considered only the profiles which have the journal publication details. The number of documents taken for the experiment is shown in Table 1. We’ve used HTMLTidy parser to make the document syntactically clean document. By this process, all unclosed tags are closed and unwanted lines are removed.

Fig. 3. Model for Information Extraction from HTML pages (list tags) Once the pre-processing phase gets completed, the clean html pages are fed into structured data extraction phase. This is accomplished by using the Wrapper Induction Technique [20], which is the supervised learning approach, and is semi-automatic. In this approach, a set of extraction rules is learned from a collection of manually labeled pages. The rules are then employed to extract target data items from other similarly formatted pages. For eg. the journal profile of a staff member after conversion may look like A.M.Abirami An Enhanced ….. International Journal …. Technology

Computer Science & Information Technology (CS & IT)

197

2012 Similarly profile of all staff members are converted into RDF format. The words related for each research area are stored in the RDF format. The exact domain in which each staff member is doing research is identified with the help of these words and their titles in the publications. The similarity between each staff member is measured with respect to their publications, thus the staff with similar profile is easily identified. Cosine similarity measure is used for this purpose. Latent semantic indexing can also be used as the alternate. These set of profiles can be recommended for new persons who fall in the same category of research. Or the staff member can easily find his/her research colleagues to strengthen their relationships between them. The model suggested in this paper thus is helpful for categorizing the web documents. We’ve developed a tool to give the visualization effect such that the tool gives report on the number of people working in the particular research field, number of publication from each department in each journal and the like. The Table 1 shows the new knowledge discovered from the set of profiles. Among the staff members of the department, the persons working in the same research category are easily discovered. Table 1. Knowledge Discovered from staff member profile Department

Total Documents

Research Category

CSE

14

Distributed Computing

CSE - 5, IT - 4, MCA- 1, ECE – 3

IT

11

Data Mining

CSE - 2, IT - 3, MCA – 2

MCA

7

Security

ECE

26

Software Engineering

CSE - 2, IT - 1, MCA – 2

Image Processing

CSE - 2, MCA - 1, ECE – 4

Matched Documents

CSE - 3, IT – 3

4.2 Experiment 2 Now-a-days all the colleges use web applications to maintain the students’ personal and academic details, but it may be maintained and managed by one department. Not all department members are given access to the database and its tables. Sometimes it may become necessary to analyze the students’ attendance and performance details, but we are left with data in the web pages. In this case, it is better if these data are converted into suitable machine learnable format so that inference and analysis can be easily made on the data. Otherwise, the human support is very much required for this process.

198

Computer Science & Information Technology (CS & IT)

Fig. 4. Model for Information Extraction from HTML pages (Tables) We’ve followed the model given above to extract the relevant and required information about students from the different web pages as shown in Fig 4. We’ve used DOM APIs to extract the content from HTML tables and converted into XML for querying. Ontology is used for building the URL and the tool developed learns the set of information to be retrieved from the login id and other databases. Ontologies are constructed for various concepts like student, staff member, proctor, subjects and semester. The relationship between each concept is established using OWL and the pictorial representation is shown in Fig. 5. We’ve extracted our students’ data from the HTML pages into XML and RDF and used different XML query languages like XSLT, XPATH and SPARQL and compared the time taken for the inference and shown in Table 2.

Fig. 5. Ontology representation for Experiment 2

Computer Science & Information Technology (CS & IT)

199

Table 2. Knowledge Acquisiton from different web pages HTML Records

Manual Effort

Time taken (ms) Single XML/RDF file

Time Taken (ms) Multiple XML/RDF files

(in mts) XSLT XPath SPARQL

XPath

SPARQL

60

30

90

78

207

6458

890

140

80

350

218

220

25272

1190

200

130

540

360

230

97984

1388

500

280

985

795

240

213783

2398

Here the student details like personal, attendance and test marks are displayed in different HTML tables. For example, the attendance of a single class is displayed in a web page. In order to collate details of a single student, we need to parse three or more web pages. But the information extraction module traverses all these web pages and parses the content into required format like XML or RDF and enables for easy query processing. Single XML file means that a group of students details are stored in a file; multiple XML files means that each student detail is stored in separate files.

5. CONCLUSION We have developed different semantic web applications to convert the unstructured or semistructured text into XML/RDF format to enable easy machine processing. This approach leads to quick inferences and new knowledge discovery from the set of data. As a future enhancement, we will impart machine learning algorithms for classifying the web documents based on their content.

REFERENCES [1]

[2] [3] [4] [5] [6] [7]

Raghu Anantharangachar1 and Ramani Srinivasan .: Semantic Web techniques for yellow page service providers. International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.3, July 2012. Richard Vlach, Wassili Kazakaos .: Using Common Schemas for Information Extraction for Heterogeneous Web Catalogs. ADBIS 2003, LNCS 2798, pp.118-132, 2003. M.M. Wood, S.J. Lydon, V. Tablan, D. Maynard, and H. Cunningham.: Populating a Database from Parallel Texts Using Ontology-Based Information Extraction. LNCS 3136, pp. 254–264, 2004. Rifat Ozcan, Ismail Sengor Altingovde, and Ozgur Ulusoy .: In Praise of Laziness: A Lazy Strategy for Web Information Extraction. ECIR 2012, LNCS 7224, pp. 565–568, 2012. Jie Zou, Daniel Le and George R. Thoma .: Structure and Content Analysis for HTML Medical Articles: A Hidden Markov Model Approach. DocEng’07, ACM 978-1-59593-776. Rifat Ozcan, Y. Alp Aslandogan .: Concept Based Information Retrieval Using Ontolo-gies and Latent Semantic Analysis. A Technical Report, CSE-2004-8. Ayaz Ahmed Ayaz Ahmed Shariff K, Mohammed Ali Hussain, Sambath Kumar .: Lev-eraging Unstructured Data into Intelligent Information – Analysis & Evaluation. IPCSIT vol.4, 2011 International Conference on Information and Network Technology.

200 [8] [9] [10] [11] [12]

[13] [14]

[15] [16] [17] [18] [19] [20] [21]

Computer Science & Information Technology (CS & IT) Harish Jadhao, Dr. Jagannath Aghav, Anil Vegiraju .: Semantic Tool for Analysing Un-structured Data. International Journal of Scientific & Engineering Research, Volume 3, Issue 8. James Mayfield, Tim Finin .: Information Retrieval on the Semantic Web: Integrating inference and retrieval. SIGIR 2003 Semantic Web Workshop. Mohammed Al-Zoube, Baha Khasawneh .: A Data Mashup for Dynamic Composition of Adaptive Courses. The International Arab Journal of Information Technology, Vol. 7, No. 2, April 2010. Ujjal Marjit, Kumar Sharma and Utpal Biswas .: Discovering resume information using linked data. International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.2, April 2012. Chris Welty, William Murdoc. J: Towards knowledge acquisition from Information Ex-traction. ISWC'06 Proceedings of the 5th international conference on The Semantic Web, pages 709-722, 2006. Maciej Janik, Krys Kochut : Wikipedia in action: Ontological Knowledge in Text Cate-gorization. University of Georgia. Technical Report No. UGA-CS-TR-07-001. Canan Pembe, Tunga Gungor: Heading based Sectional Hierarchy Identification for HTML Documents. International Symposium on Conference in Computer and Informa-tion Sciences, ISCIS 2007. http://protege.stanford.edu/ http://www.w3schools.com/rdf/rdf_example.asp http://www.w3.org/TR/rdf-sparql-query/ http://jena.sourceforge.net/tutorial/RDF_API/ http://www.obitko.com/tutorials/ontologies-semanticweb/ontologies.htm Bing Liu,"Web data mining - Exploring hyperlinks,contents,and usage data". Grigoris Antoniou and Frank van Harmelen, "A semantic Web Primer".

SEMANTIC WEB QUERY ON EGOVERNANCE DATA AND DESIGNING ONTOLOGY FOR AGRICULTURE DOMAIN Swaran Lata1, Bhaskar Sinha2, Ela Kumar2, Somnath Chandra1 and Raghu Arora3 1

Department of Electronics and Information Technology, New Delhi, India 1

{slata, schandra}@deity.gov.in

2

Gautam Buddha University ,Greater Noida, India

2

[email protected], [email protected] 3

W3C India ,New Delhi, India 3

[email protected]

ABSTRACT Indian agriculture has made rapid progress on the agricultural front during the past three decades and is in a queue of the major producer in the world. But still it has long way to go and meet challenges ahead such as communication, resources, and availability at right time at right place. The web has had an amazing existence and it has been the driving force for a cause to grow information across boundaries, enabling effective communication and 24x7 service availability all leading to a digital information based economy that we have today. Despite that, its direct influence has reached to a small percentage of human population. Since localization populated with India and the applications are translated and adapted for Indian users. With the possible localization of spread raw formatted Indian government data, at different locations are thought to have integrated with each other using the internet web technology as – Semantic Web Network.

KEYWORDS Semantic web, Resource Description Framework, Ontology

1. INTRODUCTION As we know that semantic web network technology has gained superiority over the previous web technology because of its added feature of intelligence in web. So, the ICT’s role has advanced to get the benefit of its potential into respective domain where its use is inherent to facilitate service users/stakeholders. Agriculture is one of the important domain of any country on which people’s food and livelihood depends. India is one of the country whose dependency on agriculture and its related activity is mostly sought. India as it contributes 16% GDP and provides employment to Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 201–209, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3421

202

Computer Science & Information Technology (CS & IT)

52% of the Indian population. Timely access to information and service delivery is critical and of utmost important in this sector in view of time bound farm activities involved in all stages of the crop cycle [9]. Population and Agriculture is closely related according to FAO, UN and every country should make their strategy accordingly to reduce the cost of generation of census data and plan better. India is so vast and rich in varied agricultural product and its produces that distribution of products and service access remains untouched to some parts of the country. One major component of an progressive workplace is ICT accessibility - including websites and intranets. In this connection semantic web technology is well suited to facilitate the services and manage the resource distribution through proper management of knowledge base. Semantic web’s support for linked data is one of the solution to integrate all data sets and information spread across the various URL sites, that promises the availability of information and data at any time any were in the web. Making a consistent data available in web is one of the challenge and difficult to maintain. Semantic web’s RDF data support is the building blocks for developing ontology of any domain of interest. Our agriculture domain ontology is based on this RDF data and because of its inherent powerful feature of machine readability, representation of information and dynamic linking with other information datasets is amazing over XML based datasets. We are using Protégé framework to design and develop the our agricultural model and generate RDF data set to further use in query building and searching techniques. Also Oracle database has been used to store RDF/OWL datasets to enhance the farmers database. We also used SPARQL endpoint for querying the RDF datasets. Rest of the paper is organized as - In section 2, we first briefly describe in the Indian scenario and shortcomings in agricultural domain which eventually builds a motivation for building such integrated development environment. Section 3 describes methodology of design and development. Section 4 we have design a logical Agriculture Ontology model to generate RDF/OWL format. Section 5 defines the query processing over SPARQL end-point. Section 6 describes the future scope for enhancement and section 7 includes conclusion.

2. INDIAN AGRICULTURE AND ITS RESOURCE DISTRIBUTION - A CHALLENGE FOR SEMANTIC WEB TECHNOLOGY Well this is fine to rate our agriculture in the world scenario, but still we have some of the unfinished agenda in land reform, quantity and quality of water available, technological fatigues, access to information and data, adequacy and timeliness of institutional credit, etc. Adverse meteorological factors add to these problems. The worst affected are small and marginal farmers, tenants and share croppers, landless agricultural labour and tribal farmers, since their coping capacity is very limited[14]. Women suffer more since they have little access to institutional credit or organized extension support. Under these initiatives, Ministry of Agriculture Govt. of India itself has number of websites and portals for different divisions, directorates and projects related to various departments is currently existing. However these websites do not share web services among them and hence contents are static, non-consistent, non-integrated. Many time farmers and other stakeholders in the agricultural sector have to visit multiple websites to trace the desired piece of information or to avail a single service. Because of the varied technology standards, look-and-feel and aesthetics involved in these sites resulting a lot of inconvenience to the user and requires a lot of learning on their part to access the information and services. This results in repeated efforts, obsolete content, multiple sources of information, mismatch of information and hence confusing the service consumers.

Computer Science & Information Technology (CS & IT)

Indian Population

203

Population

15.00

In Milloins

10.00 5.00 0.00 1901 1911 1921 1931 1941 1951 1961 1971 1981 1991 2001 2011

Figure. 2. Ref. Indian Population[15] Population Growth Rate In Ten Years

Rate Of Growth

30.00 20.00 10.00 0.00 -10.00

Figure. 3. Ref. Indian Population Growth Rate[15]

3. METHODOLOGY Semantic Data Model for Indian Agriculture Domain for e-governance is using Semantic Web Technology and is based on RDF/XML/OWL data format of raw unstructured government data spread across various sites, which is further analyzed by setting trend analysis and spline curve fitting method in Matlab for interpolation of data into matrix format to minimize the error. Protégé Framework is used to design and develop our logical model into RDF/XML/OWL format dataset, which is the immediate objective of our getting well-form validated datasets. Protégé helps in correlating datasets, defining and describing well among the piece of datasets and

204

Computer Science & Information Technology (CS & IT)

establishes relationship between Subject Subject-Predicate-Object Object an inherent feature of RDF concept. It helps to reason as well as infers the class and subclass validity and their relationships.

Figure.4 Agriculture Ontology Design and Development Process Steps Not-a-Knot Spline 2.5

2

Y

1.5

1

0.5

0

-0.5

0

1

2

3

4

5

6

7

X

Figure.6 Spline Curve fitting Analysis of Population Growth. X and Y-axis axis is divided by 10 Figure .5. Trend analysis Of Population Growth Rate [15]

3.1 Identify & Justify the Concept Logical model is identified on the basis of facts, information and data available or derived from facts. Present functioning system and its drawbacks, short comings help in analyzing and justifying better approach to a solution. Such as the current system is not able to fulfil the farmers /stakeholders query and their day day-to-day day problem which the semantic web technology promises to prove better solution in terms of cost/be cost/benefit nefit and others with ease. Lot of distributed infrastructure support may resulting in cause of functional failure of the system. Optimized results through graph based search techniques justifies to adopt semantic web technology.

3.2 Establishing a Relationship onship Semantic Web Technology’s basic building block is finding relationship between subjectsubject predicate-object, object, which forms a triplet and this triplet infers URI to the web sites so as to make

Computer Science & Information Technology (CS & IT)

205

relationship between other nodes of the graph network of interest. Query which is done through specific query handling process with valid criteria to get desired results.

3.3 Set a Rule for Control Constraints are imposed to set SWRL axioms and laws to guide the search criteria or specific purpose and move to the right destination dynamically. We use OWL for describing rules to guide the search path, reasoning and inferring during clients request.

4. AGRICULTURE ONTOLOGY DESIGN – LOGICAL MODEL This model is an Agricultural Logical Model, there are various associated components attached with this overall model. We tried to generalized it by depicting its components. Other components are attached with its characteristic and functionality based on resources input /output and other concerning dependent bodies. Content management system supports handling all features and terms available including local datasets structured/unstructured as well as web related resources such as data available at URLs, which gets processed to get in RDF/OWL format and stored into database and accessed by various components to provide services to farmers/stakeholders. Ontology engg. Process helps to do proper analysis and reasoning /inferring of each component process with demand which will guide through OWL. Analyst /Expert can avail the resources and do queries of interest. Also can get various generated data /information reports and other form of resources in return.

Figure. 7. Agriculture Ontology Model and its various components

5. QUERY PROCESSING In this section we define the query processing done at SPARQL end-point which takes RDF format data and generating desired query result if any criteria set for. We have used open link’s

206

Computer Science & Information Technology (CS & IT)

SPARQL end –point to generate query. Query in triplet is generated to see the desired result of specific interest.

Figure.8 Query Processing at SPARQL End-Point

Figure. 9 Query Results at SPARQL End-Point Here Ontology is reasoning and inferring for the concept and trust which has been set for verification and validation.

Computer Science & Information Technology (CS & IT)

207

Figure. 10 Protégé Framework used for Designing and Developing Ontology

6. FUTURE SCOPE OF WORK Here in this paper we have drawn an overall idea of querying and searching RDF data by creating an ontology of agriculture domain through Protégé, there are various other way to develop and design ontologies using other frameworks. One of the way is to use of Jena/ Sesame that can be used to process RDF datasets for describing ontology better way. In our future work we are likely to include axioms and rule language of OWL to query in complex and specific query requirement to meet the desired result. Also, our effort will go to integrate other components of the agriculture domain and establish integrity and relations so that every component can share wherever it is needed.

7. CONCLUSIONS RDF/OWL dataset has its inherent capacity to establish natural relationship between URLs. Although it is very unpredictable to draw idea about next URLs network with whom current URL is trying to make relationship. And there exist a dynamic complex model of class to handle this. We draw a conclusion by saying Semantic Web Technology has amazing and tremendous power of mapping complex logical model into graphical model which binds and describes to the machine to understand that reduces lot of intermediate intricacies to carry out web based linking URLs with ease. This technology opens a door for intelligence era in web technology.

REFERENCES [1] [2] [3]

Berners-Lee, T., Linked Data, July 2007 http://www.w3.org/DesignIssues/LinkedData.html Hendler, J. 2008. Web 3.0: Chicken Farms on the Semantic Web. Computer 41, 1(Jan. 2008), 106108. Bhall. G. S, Singh. Gurmail, Final Report on Planning Commission Project Growth of Indian Agriculture: A District Level Study, G.S .New Delhi (Mar 2010)

208 [4]

[5] [6] [7]

[8]

[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22]

Computer Science & Information Technology (CS & IT) Accenture: eGovernment leadership: High performance, maximum value. http://www.accenture.com/NR/rdonlyres/D7206199-C3D4-4CB4-A7D8846C94287890/0/gove_egov_value.pdf (2004). Berners-Lee, T., Putting Government Data online, June 2009 http://www.w3.org/DesignIssues/GovData.html Li Ding, Dominic DiFranzo, Deborah L. McGuinness, Jim Hendler, Sarah Magidson, The Data-gov Wiki: A Semantic Web Portal for Linked Government Data, 2010. United Nations Statistics Division. 2011. 2010 World population and housing census pro-gramme: census questionnaires. [Online] New York: UNS http://unstats.un.org/unsd/censuskb20/Knowledgebase.aspx. Keita, N.; Srivastava, M.; Ouedraogo, E. & Kabore, M. 2010. Collecting agricultural data from population census: Overview of FAO recommendations and experiences of Burkina Faso and other countries. Fifth International Conference for Agricultural Statistics, Kampala, Uganda, 13 - 15 October 2010) Kumar. Ranjit, Ailing Agricultural Productivity in Economically Fragile Region of India: An Analysis of Synergy between Public Investment and Farmers’ Capacity,(Jan. 2010). http://www.semanticweb.com/ www.w3.org/standards/semanticweb/ www.w3cindia.in/ www.bbc.co.uk/ National commission on Farmers, 25th May2006, Serving Farmers and Saving Farming, Ministry of Agriculture, Govt. of India, New Delhi.http://agricoop.nic.in/Agristatistics.htm http://www.censusindia.net/ http://www.semantic-web-book.org http://www.agricoop.nic.in W3C, SPARQL Query Language for RDF,http://www.w3.org/TR/2006/CR-rdf-sparql-query20060406, 2004. F. Manola and E. Miller (Ed.), “RDF Primer,” W3C Recommendation, February 2004, http://www.w3.org/TR/rdf-primer/. M. Wylot, J. Pont, M. Wisniewski, and P. Cudr´e-Mauroux,“diplodocus[rdf] - short and long-tail Rdf analytics for massive webs of data,” in International Semantic Web Conference (ISWC), 2011. L. Zou, J. Mo, L. Chen, M. T. Oezsu, and D. Zhao, “gstore: Answering sparql queries via sub-graph matching,” PVLDB, vol. 4, no. 8, 2011. Pascal Hitzler, Markus Krötzsch, Sebastian Rudolph, “Foundations of Semantic Web Technologies”.Chapman & Hall/CRC, 2009.http://www.semantic-web book.org/wiki/FOST

AUTHORS Ms. Swaran Lata is presently heading Department of Information Technol-ogy’s National Strategic programme ‘TDIL’. She is member of various inter-national Standardization bodies ISO, UNICODE, W3C and ELRA. She is in-strumental in getting all 22 officially recognized languages including Vedic Sanskrit incorporated in UNICODE. She is also Country Manager, W3C India Office. She has a very vast and in depth experience towards proliferation of Indian Language solutions ,Key role in initiating mission mode consortium projects in the area of Development of EnglishHindi Machine Translation system and Indian language to Indian language Machine Translation System, Optical Character Recognition System etc, Key role in establishing W3C India office and leading the activity of Internationalization requirements in W3C standards, Member of W3C Consortium’s “Global Vision Task Force”

Computer Science & Information Technology (CS & IT) Dr. Somnath Chandra is currently working as Dy. Country Manger W3C India, C.G.O complex, New Delhi, India. He has done his B.Tech, M.Tech. from IIT Kharagpur, and Ph.D. from IIT Delhi. He has extensively worked on Optical Fiber and Web Technology.

Dr. Ela Kumar is working as Associate Professor, and Dean SOICT, Gautam Buddha University, Greater Noida (U.P.). She has done her B.E and M.Tech from IIT Roorkee, Ph. D. from Delhi University. She has worked lot in Artifi-cial Intelligence, Soft Computing Technique and other Intelligence Systems with having number of research papers and publications on her name.

Bhaskar Sinha has completed his M.tech. from GBU, Greater Noida, with Intelligent System & Robotics and preparing for Ph.D. program. Did his M.Tech thesis in “Semantic Web Technology” and willing to continue his Ph.D. in Semantic Web Technology. Earlier he had worked in IT industry and have good experience in IT.

Raghu Arora is currently working as a Sr. Software Engineer. in W3C India, New Delhi and has done his B.Tech from SKIT ,Jaipur. He is having Three years of Expeience in Web Technology currently he is working on Semantic Web Technology.

209

A THROUGHPUT ANALYSIS OF TCP IN ADHOC NETWORKS S.P.Valli1,K.M.Mehata2 1

[email protected]

Department of Computer Science and Engineering B.S.Abdur Rahman University,Chennai. 2

[email protected]

Department of Computer Science and Engineering B.S.Abdur Rahman University,Chennai.

ABSTRACT. Transmission Control Protocol (TCP) is a connection oriented end-end reliable byte stream transport layer protocol. It is widely used in the Internet.TCP is fine tuned to perform well in wired networks. However the performance degrades in mobile ad hoc networks. This is due to the characteristics specific to wireless networks, such as signal fading, mobility, unavailability of routes. This leads to loss of packets which may arise either from congestion or due to other non-congestion events. However TCP assumes every loss as loss due to congestion and invokes the congestion control procedures. TCP reduces congestion window in response, causing unnecessary degradation in throughput. In mobile ad hoc networks multi-hop path forwarding further worsens the packet loss and throughput. To understand the TCP behavior and improve the TCP performance over mobile ad hoc networks considerable research has been carried out. As the research is still active in this area a comprehensive and in-depth study on the TCP throughput and the various parameters that degrade the performance of TCP have been analyzed. The analysis is done using simulations in Qualnet 5.0

KEYWORDS: TCP, Ad hoc networks, Retransmissions, Throughput.

1. INTRODUCTION An ad hoc network consists of a collection of individual devices that directly communicate with each other. A mobile ad hoc network is a type of ad hoc network that can change locations and configure itself on the fly and requires no infrastructure for communication. Every node acts as a router and performs route discovery and route maintenance. The responsibilities for organizing and controlling the network are taken care by the nodes themselves. Nodes within radio range communicate directly via wireless links. Since mobile Ad Hoc network communicates using wireless media, it has restriction of communication such as interference of signal, noise and data loss against environment. The main objective of this paper is to give an insight into the various parameters that affect the TCP throughput in an ad hoc network. The paper is organized as follows. Section 1 gives an introduction to ad hoc networks and their characteristics. Section 2 concentrates on overview of Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 211–218, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3422

212

Computer Science & Information Technology (CS & IT)

TCP. Section 3 discusses problems and issues of TCP in mobile ad hoc networks. Section 4 presents the related work in this area of research. Section 5 gives a detailed discussion on the results of the throughput analysis based on simulations. Finally, Section 6 gives the conclusion.

2. TCP OVERVIEW TCP is a connection-oriented, reliable, end-to-end, byte stream transport protocol designed to be used over unreliable internetworks.TCP has got an extensive application in Internet because of its mechanisms of reliable transmission, traffic control and congestion control. TCP reduces the size of congestion window to ensure reliable data transmission and reduce the degree of network congestion when packet loss event occurs. The congestion control mechanism of TCP is very effective in the low Bit Error Rate (BER) link such as wired link, because the probability of packet loss or error is very small in low BER link, in other words, almost all packet loss events in low BER link are caused by network congestion. But in a high BER link such as wireless link, this criterion that is used to determine network congestion by the congestion control mechanism of TCP is wrong. TCP provides reliability by a mechanism of acknowledgment and re-transmission. TCP assigns a sequence number to each byte transmitted and starts a timer which is a function of the estimated round trip time. This is called a Retransmission Timeout (RTO) interval. When the receiver receives a packet with sequence number ‘n’ it sends an acknowledgment ‘n+1’ indicating the next expected sequence number [1]. If an acknowledgment is not received within the timeout interval the sender assumes it as a lost packet and the data is retransmitted. A sender can send at most a window's worth of packets without receiving ACKs. The current implementation of TCP includes four main congestion control algorithms [2] such as slow start, congestion avoidance, fast retransmit and fast recovery. TCP uses two main windowbased mechanisms: the receive window and the congestion window. The receive window is the receive-side limit and congestion window is the number of segments that will be sent before waiting for an acknowledgement. The window size is adjusted dynamically based on two TCP state variables: the congestion window (cwnd), and the slow-start threshold (ssthresh). Initially ‘cwnd’ is one segment and it is increased upon every ACK received. The increase is exponential in the slow-start phase (i.e., doubling cwnd every RTT, until ssthresh is reached), and linear in the congestion avoidance phase (i.e., increasing cwnd by one segment for every complete window's worth of data exchanged).TCP uses packet loss as an implicit signal of network congestion When a retransmission timeout occurs ‘ssthresh’ is set to half the window size before packet loss started and ‘cwnd’ is set to one segment and the slow start phase is initiated. In order to avoid this, another commonly used strategy is fast retransmit which uses duplicate ACKs (typically 3) to trigger the retransmission of a missing packet, well before the retransmission timer expires. After retransmitting the missing segment fast recovery algorithm takes over.

3. TCP IN WIRELESS AD HOC NETWORKS The performance of TCP degrades in wireless networks because the assumptions of TCP are with respect to wired networks and they may not hold the same in a wireless environment. In wired networks, buffer overflows are the main reason for most packet loss. When a packet loss event occurs TCP slows down the sending rate by adjusting its congestion window. Unfortunately, wireless networks suffer from other types of losses that are not related to congestion also. Some of the factors that have the most significant impact on the TCP performance and that lead to the performance degradation of the TCP have been analyzed in detail.

Computer Science & Information Technology (CS & IT)

213

3.1 Mobility In a mobile ad hoc network as mobile nodes moves out of the transmission range of the other nodes, route failure and link breakage occur leading to packet losses. However TCP cannot distinguish the cause of packet loss and assumes it as congestion and thereby congestion control is invoked. After a route failure if the route discovery process takes longer time than the RTO, the TCP sender will invoke congestion control after timeout. The throughput already reduced due to packet losses further decreases.

3.2 Multipath routing Due to mobility the network topology frequently changes in ad hoc networks. The topology changes lead to route breakages and hence the route to a particular destination may need to be recomputed very often. This introduces some delay due to route recomputation and packets may not arrive in order. The TCP receiver misinterprets such out-of-order packet arrivals as congestion and thus generates duplicate ACKs. This causes the sender to invoke congestion control algorithms like fast retransmission.

3.3 Congestion Window TCP considers the congestion window as a measure of the rate of transmission that is acceptable to the network. However in an ad hoc wireless network, congestion control is invoked for various reasons such as route failure, link breakage, network portioning and so on. The congestion window size computed for the old route may be too large for the newly found route, resulting in network congestion if the sender still transmits at the full rate allowed by the old congestion window size.

3.4 Energy efficiency Energy resources are limited in an ad hoc environment than in a wired network. Hence any scheme devised for such a network must be energy efficient.

3.5 Channel error TCP data packets from the sender or acknowledgments from the receiver may be corrupted by bit errors, leading to the loss of TCP data packets or acknowledgements. This leads to misinterpretation as packet loss due to congestion and retransmission is done. In the case of an acknowledgement lost the TCP sender waits till the RTO to invoke congestion control procedures.

3.6 Medium contention and collision There are three key problems in wireless environments the hidden terminal problem, the exposed terminal problem, and unfairness. These problems could be still worse in multi-hop ad hoc networks than in wireless because ad hoc networks are characterized by multi-hop connectivity. To summarize some of the main factors that contribute to performance degradation of TCP in wireless networks are • • • •

TCP is unable to differentiate losses due to route failure and losses due to congestion. Hidden and exposed terminal problems. Frequent Route failures caused by node mobility. Unpredictable channel errors.

214

Computer Science & Information Technology (CS & IT)

• TCP unfairness

4. RELATED WORK In this section we present various methods proposed in literature to enhance the performance of TCP in Ad hoc networks. Improvement and optimization of TCP performance have drawn significant attention in the areas of TCP. TCP-ELFN [3] suggested an explicit link failure notification from the network to distinguish congestion and routing changes in a wireless environment. ATCP [4] monitor the change of the end-to-end network conditions to distinguish congestion from other networking event. All of these mechanisms are based on the idea of freezing states of TCP and keeping large congestion windows without decreasing the transmission rate at the occurrence of routing changes. A number of TCP-related cross layer enhancement techniques have been proposed [5] [6]. The scheme proposed in [5] dynamically adapts the MAC layer retry limit to reduce performance degradations due to spurious triggering of TCP congestion control. The Eifel detection algorithm [7] allows a TCP sender to detect a posteriori whether it has entered into the loss recovery phase unnecessarily. This algorithm tries to nullify the effects of spurious timeouts. Tsaoussidis [8] et al. proposed an end to end proposal called TCP probing. In this scheme when a data segment is delayed or lost, the sender enters into a probe cycle instead of retransmitting and reducing the congestion window size. In case of persistent error, TCP decreases its congestion window and slow start threshold.

5. SIMULATION RESULTS AND DISCUSSION The parameter settings for the simulation experiments are illustrated in Table 1. The simulation were done using Qualnet simulator [9]. Table 1. Simulation Parameters

Transmission Range Routing Protocol MAC protocol TCP Traffic type Packet Size TCP Variant

250 m AODV IEEE 802.11 FTP Generic 512 bytes TCP Lite

The performance metrics that are analyzed for evaluation include throughput, number of retransmissions, fast retransmissions and the time when the first packet is received. After extensive simulations the inferences from the simulations depict the main reasons for TCP performance degradation. In this paper the interaction between TCP and IEEE 802.11 MAC protocols through simulations has been studied and the simulation results indicate that TCP does not perform well with 802.11 MAC in multi-hop wireless networks. Using the experimental setup described earlier, the simulation was performed and the throughput was calculated between the end nodes of the chain in a chain topology. Fig 1 depicts the node interference in chain topology.

Computer Science & Information Technology (CS & IT)

Fig. 1.

215

Node Interference in Chain Topology

The outer lines indicate the interference range and the inner lines indicate the transmission range. The measured throughput is shown as a function of number of hops. Table 2 shows the time at which the first packet is received. Table 2. Number of Hops and Time when First packet Received Number of hops

First Packet received at (sec)

1 2 3 4 5 6

1.13 1.18 1.3 1.3 1.4 4.3

As seen in Table 2 the time taken for the first packet to reach the destination is stable until a specific number of hops and increases as the number of hops increase after a certain value. This is because the node is in the transmission range of the sender and hence the first packet reaches early. However when the destination node moves farther away from the source node, interference may occur in the transmission range causing the deviation in the time of first packet received. Also if the nodes are in the colliding transmission from the destination and the source an increase in the time of the first packet reaching may be reflected.

Fig. 2. Number of Hops Vs Time first packet received

216

Computer Science & Information Technology (CS & IT)

Simulation results shown in Fig 3, plots the throughput of TCP connections with different number of nodes which changes the number of hops between source and destination.

Fig. 3. Throughput Vs Number of hops The results show that when the number of hops is less no link is used simultaneously due to the hidden terminal problem. When the number of hops grows there are links that are used simultaneously because of channel spatial reuse. This is the reason for the rapid decrease in the TCP throughput when the number of nodes increases from 1. However the throughput stabilizes when the number of hops becomes large. Simulations were done by varying the number of hops and number of flows. Table 3 shows the number of retransmissions that occur when the numbers of flows are varied. Table 3. Number of flows and retransmissions Number of Flows 1 2 3 4 5 6

Retransmissions 65 88 119 130 154 176

The number of retransmissions increases with the number of flows as shown in Fig. 4. The reason is due to excessive buffering at each node and congestions that arise due to this. The increase in the number of retransmissions may also be due to several reasons such as mobility of the nodes because of which route failure occurs and thereby the performance is degraded.

Computer Science & Information Technology (CS & IT)

217

Fig. 4. Number of Flows Vs Retransmissions The following table, Table 4 shows the number of data items sent using FTP/Generic and the number of retransmissions. The graph in Fig 5 shows that as the payload increases the number of retransmissions increase. It is to be noted from Fig 5 that number of retransmissions is more than the number of fast retransmissions. Data packets are retransmitted when packets are lost. Retransmissions occur when the retransmission timer expires. However Fast Retransmissions occur when more than three duplicate acknowledgments are received by the sender. Table 4. Payload and Number of Retransmsissions Number of data items sent using FTP Generic 1000 2000 3000 4000 5000 6000 7000

Number of Retransmissions 110 187 273 355 416 521 606

This indicates that there is no congestion in the network however out of order delivery of packets exists. In wireless environments packets may be lost due to many reasons but TCP interprets every loss as loss due to congestion and invokes congestion control procedures. Simulations also show that the number of fast retransmissions also increase as the payload size is increased but more number of retransmissions due to RTO expiry occurs compared to the number of fast retransmissions.

218

Computer Science & Information Technology (CS & IT)

Fig. 5. Data packets sent Vs Number of Retransmissions.

6. CONCLUSION This paper has examined the performance of TCP in mobile ad hoc networks based on few parameters. An investigation of discrepancy of the TCP performance over a stable path was provided. This study takes a step to analyze TCP performance in ad hoc wireless networks. The analysis is based on a chain topology containing N hops. Simulation results shown depicts that when the number of hops increases from one, the TCP throughput decreases first, and then stabilizes when the number of hops increases. The main reasons for degradation of performance of Transmission control protocol in mobile ad hoc network is imposed by the dynamic topology, multi-hoping, channel contention and high number of transmission errors. TCP also have the limitation to differentiate between transmission and congestion losses. Most of the time congestion control is activated without any need. TCP recovery process is also very slow. However this paper focuses on analysis based on few parameters that contribute to throughput. Future research prospects include the reasons and differentiation for the causes of packet loss. The same study can also be extended to other topologies such as cross, grid and random. It may be of particular interest to explore to what degree hidden terminal effects, or other MAC layer incompatibilities are responsible for the degradation in TCP throughput, compared to the degradation caused by route breakages.

REFERENCES [1] [2] [3] [4] [5]

[6]

[7] [8]

[9]

Postal, “Transmission Control Protocol,” Request for comments, RFC 793, Protocol Specification, DARPA Internet Program, September 1981. M. Allman, V. Paxson, and W. Stevens, “TCP Congestion Control,” Request for Comments, RFC 2581, Network Working Group, Internet Engineering Task Force, April 1999. S.Mascolo, C.Casetti, M.Gerla, S.S.Lee and M, Sanadid, TCP Westwood: Congestion control with faster recovery. Technical Report 200017,UCLA CSD 2000 J. Liu and S. Singh, “ATCP: TCP for Mobile ad hoc Networks,” IEEE Journal in Selected Areas in Communication (JSAC), Vol 19, No.7, pp. 1300-15, July 2001. S.Lohier, Y. G. Doudane and G. Pujolle, “Mac –Layer adaptation to improve TCP performance in 802.11 wireless networks “proc,IEEE International Conference on Wireless and Mobile Computing, Networking and Communica-tion, 19-21 June 2006. S.Fowler, M.Eberhard and K.Blow, “Implementing an adaptive TCP fairness while exploiting 802.11e over wireless networks, “International Journal of Pervasive Computing and Communications (IJPCC),Vol.5.no.3,pp 272-294,2009 R.Ludwig and M, Meyer.”The Eifel detection algorithm for TCP “.RFC 3522, April 2003 Tsaoussidis, V. Badr, H. “TCP-probing: towards an error control schema with energy and throughput performance gains”, The 8th IEEE Conference on Network Protocols”, ICNP 2000, Osaka, Japan, November 2000. Qualnet Simulator 5.0.

A PROPOSED MODEL FOR TRAFFIC SIGNAL PREEMPTION USING GLOBAL POSITIONING SYSTEM (GPS) Nikhil Mascarenhas1, Pradeep G1, Manish Agrawal1, Subash P1, Ajina A2 1

Final year B.E.(Information Science and Engineering, Sir M. Visvesvaraya Institute of Technology, Bangalore. 2 Faculty, Dept. Of Computer Science and Engineering, Sir M. Visvesvaraya Institute of Technology, Bangalore.

ABSTRACT A Traffic Signal Preemption system is an automated system that allows normal operation of traffic lights at automated signalized intersections to be preempted. Preemption of signals is generally done to assist emergency vehicles, such as ambulances, so that response times are reduced and right-of-way is provided in a smooth and controlled manner. This paper proposes an innovative and cost-effective server-centric model to facilitate preemption using a simple mobile phone app which uses Global Positioning System (GPS) and a microcontroller which controls traffic signals.

KEYWORDS Traffic Signal Preemption, GPS, Mobile Application, Arduino Microcontroller, Emergency Vehicle, Road Traffic, Traffic Management.

1. INTRODUCTION Human Life is a valuable asset for a country. Accidents and Medical emergencies such as fire, road accidents, heart attacks etc. occur every day. It is critical for emergency teams to reach the accident spot so as to save human lives. Thus, hospitals and fire stations are spread evenly across the city to reduce response time. However rapid population growth in cities has resulted in high traffic densities on city roads. This is an additional hindrance to fire, ambulance and other emergency vehicles [1]. Conventionally, commuters give way to emergency vehicles, on hearing the vehicle’s siren. However since most traffic signals today are automated, an emergency vehicle passing an intersection poses danger to traffic approaching the signal from other roads. Thus an emergency vehicle has to wait for the entire traffic signal cycle to complete in order to pass the intersection. This imposes considerable delay in response time. Other means of transport such as air ambulances are expensive and not feasible for small cities [1]. Thus, Traffic Signal Preemption is the need of the hour, in large cities where traffic densities are ever increasing. Traffic signal Preemption helps in reducing delay and increasing response time and road safety with minimum cost. Several existing technologies use stand-alone hardware to Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 219–226, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3423

220

Computer Science & Information Technology (CS & IT)

achieve this goal. In this paper, we present an innovative and economic solution that uses the accuracy of GPS and the advantages of a server-centric networked system. The paper is organized as follows. In Section II we discuss existing implementation, the technologies used and their disadvantages. . We discuss the design of the proposed system in Section III. In Section IV the advantages of the proposed system are discussed and in Section V we discuss the future scope and possible enhancements.

2. SURVEY OF EXISTING IMPLEMENTATIONS Traffic preemption devices are implemented in a variety of ways such as acoustic devices, line of sight, and localized radio signals. Acoustic Systems use audio sensors to detect the pattern of waves from the siren of an emergency vehicle. . An example of an audio sensor is shown in Fig 1. Such a system can either be used independently or it can also be used together with another system. Disadvantage of this system is that traffic preemption can be easily triggered in the wrong direction or at the wrong intersection as sound waves are reflected and traverse in all directions. Another disadvantage is the nonuniformity of waves emitted from different sirens. A malicious illegal preemption can easily be triggered by simulating the audio of a siren. The hardware for sensors and extra circuitry at each intersection is an additional burden [2].

Figure 1. Acoustic Sensors installed at a Traffic Intersection. Line-of-Sight traffic signal preemption systems emit a fine beam of infrared towards traffic lights in front of the vehicle. Sensors at the intersection (depicted in Fig. 2) detect the beam and change traffic lights accordingly to provide right-of-way to the emergency vehicle. A visible range strobe light may also be used in some cases. Obstructions to the line-of-sight, pollutants and other atmospheric conditions contribute to poor preemption. As with acoustic systems, the cost of additional hardware in both the ambulance and the intersection is high. The system is insecure and hardware to trigger preemption illegally can be easily forged [2].

Figure 2. Light-based emitters installed on an Ambulance.

Computer Science & Information Technology (CS & IT)

221

Radio-based traffic-preemption systems use radio signals to trigger preemption. This overcomes most of the disadvantages of Line-of-sight and Acoustic systems. Radio-signals are not blocked by visual obstructions, lighting or weather conditions. However additional hardware is still a major expense [2]. The model proposed in this paper will make use of GPS technology to overcome all the above limitations. The advantages of using such a system are listed in section IV.

3. PROPOSED MODEL The proposed model will use GPS hardware, already existing in most smart phones, to receive and transmit GPS signals. These signals are transmitted to a central server which can communicate to traffic signal controllers via Internet. The model consists of 3 main components as depicted in Fig. 3. • •



An Arduino Microcontroller at each traffic intersection with an Ethernet Shield to enable it to connect to the Internet. An Android Application for an Android Smartphone will have to be carried by the staff of each ambulance. This app will receive GPS coordinates and transmit the same to a web server. A Web Server which receives GPS coordinates of all emergency vehicles and then sends preemption signals to traffic signal controllers accordingly.

Figure 3. An ambulance (with an Android device) receives GPS coordinates from satellites and then transmits the coordinates to the web server. The web server in turn computes position, speed and other factors and then sends preemption commands to the corresponding traffic signal where the ambulance is approaching.

3.1. Module 1: Arduino Microcontroller Arduino is an Open Source Hardware platform. It consists of a microcontroller development platform which can be programmed and a development environment for creating custom software for the board. Additional capabilities can be provided using add-on boards. All the components including Circuit diagrams and other specification is open-source and is available to modify [3]. In other words Arduino is a tiny microcontroller board with a number of connection sockets that can be connected to external electronic components, such as microphones, relays, light sensors, motors, laser diodes, buzzers etc. You can power an Arduino board either from a computer using a USB cable or from a 9V DC power source. Once the program is uploaded the Arduino board can be disconnected from the computer and can work independently.

222

Computer Science & Information Technology (CS & IT)

Figure 4. Arduino Uno Additional capability can be added to the Arduino board by adding auxiliary boards (also known as shields). The shields have pins in the same physical layout as the Arduino board, thus they can simply be mounted on the headers of the Arduino board. The Arduino board controls the shield by accessing the shields pins via the Arduino pins. Arduino provides some programming libraries which allow users to easily include sensors and device in their projects instead of writing programs from scratch. Some examples of Arduino shields are Arduino Ethernet Shield, Wi-Fi Shield etc., that allows the board to connect to the internet and be networked with other devices [4].

Figure 5. An Arduino Ethernet Shield mounted over an Arduino Uno [4]. In this proposed model, we will be using an Arduino Uno Microcontroller with an Arduino Ethernet Shield that will perform the following functions: •

Normal Mode: Operate the traffic signal lights and buzzer normally, using pre-stored timings in a cyclic manner.



Accept preemption commands from the web server and switch to Emergency mode smoothly by changing signal lights to the corresponding road.



Accept return-to-normal mode commands from the web server and switch back to Normal mode.

Computer Science & Information Technology (CS & IT)

223

3.2. Module 2: Android App using Location Manager Android is a software stack for mobile devices that includes an operating system, middleware and key applications. By providing an open development platform, android offers developers the ability to build extremely rich and innovative applications. Developers have full access to the same framework APIs used by the core applications. The architecture is designed to simplify the reuse of components. Any application can make use of the capabilities of other applications. This same mechanism allows components to be replaced by the user. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform [5]. GPS is a space-based satellite navigation system that provides location and time information during all weathers anywhere on or near the earth, where there is an unobstructed line of sight to four or more GPS satellites. Satellites measure accurate time by using an inbuilt atomic clock which are of high-precision. At any given time a GPS receiver possesses information about the position of a given satellite. By timing how long signals take to traverse the distance between the satellite and the receiver, the precise location of the receiver can be computed. A ground receiver can calculate its 3D position, that is latitude, longitude and altitude by mapping the data from three different satellites. A fourth satellite may be used to improve accuracy and correct errors in timing offsets between the clock in the satellite and that in the receiver. The more satellites there are, the greater the accuracy is [6]. Android provides 4 classes to help developers make use of inbuilt GPS receivers in smart phones. They are: •

Location Manager



Location Provider



Geocoding.



Google Maps.

The proposed model will use an android application which will be used on a smart phone or tablet installed in every ambulance. The app will use the Location Manager, and Location Provider to perform the following functions: •

The app can only be accessed using a secure login.



The staff of the emergency vehicle can then select a destination using Google Maps.



The shortest path to the destination will be displayed.



The staff can select a priority level and request an emergency status.



Once the vehicle is declared as an emergency vehicle, the app will send regular updates to the server, which consists of the geo-coordinates of the vehicle, obtained using GPS Location Manager.

3.3. Module 3: Web Server The primary function of a web server is to deliver web pages and files, on request to clients, using the Hypertext Transfer Protocol (HTTP). The web server in the proposed model will perform the following functions:

224

Computer Science & Information Technology (CS & IT)



Will accept login authentication requests from android device app.



Will accept emergency status requests from android app.



Accepts and monitors geo-coordinates of declared emergency vehicles in a database on the server.



For each emergency vehicle, the closest approaching traffic signal is computed.



Preemption commands are sent to the corresponding traffic controller.



Commands are also sent to the traffic controller, to return to normal mode once the emergency vehicle has passed.



Maintains logs and statistics of preempted signals, emergency vehicles etc.

4. ADVANTAGES OF THE PROPOSED SYSTEM The proposed system offers several advantages in terms of cost and the simplicity to implement the system. •

By using an android based phone, the cost of implementing hardware on each and every emergency vehicle is greatly reduced. The cost of owning a smart phone is being lowered with newer and more economic models entering the market every week. The phone can be used for other purposes by the hospital or dispatcher to know the status of the patient and other details.



The Arduino Microcontroller and Ethernet Shield that needs to be installed at every traffic intersections is open source and comes at a market price of about Rs 4000 (appx. $80). Since the hardware is open source, this cost can be lowered further if customized manufacturing is done in bulk.



GPS technology has improved a lot in recent years and it retrieves accurate locations. Accurate atomic clocks in GPS satellites provide a way to calculate location that can be precise to the closest millimeter.



Due to accuracy of GPS there is very little chance of false triggering of preemption. In contrast, Radio and Acoustic based systems can easily trigger preemption in the opposite direction or at an intersection a few feet away.



The entire system will have all the security benefits of a centralized secure web server. Illegal hardware that can preempt signals cannot be purchased, as these will not be recognized by the central server. In contrast, other systems such as Acoustic, Line of Sight and Radio based implementations do not provide any kind of security against illegal access. A clever analysis can be done and hardware can be forged.

The only demerit of the proposed system is that in densely populated cities, tall buildings may prevent satellite signals in reaching the GPS receiver. This demerit doesn’t pose much threat as Android smart phones are capable of computing location based on mobile tower triangulation and also close range Wi-Fi signals. The benefits and demerits of the proposed model as well as other implementations are tabulated in Table 1.

Computer Science & Information Technology (CS & IT)

225

Table 1. Comparision Of Technologies. Consideration

Acoustic System

Line of Sight System

Radio System

Proposed Model (GPS)

Dedicate Emitter Required?

No

Yes

Yes

No (smart phone serves as emitter)

Susceptible to Electronic Noise Interference?

No

No

Yes

No

Clear Line of Sight Required?

Yes

No

No

No

Affected by weather?

No

Yes

No

No

Possible Preemption of Other Approaches

Yes

No

Yes

No

Possibility of Illegal Triggering of Preemption

High

High

High

Low

Centralized Traffic Signal Monitoring and Log Statistics

No

No

No

Yes

5. CONCLUSION AND FUTURE SCOPE The Arduino microcontroller once installed can be used for various other purposes: •

Smart Traffic Management: Using traffic data obtained from various sources such as Google Traffic and Traffic updates from ground controllers, the same server-centric model, using the same microcontroller can be used to slightly manipulate and vary traffic signal timings to ease congested roads.



The same microcontroller can also be used to display traffic updates on LED screens at traffic signals, so commuters can avoid congested routes.



Cameras, speed detecting sensors and other sensors can also be connected to the same controller and violations can be viewed automatically at the Central office.

Since the Arduino microcontroller can be used with different types of hardware, this servercentric model using Arduino and GPS can also be used for similar applications such as: •

Automated closing and opening of railway gates.



Dynamic display of bus arrivals and bus timings at bus stops for passenger convenience.



Anti-collision systems in railways.

226

Computer Science & Information Technology (CS & IT)

Our model presents a solution for the easy passage of emergency vehicles by means of preemption of signals at intersections. We plan to implement a small scale working model, and we will demonstrate the network feasibility and feasibility that it can be implemented as a real world application. Traffic Signal Preemption if implemented can reduce emergency response times and increase road safety with minimum inconvenience to regular traffic.

REFERENCES [1]

Sahar Z Shatnawi, Balqees A Mohammad , Alaa I Kalaf and Hussein R Al-zoubi. A Wireless MobilePhone Approach to Traffic Signal Preemption for Faster Service of Emergency Vehicles. International Journal of Computer Applications 46(3):35-41, May 2012. Published by Foundation of Computer Science, New York, USA. [2] January 2006, Traffic Signal Preemption for Emergency Vehicles: A Cross- Cutting Study, FHWAJPO-05-010. A report by U.S. Department of Transportation. [3] Peter J. Gould, Daniel K. Fisher: “Open-Source Hardware Is a Low-Cost Alternative for Scientific Instrumentation and Research”. Modern Instrumentation, 2012, 1, 8-20 doi:10.4236/mi.2012.12002 Published Online April 2012 (http://www.SciRP.org/journal/mi). ISSN Print: 2165-9257 ISSN Online: 2165-9273 [4] Arduino http://www.arduino.cc [5] Android Developers http://developer.android.com [6] Jaizki Mendizabal; Roc Berenguer; Juan Melendez (2009). GPS and Galileo. McGraw Hill ISBN 978-0-07-159869-9. [7] Collura, J. and Willhaus, E. W. 2001. Traffic Signal Preemption and Priority: Technologies, Past Deployments, and System Requirements. Proceedings of the 11th ITS America, Florida, USA. [8] Vreeken, J., Wiering, M., Veenen, and Koopman, A. 2004 Intelligent Traffic Light Control. Technical report. UU-CS-2004-029. [9] Global Traffic Technologies, LLC (GTT) http://www.gtt.com. [10] Lin Dong, Wushan Chen. Real-Time Traffic Signal Timing for Urban Road Multi-intersection. Intelligent Information Management Journal 2010. 21605912 [11] Manav Singhal, Anupam Shukla. Implementation of Location based Services in Android using GPS and Web Services. International Journal of Computer Science Issues 2012. 16940784-16940814. [12] Karan Mahajan, Manish Mahajan. Navigating the Current Location without the Availability of GPS. International Journal of Engineering and Advanced Technology (IJEAT) ISSN: 2249 – 8958, Volume-2, Issue-3, February 2013.

A FAST FAULT TOLERANT PARTITIONING ALGORITHM FOR WIRELESS SENSOR NETWORKS Dibakar Saha1 and Nabanita Das2 Advanced Computing and Microelectronics Unit, Indian Statistical Institute Kolkata, India 1

[email protected],

2

[email protected]

ABSTRACT In this paper, given a random uniform distribution of sensor nodes on a 2-D plane, a fast selforganized distributed algorithm is proposed to find the maximum number of partitions of the nodes such that each partition is connected and covers the area to be monitored. Each connected partition remains active in a round robin fashion to cover the query region individually. In case of a node failure the proposed distributed fault recovery algorithm reconstructs the affected partition locally utilizing the available free nodes. Simulation studies show significant improvement in performance compared to the earlier works in terms of computation time, the topology of each partition, message overhead and network lifetime.

KEYWORDS Wireless Sensor Network (WSN), Self Organization, Coverage, Partition, Network Lifetime, Fault Resilience

1. INTRODUCTION In a Wireless Sensor Network (WSN), a large number of sensor nodes are randomly deployed to monitor a large geographical area. Each sensor node is integrated with processing elements, memory, battery power and wireless communication capabilities. Once deployed, they are, in general left unattended. Due to power drainage, hardware degradation, environmental hazards etc. sensor nodes may fail. To combat frequent failures of non-repairable nodes, the networks are generally over-deployed. For better utilization of the over-deployed nodes to save energy and to extend the lifetime of the network, this paper addresses the problem of finding the maximum number of partitions of the sensor nodes such that each partition is connected and covers the whole query region. Instead of keeping all the sensor nodes active always, these partitions will remain active one after another in a round robin fashion. Therefore, if there exists K such partitions, the network lifetime can be enhanced by at most K times. Here, given a random uniform distribution of sensor nodes over a 2-D plane, a fast distributed algorithm is developed for finding the maximum number of partitions of connected nodes such that each partition ensures coverage. In case of node failures, a distributed algorithm is developed for fault recovery that rearranges the affected partition locally to tolerate single node faults within a partition. Simulation studies show that compared to the earlier techniques, the proposed algorithm is faster and results better partition topology with reduced diameter and requires less message overhead. Also, in case of unpredictable node faults the neighboring nodes in the same partition execute the Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 227–237, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3424

228

Computer Science & Information Technology (CS & IT)

localized fault recovery algorithm that rearranges the partition locally to make the system fault resilient. Simulation results show that it extends the network lifetime significantly. The rest of the paper is organized as follows. Section 2 presents a brief outline of related works. Section 3 describes the proposed model. Section 4 presents the proposed algorithms. Simulation results are included in Section 5 and Section 6 concludes the paper.

2. RELATED WORKS Extensive research results have been reported so far addressing the problems of sensing coverage and network connectivity in wireless sensor networks. In many works, the authors considered only the coverage issue in wireless sensor networks [1]–[6]. But unless the coverage and connectedness problems are considered jointly, the data sensed by the nodes covering the region cannot be gathered at the sink node in multi-hop WSN’s. The problem of finding a connected set cover of minimum size is itself an NP-hard problem [7]. Authors of [7], [8] focused on both connectivity and coverage problems with the objective of finding a single connected set cover only. But finding just a single connected cover keeps a large number of sensors unutilized. Some of the papers considered the fault tolerant connected set cover problem. An approximation algorithm is proposed in [9] for fault tolerant connected set cover problem. In [10], a coverage optimization algorithm based on particle swarm optimization technique is developed. In [11]– [14], authors proposed several dynamic localized algorithms to achieve the coverage and connectivity. But dynamic algorithms, in general, require substantial message overhead to collect recent neighborhood information at regular intervals. Hence, the authors in [15], propose a localized algorithm for finding maximum number of connected set covers that is to be computed just once during network initialization only. In some papers [12], [14], [15], it has been assumed that the query area is a dense grid [16], [17] composed of unit cells. The knowledge of exact location of each node is needed here. A sensor node computes the covered area by counting the cells covered by each neighbor that makes the procedure computation intensive. To avoid this, in [18] the DCSP algorithm is proposed where authors assume that the monitoring area is divided into a limited number of square blocks such that a sensor node within a block completely covers it irrespective of its position within the block. Therefore, the coverage problem can be solved easily with much less computation. However, the proposed distributed algorithm was a slow one requiring p rounds to achieve a partition with p nodes. Also, the fault model considered the faults due to energy exhaustion only where a node can predict its failure and can inform its neighbors in advance. In this paper, a faster distributed algorithm requiring less message overhead is proposed that is executed during network initialization only. It attempts to create maximum number of connected partitions of sensor nodes with reduced diameter such that each partition covers the area under investigation and being active in round robin fashion it enhances the network lifetime manifold. The reduced diameter of the partition keeps the communication latency low. Moreover, a distributed fault recovery algorithm is developed for a stronger fault model that in presence of any unpredictable node faults, can rearrange the affected partition locally, so that it remains operational. Simulation studies show that this fault recovery scheme enhances the network lifetime by more than 50%.

3. PROPOSED MODEL AND PROBLEM FORMULATION Let n homogeneous sensor nodes be deployed over a 2-D region P each with sensing range S and transmission range T. It is assumed that P is divided into a finite number of square blocks [18]. Each side of the block is R/√2 as shown in Figure1, where R=min(S, T). Therefore, it is evident that each sensor node within a block B completely covers B and all nodes within the same block are always connected to each other.

Computer Science & Information Technology (CS & IT)

Figure 1. Region P divided into a square blocks with diagonal R

229

Figure 2. A Connected partition of nodes

Hence, activating just a single sensor node from each block is sufficient to cover the region P. But it is not guaranteed that any such set is connected.

Figure 3. A partition that covers P but is disconnected

Figure 4. A partition with coverage and connectivity

As for example, Figure 2 shows a partition where the selected nodes (shown by solid circles) are connected but a block B is left uncovered. Whereas, Figure 3 shows a partition where all blocks are covered but the selected nodes are not connected, and finally, Figure 4 shows the desired topology where the partition covers all blocks as well as it is connected. Assuming this grid structure of the query region P , this paper addresses the connected set cover partitioning problem introduced in [15]. For completeness, the problem is defined below.

Definition 1. Consider a sensor network consisting of a set S of n sensors and a query region P . A set of sensors N⊆ S is said to be a connected K-cover for P if, each point p ∈ P is covered by at least K sensors from N and the communication graph induced by N is connected. a) Connected Set Cover Problem: Given n sensor nodes distributed over a query region, the Connected Set Cover Problem is to find a connected 1-cover of minimum size. This problem is known to be an NP-hard problem [7]. b) Connected Set Cover Partitioning Problem: The Connected Set Cover Partitioning Problem is to partition the sensors into connected 1-covers such that the number of covers is maximized [15].

230

Computer Science & Information Technology (CS & IT)

It is evident that the problem (b) is at least as hard as problem (a). The following section describes the algorithms developed for solving the Connected Set Cover Partitioning Problem.

4. ALGORITHM FOR CONNECTED SET COVER PARTITIONING In pervasive computing environments, it is evident that in most of the cases the system captures data in distributed nodes communicating through poorly connected network. Since, in WSN large number of sensor nodes is deployed over a geographical area, to collect information of the whole network at a central node is not feasible. Instead, it is better to compute in a distributed fashion based on the local neighborhood information using less communication. Hence the focus of our work is on distributed computation of the connected partitions. In this section, a distributed algorithm is developed to find the maximum number of connected-1 covers of a WSN. Also, in case of node fault, a distributed algorithm is presented to rearrange the affected partition locally to make the system fault resilient.

4.1. Distributed Algorithm for Partitioning It is assumed that a set of n sensor nodes S={s1, s2, s3, ......, sn} is deployed on a 2-D plane P divided into say, m square blocks P= { p1, p2, p3,...., pm}, each with side R/√ 2 where R= min(S,T), as has been described in Section 3. Each block has unique id. Each sensor node knows its location in terms of its block within which it is located. After deployment, by the neighborhood discovery phase, each node knows its neighbor-id's, their degrees and block-id's respectively. To generate the partitions the following types of messages are exchanged among nodes. • Selectlist (Ci, i, {j}) : This message is sent by a node- i that selects a list of neighbors {j} for inclusion in its partition Ci. • Selected (Ci, {j}) : This message is initiated by the leader node li of Ci and is sent to nodes {j} for inclusion in its partition. • Confirm (Ci, j) : A node ∈ {j} sends this message to the leader after joining its partition Ci. • Include (Ci, j) : The leader broadcasts this message within Ci to include node j∈ Ci. Depending on the node density, a probability value 0 < lprob < 1 is determined to select p number of leader nodes randomly. Each node i in S generates a random number r to check if r ≤ lprob, the leader probability. If yes, it becomes a leader node and sets its parent as null. Say, p leader nodes emerge and L ={ l1, l2, l3, ... , lp}. Next each leader node li ∈ L initiates the creation of one partition Ci concurrently to generate a disjoint connected 1-cover.

(a) In Round 1

(b) In Round 2

Computer Science & Information Technology (CS & IT)

231

(c) In Round 3

(d) In Round 4

(e) In Round 5

(f) In Round 6

Figure 5. steps for constructing connected 1-cover in successive rounds In round 1, each leader li in L initiates a partition Ci={li}. In each round, each node i ∈ Ci prepares 'Selectlist' consisting of neighbors of itself and its children in Ci, each one from an uncovered block with minimum degree D. If it finds none, it includes a neighbor from any block with maximum degree D. In case, a node gets more than one node from the same block, it selects the neighbor with minimum D. Node i sends a 'Selectlist' message to its parent in Ci if it is a leaf node in Ci. Else, after receiving the 'Selectlist' messages from all its children in Ci, node j ∈ Ci sends the 'Selectlist' message to its parent node if it is not a leader node. The leader node finally selects the nodes to be included and sends the ’Selected’ message to them. If a node receives ’Selected’ messages from more than one nodes, it selects the parent with

232

Computer Science & Information Technology (CS & IT)

minimum degree D and confirms the request by sending a ’Confirm’ message to the corresponding leader. The leader includes the node in Ci and broadcasts the ’Include’ message to all nodes in Ci. On receiving an ’Include(Ci, j)’ message, all nodes k ∈ Ci include node-j in its partition and make necessary updates. In each round, this procedure is repeated until either all blocks are covered by a partition Ci, or no neighbors are left for inclusion. The formal description of the algorithm is given below. Algorithm 1: Distributed algorithm for connected set cover partitioning

Input: 1-hop neighbor list of each node NL(i) with degree D, Block-Id, Block status, Status, Leader Probability : lprob Output: Partition Ci from leader li for each node-i do if node-i is a leader then Ci ← {i}; parent = ∅; status = 1; end if Status = 1 and not all blocks covered then prepare ’Selectlist’ with neighbors from uncovered blocks with minimum D or neighbor from covered block with maximum D; if received ’Selectlist’ messages from all children ∈Ci and Parent ≠ ∅ then prepare ’Selectlist’ to cover maximum number of uncovered blocks with neighbors having minimum D; Send ’Selectlist’ to the parent node; else if 'Selectlist' =∅ then Broadcast success=0 and terminate; else Send ’Selected’ message to the nodes in ’Selectlist’ ; end end end if Status = 0 receives ’Selected’ message then Select that partition where the sender have minimum D and send ’Confirm’ message to leader; Update NL(i), Block status, Status and include in Ci; end if leader node and receives ’Confirm’ message then Broadcast ’Include’ message to all nodes in Ci and update NL(i) , Block status, Status; if all blocks are covered then Broadcast success=1 and terminate; end else if status=1 and receives ’include’ message then update NL(i); end end end

Correctness Proof: From the algorithm, it is clear that in each round of the procedure, the nodes already existing in a partition include several neighbors in it. As the partition starts with a single leader node, it always remains connected including new neighbors of the nodes covering additional blocks. The process terminates when at least one node from each block has been included i.e. a successful partition always satisfy the condition of connectedness and coverage. In case of a failure, the nodes in the incomplete partition declare them as free nodes, and take part in other partitions or remain as stand by nodes to facilitate the fault recovery phase.

Computer Science & Information Technology (CS & IT)

233

Example 1. In Figure 5, it is shown that in round 1, the leader node (red) selects the neighbors (the green ones) from uncovered blocks. In the next round, all black nodes are selected by the red and green nodes. This procedure is repeated to include brown and blue nodes until all blocks are covered. In the last round, all purple nodes are selected and the process is terminated as no uncovered block exists.

4.2. Distributed Fault Recovery Algorithm As it has been mentioned in Section 1, once deployed the sensor nodes may fail due to low energy, hardware degradation, inaccurate readings, environmental changes etc. This paper focuses on the fault recovery problem in case of a single unpredictable node fault within a partition. It is assumed that when an active node f of a partition Ci fails abruptly, its parent (if exists) and the children (if exists) in Ci can detect it. A fast fault recovery algorithm by which all children and the parent of the faulty node in the partition after detecting the fault rearrange the partition quickly to make the partition connected with full coverage. In case, the faulty node is the leader node, its children with the minimum node-id becomes the new leader otherwise the parent node becomes the leader and the fault recovery procedure is initiated by the new leader. The formal description of the algorithm is given below. Algorithm 2: Distributed fault recovery algorithm Input: faulty node-id : f, partition: Ci, parent & children of f: Si Output: Recovered partition Ci If f is a leader node then leadertemp ← Minimum ID child of f, otherwise leadertemp ← parent of f; Make a block list BS[ ] covered by (f U Si) \ leadertemp with status ← 0 ; include leadertemp in temp[ ]; end for each node-i in temp[ ] do find neighbors in Si or from uncovered block. If none, select the free neighbor with maximum D; Include neighbors in ’Selectlist’, ; if node-i not leadertemp then Send ’Selectlist’ message to leadertemp; else if leadertemp receives ’Selectelist’ message from all nodes-j in temp[ ] then Include nodes in temp[ ]; Update BS[ ]; if BS[ ] == ∅ then Send ’FaultRecovered’ message with temp[ ] to ∀j ∈ Ci and terminate; if ’Selectlist’ = ∅ for ∀j ∈ temp[ ] then Broadcast ’RecoveryFailed’ and terminate; else send temp[ ] and BS[ ] to all nodes in temp[ ]; end end end end

Correctness Proof: In the fault recovery algorithm, in case a node i ∈ Ci fails, a unique leader node leadertemp ∈ Ci is selected from the parent or children of i. leadertemp marks the set of blocks

234

Computer Science & Information Technology (CS & IT)

of the remaining children of i as uncovered. Then it initiates the fault recovery procedure, in the same fashion as it has been done in algorithm 1, only with the difference that here the children of the faulty node in the uncovered blocks are preferred than other nodes to be included in Ci. It guarantees that when the procedure is successful, the repaired partition is again connected and covers the whole region.

(a) Fault Detection

(b) Disjoint Sub Partition

(c) Fault Recovery

Figure 6. Fault Detection and Recovery Example 2. In Figure 6, say, the red node is faulty. It will be detected by all its children and parent (colored by green). The partition is broken into three disjoint components as shown in Figure 6(b). The leader node selects its neighbor the blue node from the faulty node’s block for maintaining the coverage and it is also connected to at least one node from the disjoint components. Therefore, the connectivity is preserved. Now the new partition including the blue node, is ready for monitoring the area.

5. SIMULATION RESULTS AND DISCUSSION For simulation studies, we have used network simulator NS 2.34 to evaluate the performance of our proposed algorithm. We have compared our results with [18] that show significant improvement on the number of rounds for generating the partitions, the network diameter and the number of transmitted messages per node during the procedure. The sensor nodes are deployed over a grid P which is divided into a number of blocks (2 × 2), ( 3 × 3) to ( 7 × 7) respectively. Figure 7 shows the variation of the average number of rounds to complete partitioning with the grid size. Obviously, the number of rounds increases with the number of blocks. However, compared to the DCSP algorithm proposed in [18], the present method completes in significantly less number of rounds. Therefore, during initialization, the proposed method will converge faster to achieve the connected covers of the nodes.

Computer Science & Information Technology (CS & IT)

Figure 7. Comparison of average number of rounds for partitioning between DCSP and the proposed algorithm

235

Figure 8. Comparison of diameter between DCSP and the proposed algorithm

In figure 8, it is shown that the proposed algorithm results significant improvement in terms of the average network diameter of the generated partition over the DCSP algorithm [18]. In a network with large diameter, the number of steps to route a message from a source node to a destination node will require more delay and more massage exchanges between intermediate nodes. Therefore, the low diameter network topologies are highly preferred for a partition that can aggregate the data using less number of hops, i.e., with less delay and less number of broadcasts. Figure 9 shows the significant improvement in average number of transmitted messages per node in computing the connected set covers. Since the procedure terminates faster using fewer rounds of computation, the total number of messages exchanged per node is also less here. Therefore the proposed technique is better in terms of energy efficiency also.

Figure. 9. DCSP vs. Proposed algorithm in terms of average number of transmitted messages

Figure. 10. Extension of network lifetime using fault recovery technique

Finally, Figure 10 shows how the fault recovery algorithm enhances the network lifetime in presence of faults. In the simulation, only node faults due to energy exhaustion has been taken into account. Simulation results show almost 50% enhancements in network lifetime.

236

Computer Science & Information Technology (CS & IT)

6. CONCLUSION In this paper, we have focused on the connected set cover partitioning problem in Wireless Sensor Networks. A self-organized fast distributed algorithm is proposed for finding maximum number of connected partitions to cover the region. Also, distributed fault recovery technique is developed to rearrange connected set covers in presence of unpredictable node faults to satisfy both connectivity and coverage criteria. Reduction in network diameter of the partition and significant improvements in terms of computation rounds and message overhead are also achieved by the proposed method. In summary, the proposed connected set cover partitioning technique along with the localized fault recovery scheme opens up new avenues for setting up self organized wireless sensor networks with enhanced lifetime.

REFERENCES [1] [2] [3]

[4] [5]

[6] [7]

[8]

[9] [10]

[11]

[12]

[13]

[14]

[15]

X. Li, P. Wan and O. Frieder, “Coverage in Wireless Ad-hoc Sensor Networks,” IEEE Transactions on Computers, vol. 52, June 2003, pp. 753–763. S. Meguerdichian, F. Koushanfar, M. Potkonjak, and M. B. Srivastava, “Coverage problems in wireless ad-hoc sensor networks,” in IEEE INFOCOM , 2001, pp. 1380–1387. D. Wang, B. Xie and D. P. Agrawal, “Coverage and Lifetime Optimization of Wireless Sensor Networks with Gaussian Distribution,” IEEE Transactions on Mobile Computing, vol. 7, December 2008, pp. 1444–1458. J. Jiang and W. Dou, “A Coverage-Preserving Density Control Algorithm for Wireless Sensor Networks,” in Ad-Hoc, Mobile, and Wireless Networks, 2004, pp. 42–55. Huang, Chi-Fu and Tseng, Yu-Chee, “The Coverage Problem in a Wireless Sensor Network,” in Proceedings of the 2nd ACM International Conference on Wireless Sensor Networks and Applications. ACM, 2003, pp. 115–121. S. Slijepcevic and M. Potkonjak, “Power efficient organization of wireless sensor networks,” in IEEE International Conference on Communications , 2001, pp. 472–476. H. Gupta, Z. Zhou, S. R. Das and Q. Gu, “Connected sensor cover: self-organization of sensor networks for efficient query execution,” IEEE/ACM Transactions on Networking, vol. 14, pp. 55–67, 2006. Z. Zhou and S. Das and H. Gupta, “Connected K-Coverage Problem in Sensor Networks,” in 13th International Conference on Computer Communications and Networks, ICCCN 2004, October 2004, pp. 373– 378. Z. Zhang, X. Gao and W. Wu, “Algorithms for Connected Set Cover Problem and Fault-Tolerant Connected Set Cover Problem,” Theoretical Computer Science, vol. 410, 2009, pp. 812–817. P. Li, L. Kia and L. Gang, “Research on Wireless Sensor Networks Fault-Tolerant Coverage Algorithm Based on Particle Swarm Optimization,” in International Conference on Wireless Sensor Network, IET-WSN, November 2010, pp. 286–290. C. Lin, C. Chen and A. Chen, “Partitioning Sensors by Node Coverage Grouping in Wireless Sensor Networks,” in International Symposium on Parallel and Distributed Processing with Applications (ISPA) , September 2010, pp. 306–312. D. Tian and N. D. Georganas, “A Coverage-Preserving Node Scheduling Scheme for Large Wireless Sensor Networks,” in Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications. ACM Press, 2002, pp. 32–41. X. Wang, G. Xing, Y. Zhang, C. Lu, Chenyang, R. Pless and C. Gill, “Integrated Coverage and Connectivity Configuration in Wireless Sensor Networks,” in Proceedings of the 1st International Conference on Embedded Networked Sensor Systems. ACM, 2003, pp. 28–39. A. Gallais, J. Carle, D. Symplot-Ryl, and I. Stozmenovic, “Localized sensor area coverage with low communication overhead,” IEEE Transactions on Mobile Computing , vol. 7, no. 5, pp. 661–672, 2008 N. Pervin, D. Layek and N. Das, “Localized Algorithm for Connected Set Cover Partitioning in Wireless Sensor Networks,” in 1st International Conference on Parallel Distributed and Grid Computing (PDGC). IEEE-xplore, October 2010, pp. 229–234.

Computer Science & Information Technology (CS & IT)

237

[16] W. Ke, B. Liu, M. Tsai, “The Critical-Square-Grid Coverage Problem in Wireless Sensor Networks is NP-Complete,” Computer Networks, pp. 2209–2220, February 2010. [17] R. S. S. Shakkottai and N. Shroff, “Unreliable sensor grids: Coverage, connectivity and diameter,” in Proceedings of IEEE INFOCOM, 2003, pp. 1073–1083. [18] D. Saha and N. Das, “Distributed Area Coverage by Connected Set Cover Partitioning in Wireless Sensor Networks,” in 1st International Workshop on Sustainable Monitoring through Cyber-Physical Systems (SuMo-CPS) in Conjunction with ICDCN 2013. ACM Digital Library , January 2013, pp. 17–22.

Authors Dibakar Saha, received Master of Computer Applications (MCA) degree from University of North Bengal, West Bengal, in 2010. Since 2010 he has been a project researcher at Advanced Computing and Microelectronics unit, Indian Statistical Institute, Kolkata. His research interests include parallel processing and Distributed Computing. Dr. Nabanita Das is a Professor in the Advanced Computing and Microelectronics Unit of Indian Statistical Institute, Kolkata, India, since 1996. Her area of interest includes Mobile Ad Hoc Networking, Pervasive Computing, Parallel and Distributed Computing and Multi-Core Computing. Dr. Das acted as the co-Editor of ‘Distributed Computing- IWDC 2004’ LNCS, Springer, Guest Editor of special issue on 'Resource Management in Mobile Communication Networks' of 'Microprocessors and Microsystems', 2004, Elsevier, Editor of 'Recent Trends in High Performance Computing', Proc. of International Workshop on High Performance Computing', 1998 – 99. She serves as the reviewer of many International Journals like IEEE Transactions on Computers, IEEE Transactions on Vehicular Technology, IEEE Transactions on Systems Man and Cybernetics, Journal of Parallel and Distributed Computing etc. She is a senior member of IEEE. She served as the Chair of Women in Engineering (WIE) affinity group of IEEE Calcutta section during 2009-2011.

A GENERIC ALGORITHM TO DETERMINE CONNECTED DOMINATING SETS FOR MOBILE AD HOC NETWORKS AND PERFORMANCE EVALUATION UNDER DIFFERENT MOBILITY MODELS Natarajan Meghanathan and Ilin S. Dasari Jackson State University Jackson, MS, USA Corresponding Author Email: [email protected] ABSTRACT The high-level contributions of this paper are: (1) A generic algorithm to determine connected dominating sets (CDS) for mobile ad hoc networks and its use to find CDS of different categories: maximum density-based (MaxD-CDS), node ID-based (ID-CDS) and stability-based (minimum velocity-based, MinV-CDS); (2) Performance comparison of the above three categories of CDS algorithms with respect to two categories of mobility models: random node mobility models (Random Waypoint model) and the grid-based vehicular ad hoc network (VANET) mobility models (City Section and Manhattan mobility models), with respect to the CDS Node Size and Lifetime. The performance of a CDS is observed to depend on the criteria used to form the CDS (i.e., the node selection criteria of the underlying algorithm) and the mobility model driving the topological changes. For each category of CDS, we identify the mobility model under which one can simultaneously maximize the lifetime and node size, with minimal tradeoff. For the two VANET mobility models, we also evaluate the impact of the grid block length on the CDS lifetime and node size.

KEYWORDS Connected Dominating Sets, Mobile Ad hoc Networks, Algorithms, Mobility Models, Stability, Simulations

1. INTRODUCTION A Mobile ad hoc network (MANET) is a category of wireless networks in which the topology changes dynamically with time due to arbitrary node movement. MANET routes are often multihop in nature (due to limited transmission range per node) and also temporally change depending on node mobility and availability. MANET routing protocols have been predominantly designed Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 239–248, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3425

240

Computer Science & Information Technology (CS & IT)

to be on-demand in nature rather than using a proactive strategy of determining the routes irrespective of the need [1][2]. MANET on-demand routing protocols typically use a networkwide broadcast route-reply cycle (called flooding) to discover the appropriate communication topology (path, tree or mesh) [2]. A source node initiates the flooding of the Route-Request (RREQ) packets that propagate through several paths and reach the targeted destination (for unicasting) or receiver nodes (for multicasting). These nodes choose the path that best satisfies the principles of the routing protocol in use and respond with a Route-Reply (RREP) packet to the source on the selected route. With flooding, every node in the network is required to broadcast the RREQ packet exactly once in its neighborhood. Nevertheless, the redundancy of retransmissions and the resulting control overhead incurred with flooding is still too high, as every node spends energy and bandwidth to receive the RREQ packet from each of its neighbors. A Connected Dominating Set (CDS) of a network graph comprises of a subset of the nodes such that every node in the graph is either in the CDS or is a neighbor of a node in the CDS. Recent studies (e.g. [3][4]) have shown the CDS to be a viable backbone for network-wide broadcasting of a message (such as the RREQ message), initiated from one node. The message is broadcast only by the CDS nodes (nodes constituting the CDS) and the non-CDS nodes (who are neighbors of the CDS nodes) merely receive the message, once from each of their neighboring CDS nodes. The efficiency of broadcasting depends on the CDS Node Size that directly influences the number of redundant retransmissions. One category of CDS algorithms for MANETs aim to determine CDSs with reduced Node Size (i.e., constituent nodes) such that whole network could be covered with as fewer nodes as possible. The other two categories of CDS algorithms are those based on node ids and those based on stability. The node-id based algorithm prefers to include nodes with lower id into the CDS until all the nodes in the network are covered. The stability-based category of CDS algorithms focus on maximizing the CDS Lifetime such that the control overhead incurred in frequently reconfiguring a CDS is reduced. In this paper, we first present a generic algorithm that can be used to obtain a CDS under each of the above three categories. We pick the maximum density-based CDS (MaxD-CDS) [5] and IDbased CDS (ID-CDS) [6] to be representatives of the minimum node size and node id-based CDS algorithms respectively; the minimum velocity-based CDS (MinV-CDS) [7] algorithm is chosen to be the representative for the stability-driven CDS. The second half of the paper evaluates the three CDS algorithms under diverse conditions of network density and node mobility with respect to two critical metrics: CDS Lifetime and CDS Node Size, and under three different mobility models. The mobility models considered are the Random Waypoint model [8] that is often used to simulate the mobility of nodes in classical MANETs; and the City Section [9] and Manhattan [9] mobility models that are used to simulate the mobility of nodes in vehicular ad hoc networks (VANETs). This is the first such comprehensive comparison study of the CDS algorithms for ad hoc networks under different mobility models. The paper also identifies any potential CDS lifetime-node size tradeoff existing for the three categories of CDS algorithms. The rest of the paper is organized as follows: Section 2 presents a generic CDS algorithm that can be used to study each of the three CDS algorithms (MaxD-CDS, ID-CDS and MinV-CDS) that will be analyzed in the simulations. Section 3 outlines the simulation environment, discusses the mobility models and presents the simulation results observed for the three CDS algorithms under the three mobility models. Section 4 presents the conclusions by outlining the significant observations and contributions of this paper. Throughout the report, the terms ‘vertex’ and ‘node’, ‘edge’ and ‘link’ are used interchangeably. They mean the same.

Computer Science & Information Technology (CS & IT)

241

2. GENERIC ALGORITHM TO CONSTRUCT THE DIFFERENT CONNECTED DOMINATING SETS In this section, we present a generic algorithm that can be used to construct the four different CDSs, with appropriate changes in the data structure (Priority-Queue) used to store the list of covered nodes that could be the candidate CDS nodes and the use of the appropriate criteria in each of the iterations of the algorithm to evolve the particular CDS of interest. The advantage with proposing a generic algorithm is that the different CDSs can be constructed with virtually the same time complexity. Network Model: We assume a homogeneous network of wireless nodes, each operating at a fixed transmission range, R. We use the unit-disk graph model [10] according to which there exists a link between any two nodes in the network as long as the Euclidean distance is within the transmission range per node. The set of neighbors of a node i, Neighbors(i), comprises of nodes that are connected to vertex i in the unit-disk graph model. A node learns about its own location through location service schemes such as the Global Positioning System (GPS) [11]. A node learns the location and mobility parameters (velocity and direction of movement – measured as the angle subscribed with respect to the positive X-axis) of its neighbor nodes through the beacon messages periodically broadcast by their nodes in the neighborhood. Data Structures: The data structures used by the generic CDS algorithm is as follows: (i) CDSNodes-List: This list includes all the nodes that are part of the CDS. (ii) Covered-Nodes-List: This list includes all the nodes that are either part of the CDS or is at least a neighbor node of a node in the CDS; (iii) Priority-Queue: This list includes all nodes in the Covered-Nodes-List (but not in the CDS-Nodes-List) and are considered the candidate nodes for the next node to be selected for inclusion in the CDS-Nodes-List. To be placed in the priority queue, a node should have at least one uncovered neighbor. Nodes are placed in the Priority-Queue in the decreasing order of node density and node ID for the MaxD-CDS and ID-CDS algorithms respectively and in the increasing order of node velocity for the MinV-CDS algorithm. Any tie between the nodes is broken based on the node IDs (the contending node with a relatively larger ID is placed ahead of the other contending nodes). Description of Generic CDS Algorithm: The algorithm forms and outputs a list (CDS-Node-List) of all nodes based on a given input graph representing a snapshot of the MANET at a particular time instant. The generic description and pseudo code given here (Figure 1) can be adapted for the particular CDS construction by appropriately incorporating the criteria for choosing the CDSSelect-node for each of the iterations and the criteria for maintaining the Priority-Queue during the different iterations of the algorithm on a particular instance of the network graph. The node to be included in the CDS-Node-List is the CDS-Select-node at the front of the PriorityQueue, chosen according to the selection criteria of largest node density (MaxD-CDS) or largest node ID (ID-CDS) or minimum node velocity (MinV-CDS), as long as the node has at least one uncovered neighbor. The uncovered neighbors of the CDS node are also added to the CoveredNodes-List and the Priority-Queue. If the Covered-Nodes-List does not contain all the vertices of the input graph and the Priority-Queue is not empty, we dequeue the Priority-Queue to extract a CDS-Select-node s that is not yet in the CDS-Node-List. All the uncovered neighbor nodes of node s are added to the Covered-Nodes-List and to the Priority-Queue; node s is also added to the

242

Computer Science & Information Technology (CS & IT)

CDS-Node-List. This procedure is repeated until the Covered-Nodes-List contains all the vertices of the graph or the Priority-Queue becomes empty. If the Priority-Queue becomes empty and the Covered-Nodes-List does not have at least one node that is present in the network graph, then the underlying network is considered to be disconnected.

Figure 1: Pseudo Code for the Generic CDS Construction Algorithm The time complexity of the generic CDS algorithm can be given as: Θ((|E| + |V|)*log|V|) on a network graph of |V| nodes and |E| edges – each of the |V| nodes and their associated edges have to be explored for inclusion in the CDS. If the Priority-Queue is implemented as a binary heap, it takes Θ(log|V|) time to reorganize the heap after each dequeue and enqueue operation. There could be a total of |V| dequeue operations, one for each of the iterations and a total of |E| enqueue operations, one for every edge that is traversed across all the iterations.

3. SIMULATIONS The network dimensions are 1000m x 1000m. Each node moves independent of the other nodes under all the three mobility models. The Random Waypoint (RWP) model works by assuming an open network field without any grid constraints. Each node moves randomly from one location to

Computer Science & Information Technology (CS & IT)

243

another location (within the network boundary) with a velocity randomly chosen from [0…vmax], where vmax is the maximum node velocity. After reaching the targeted location, the node continues to move to another randomly chosen location with a different randomly chosen velocity. The mobility pattern of a node is repeated like this until the end of the simulation. For the City Section and Manhattan mobility models, the network is divided into grids: square blocks of length (side) 100m, composed of a number of horizontal and vertical streets. Each street has two lanes, one for each direction. A node is allowed to move only along the grids of horizontal and vertical streets. With the City Section model, nodes move from one street intersection to a randomly chosen different street intersection on the shortest path (sequence of street intersections with minimum total distance) with a randomly chosen velocity from [0…vmax]; after reaching the targeted the street intersection, the node continues to move to another randomly chosen street intersection (on the shortest path) with a randomly chosen velocity. With the Manhattan model, the velocity (chosen from 0… vmax) and direction to move is decided for every street intersection that is come across. If a node can continue to move in the same direction or can also change directions, the node has 50% chance of continuing in the same direction, 25% chance of turning to east/north and 25% chance of turning to the west/south, depending on the direction of the previous movement. If a node has only two options, then the node has an equal (50%) chance of exploring either of the two options. If a node has only one option to move (this occurs when the node reaches any of the four corners of the network), then the node has no other choice except to explore that option. Simulations are conducted for grid block lengths (BL) of 50m, 100m and 200m. The wireless transmission range of a node is 250m. The network density is varied by performing the simulations with 50 (low-moderate) and 100 (moderate-high) nodes. The vmax values used for each of the three mobility models are 5 m/s (about 10 miles per hour) and 50 m/s (about 100 miles per hour), representing levels of low and high node mobility respectively. The pause time is 0 seconds; so, all the nodes are constantly in motion. Each data point in the performance figures shown in this section is an average computed over 5 mobility trace files and 20 randomly selected s-d pairs from each of the mobility trace files. The starting time of each s-d session is uniformly distributed between 1 to 20 seconds. Overall Simulation Methodology: For each mobility model, snapshots (static graphs) of the network topology are constructed for every 0.25 seconds, starting from time 0 to the simulation time of 1000 seconds. If a CDS is not known at a particular time instant, the appropriate CDS construction algorithm is run on the network snapshot. The CDS determined at a particular time instant is used in the subsequent time instants until the CDS ceases to exist. For a CDS to be considered to exist at a particular time instant, two conditions have to hold good: (i) All the CDS nodes have to stay connected – i.e. reachable from one another directly or through multi-hop paths; and (ii) Every non-CDS node should have at least one CDS node as its neighbor. If a CDS ceases to exist at a particular time instant, the appropriate CDS construction algorithm is again run and the new CDS is continued to be used as explained above. This procedure is continued for the duration of the simulation time. Performance Metrics: The following two performance metrics are measured under the three mobility models: (i) Effective CDS Lifetime: The product of the absolute CDS lifetime (observed from the simulations) and the CDS connectivity. (ii) CDS Node Size: This is a time-averaged value for the number of nodes that are part of the CDS used for every time instant over the entire simulation.

244

Computer Science & Information Technology (CS & IT)

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 2: Effective CDS Lifetime [50 nodes, vmax = 5 m/s]

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 3: CDS Node Size [50 nodes, vmax = 5 m/s] Effective MaxD-CDS Lifetime: The MaxD-CDS incurs the largest lifetime under the RWP model (followed by the Manhattan model) for all the four simulation conditions. For a given simulation condition, it is observed that the difference in the effective MaxD-CDS lifetime incurred with the two VANET mobility models decreases with increase in the block length (from 50m to 200m). It is also observed that for a given block length and node mobility, for most of the simulation conditions, the absolute values for the effective MaxD-CDS lifetime decreases with increase in network density. For both the VANET mobility models, it is observed that the effective MaxD-CDS lifetime decreases with increase in the block length from 50m to 200m. This could be attributed to the nature of the MaxD-CDS algorithm to include only as minimal nodes as possible in the CDS; with a larger block length, even though the number of nodes constituting the MaxD-CDS reduces, the physical distance between the edges that are part of the CDS edges increases. As a result, a MaxD-CDS is more vulnerable to failure when operated in a VANET grid of larger block length. MaxD-CDS Node Size: The MaxD-CDS incurs the lowest value for the node size under the RWP model for 3 of the 4 simulation conditions (except for the condition of low-moderate density and low node mobility). Thus, it is possible to simultaneously maximize the MaxD-CDS lifetime as well as minimize the node size when operated under the RWP model; there is no significant tradeoff. Between the two VANET mobility models, the MaxD-CDS is observed to sustain a lower node size for the City Section model. This indicates a CDS lifetime-node size

Computer Science & Information Technology (CS & IT)

245

tradeoff between the two VANET mobility models. Under a given simulation condition, the MaxD-CDS incurs a larger effective CDS lifetime under the Manhattan model; but, this is accompanied by a larger CDS node size. The relative difference in the MaxD-CDS node size between the Manhattan and City Section models could be as large as 25%, and the relative difference decreases with increase in the grid block length from 50m to 200m. For the RWP model, as the network density is doubled from 50 to 100 nodes for a given mobility level, the MaxD-CDS node size decreases by about 10-25%. This decrease, rather than an increase that is typically expected, could be attributed to the nature of the MaxD-CDS algorithm to include only those nodes as part of the CDS so that as many non-CDS nodes could be covered as possible. The negative impact of this greedy approach is observed in the effective CDS lifetime that decreases with increase in network density, due to the need to cover an increased number of non-CDS nodes with a reduced number of CDS nodes at high network density. The MaxD-CDS node size is not significantly affected with increase in network density under the two VANET mobility models.

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 4: Effective CDS Lifetime [100 nodes, vmax = 5 m/s]

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 5: CDS Node Size [100 nodes, vmax = 5 m/s] Effective ID-CDS Lifetime: The ID-CDS incurs a larger effective lifetime under the two VANET mobility models compared to the RWP model under all the simulation conditions. The effective ID-CDS lifetime was the largest under the Manhattan model (with a block length of 50m) for 3 of the 4 operating conditions and under the City Section model (block length of 50 and 200m) in scenarios with low-moderate network density and moderate-high node mobility. Overall, it is also observed that for the two VANET models, the effective ID-CDS lifetime decreases with increase in the grid block length from 50m to 200m.

246

Computer Science & Information Technology (CS & IT)

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 6: Effective CDS Lifetime [50 nodes, vmax = 50 m/s]

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 7: CDS Node Size [50 nodes, vmax = 50 m/s] ID-CDS Node Size: The ID-CDS exhibits a significant lifetime-node size tradeoff. The ID-CDS node size is the lowest under the RWP model and is the largest under the Manhattan model that also yielded the largest effective ID-CDS lifetime. Thus, it is not possible to simultaneously maximize the effective ID-CDS lifetime by incurring a lower node size under any mobility model. The ratio of the maximum ID-CDS node size to that of the minimum node size ranges from 1.2 to 1.8; the difference increases with increase in the network density and/or node mobility. Between the two VANET mobility models, the ID-CDS node size is larger when run the Manhattan mobility model compared to the City Section model. Another interesting observation is that the grid block length does not significantly impact the ID-CDS node size under both the VANET mobility models. Effective MinV-CDS Lifetime: The MinV-CDS incurs the largest effective lifetime under the RWP model for all the simulation conditions. The difference in the effective MinV-CDS lifetime between the RWP model and that of the two VANET mobility models decreases with increase in the network density (for a fixed node mobility) and increases with increase in node mobility (for a fixed network density). Between the two VANET mobility models, it is observed that the effective MinV-CDS lifetime incurred under the Manhattan model is greater (by about 20%) than that incurred under the City Section model in low-moderate network density and low-moderate node mobility scenarios. With increase in the network density and/or node mobility, the effective MinV-CDS lifetime incurred under the City Section model is larger (at most by about 25%) compared to that incurred under the Manhattan model. The grid block length significantly influences the effective MinV-CDS lifetime under both the VANET mobility models. The

Computer Science & Information Technology (CS & IT)

247

effective MinV-CDS lifetime incurred under a grid block length of 50m could be as large as twice the grid block lengths of 100m and 200m. This could be attributed to the presence of physically longer edges in the MinV-CDS determined under larger values of the grid block lengths.

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 8: Effective CDS Lifetime [100 nodes, vmax = 50 m/s]

City Section vs. Random Waypoint Manhattan vs. Random Waypoint Figure 9: CDS Node Size [100 nodes, vmax = 50 m/s] MinV-CDS Node Size: The MinV-CDS node size is the lowest under the RWP model for all the simulation conditions. Thus, one could obtain a larger MinV-CDS lifetime and a lower MinVCDS node size when operated under the RWP model. The difference (ranging from 25% to 100%) in the MinV-CDS node size incurred with the RWP model and the two VANET mobility models increases predominantly with increase in the network density and with increase in the grid block length. Between the two VANET mobility models, it is observed that the MinV-CDS node size is larger when run under the Manhattan mobility model for all the simulation conditions, with the difference increasing with increase in network density and/or node mobility. For a given condition of network density and node mobility, the difference in the MinV-CDS node size decreases with increase in the grid block length from 50m to 200m. Between the two VANET mobility models, it is possible to simultaneously optimize both the MinV-CDS lifetime and the node size when operated under the City Section model vis-à-vis the Manhattan model.

4. CONCLUSIONS The MinV-CDS incurs the largest effective lifetime under all the three mobility models; and at the same time incurs the largest node size, indicating a CDS lifetime-node size tradeoff. The MaxD-CDS and MinV-CDS incur the largest effective lifetime and lowest node size under the RWP model vis-à-vis the two VANET mobility models. On the other hand, the ID-CDS incurs the largest effective lifetime under the VANET mobility models (predominantly with the

248

Computer Science & Information Technology (CS & IT)

Manhattan model) and the lowest node size with the RWP model. Thus, there is a CDS lifetimenode size tradeoff with respect to using an appropriate mobility model for the ID-CDS. With regards to the two VANET mobility models, the MaxD-CDS and ID-CDS yielded the largest effective lifetime under the Manhattan model for most of the simulation conditions; whereas the MinV-CDS yielded the largest effective lifetime under the City Section model for a majority of the simulation conditions. On the other hand, all the three connected dominating sets sustained a larger CDS node size under the Manhattan mobility model compared to the City Section model. This illustrates a CDS lifetime – node size tradeoff for the MaxD-CDS and ID-CDS with respect to the choice of usage between the two VANET mobility models. With regards to the impact of the grid block length on the stability of the connected dominating sets, one can conclude that the lower grid block lengths yielded more stable connected dominating sets compared to larger grid block lengths. Also, there is no appreciable increase in the CDS node size when operated at lower grid block lengths for all the three CDS algorithms under both the VANET mobility models.

REFERENCES [1]

Broch, J., Maltz, D. A., Johnson, D. B., Hu, Y. C., and Jetcheva, J.: A Performance Comparison of Multi-hop Wireless Ad hoc Network Routing Protocols. In: International Conference on Mobile Computing and Networking, pp. 85--97, ACM, Dallas, USA (1998) [2] Siva Ram Murthy, C., and Manoj, B. S.: Ad hoc Wireless Networks – Architectures and Protocols, Prentice Hall, USA (2004). [3] Sinha, P., Sivakumar, R., and Bhargavan. V.: Enhancing Ad hoc Routing with Dynamic Virtual Infrastructures. In: The 20th International Conference on Computer and Communications Societies, pp. 1763--1772, IEEE, Anchorage, Alaska, USA (2001). [4] Wang, F., Min, M., Li, Y., and Du, D.: On the Construction of Stable Virtual Backbones in Mobile Ad hoc Networks. In: The International Performance Computing and Communications Conference (IPCCC), IEEE, Phoenix, Arizona, USA (2005). [5] Meghanathan, N.: An Algorithm to Determine the Sequence of Stable Connected Dominating Sets in Mobile Ad Hoc Networks. In: The 2nd Advanced International Conference on Telecommunications, IARIA, French Caribbean (2006). [6] Velummylum, N., and Meghanathan, N.: On the Utilization of ID-based Connected Dominating Sets for Mobile Ad hoc Networks, International Journal of Advanced Research in Computer Science, 1, 3, 36--43 (2010). [7] Meghanathan, N.: An Algorithm to Determine Minimum Velocity-based Stable Connected Dominating Sets for Ad hoc Networks, Communications in Computer and Information Science Series, 94, 206--217 (2010). [8] Bettstetter, C., Hartenstein, H., and Perez-Costa, X.: Stochastic Properties of the Random-Way Point Mobility Model, Wireless Networks, 10, 5, 555--567 (2004). [9] Camp, T., Boleng, J., and Davies, V.: A Survey of Mobility Models for Ad hoc Network Research, Wireless Communication and Mobile Computing, 2, 5, 483--502 (2002). [10] Kuhn, F., Moscibroda, T., and Wattenhofer, R.: Unit Disk Graph Approximation. In: The Workshop on Foundations of Mobile Computing, Philadelphia, USA (2004). [11] Hofmann-Wellenhof, B., Lichtenegger, H., and Collins, J.: Global Positioning System: Theory and Practice, Springer Wien, New York, USA (2004).

LOW POWER-AREA GDI & PTL TECHNIQUES BASED FULL ADDER DESIGNS Karthik Reddy.G1 and Kavita Khare2 2

Associate professor Dept.of electronics and communications Maulana Azad National Institute of Technology, Bhopal, India. 1,2

[email protected] [email protected]

ABSTRACT Full adder circuit is functional building block of micro processors, digital signal processors or any ALUs. In this paper leakage power is reduced by using less number of transistors with the techniques like GDI (Gate Diffusion Input) and PTL (Pass Transistor Logic) techniques. In this paper 3 designs have been proposed of low power 1 bit full adder circuit with 10Transistors ( using PTL multiplexer) , 8 Transistor (by using NMOS and PMOS PTL devices), 12Transistors (6Transistors to generate carry using GDI technique and 6Transistors to generate sum using tri state inverters). These circuits consume less power with maximum of 73% power saving com-pare to conventional 28T design. The proposed circuit exploits the advantage of GDI technique and pass transistor logic, and sum is generated by tri state inverter logic in all designs. The entire simulations have been done on 180nm single n-well CMOS bulk technology, in virtuoso platform of cadence tool with the supply voltage 1.8V and frequency of 100MHz.

KEYWORDS leakage power, GDI, Pass transistor logic, tri-state inverters.

1. INTRODUCTION As the applications requiring low power and high performance circuits increasing, this has intensified the research effort in low power microelectronics. Full adder circuit is functional building block and most critical component of complex arithmetic circuits like micro processors, digital signal processors or any ALUs [1]. Almost every complex computational circuit requires Sundarapandian et al. (Eds) : ACITY, AIAA, CNSA, DPPR, NeCoM, WeST, DMS, P2PTM, VLSI - 2013 pp. 249–257, 2013. © CS & IT-CSCP 2013 DOI : 10.5121/csit.2013.3426

250

Computer Science & Information Technology (CS & IT)

full adder circuitry. The en-tire computational block power consumption can be reduced by implementing low power techniques on full adder circuitry. Several full adder circuits have been proposed targeting on design accents such as power, delay and area. Among those designs with less transistor count using pass transistor logic have been widely used to reduce power consumption [2-4]. In spite of the circuit simplicity, these designs suffer from severe output signal degradation and cannot sustain low voltage operations [5]. In these designs we have exploited the advantages of GDI technique and PTL technique for low power. In these designs, we have generated carry using GDI technique, we have generated carry using PMOS and NMOS pass transistors and also by using modified multiplexer using pass transistors. The motivation is to use the tri-state inverter instead of inverter as it reduces power consumption by 80% when compare to normal inverter. And sum is generated using 6T XOR module as shown in Fig.7. The rest of the paper is organised as previous research work, proposed full adder designs, simulations-results-comparison and conclusion.

2. PREVIOUS WORK Many full adder designs have been reported using static and dynamic styles in papers [1-4]. These designs can be divided into two types, the CMOS logic and the pass-transistor logic [5]. Different full adder topologies have been proposed using standard XOR and XNOR circuits and with 3T XOR-XNOR modules. In [5] a low power full adder cell has been proposed, each of its XOR and XNOR gates has 3 transistors. Advantages of pass-transistor logic and domino logic encouraged researchers to design full adder cell using these concepts [6] [7]. Full adder cells based on Sense energy recovery full adder (SERF) [8] and Gate diffusion input (GDI) techniques [5] are common. To attain low power and high speed in full adder circuits, pseudo-NMOS style with inverters has been used [9]. A 10 transistors full adder using top-down approach [10] and hybrid full adder [11] are the other structures of full adder cells. Sub threshold 1-Bit full adder cell and hybrid CMOS design style are the other techniques that targeted on fast carry generation and low PDP.

Fig 1. conventional 28T full adder

Computer Science & Information Technology (CS & IT)

Fig 2. Design of chowdhury etal.(2008) (a) 8T full adder, (b) 3T XOr gate

Fig. . 3. SERF full adder design

Fig. 4. 8T full adder design [17].

Fig. .5 8T full adder design [18]

251

252

Computer Science & Information Technology (CS & IT)

3. DESIGN OF PROPOSED FULL ADDER CIRCUITS 1 3T XOR gate and tri-state inverter design Most full adder designs with less transistor count adopt 3-module implementations i.e.XOR (or XNOR), for sum as well as carry modules [1]. For PTL based designs, it requires at least 4 transistors to implement a XOR (or XNOR) module [5, 8] but the design faces severe threshold voltage loss problems. The motivation for these designs is use of tri-state inverter instead of normal inverter because tristate inverter’s power consumption is 80% less than normal inverter. In normal inverter the supply voltage is always HIGH; while in the tri-state inverter the supply voltage is not always HIGH. This reduces the average leakage of the circuit throughout operation. The diagram for tri-state inverter is shown on Fig. 6. A⊕ B

Fig. 6 Tristate inverter. Fig 7. 3T XOR module Fig 8. Basic GDI cell Switching of the MOS transistor is also shown in fig. 7 and it is repeated in all figures.

2 Proposed 12T full adder design The proposed 12T full adder design incorporates the 3T XOR module made by tri-state inverter as shown in Fig.7. The design follows with the conventional 2 module implementation of 3 input XOR gate, this facilitate sum module of the full adder. The modified equations (1) for 12T full adder design are: sum = a ⊕ b ⊕ c ⇒ (a ⊕ b) ⊕ c carry = ab + bc + ca

(1)

ab + bc + ca = ab + bc( a + a`) + ac(b + b`) ⇒ ab + abc + a`bc + ab`c ⇒ ab(1 + c) + ( a`b + ab`)c ⇒ ab + ( a ⊕ b)c

The sum is generated by implementing 3T XOR module twice. Carry module is generated here by using GDI technique. The GDI approach allows implementation of a wide range of complex logic functions using only two transistors. This method is suitable for design of fast, low-power circuits, using a reduced

Computer Science & Information Technology (CS & IT)

253

number of transistors (as compared to CMOS and existing PTL techniques), while improving logic level swing and static power characteristics. 1) The GDI cell contains three inputs G (common gate input of nMOS and pMOS), P (input to the source/drain of pMOS), and N (input to the source/drain of nMOS). 2) Body of both nMOS and pMOS are connected to N or P (respectively) as shown in Fig.8. , so it can be arbitrarily biased at contrast with a CMOS inverter. This circuit exploits the low power advantages of GDI circuits to generate carry and tri-state inverter for generating sum. The equations have modified as above to generate carry. Basic operations like AND, OR have performed using GDI technique to generate carry, for example in the equation (1) a.b and ( a ⊕ b)c have been performed using GDI and gates. Sum is implemented by using 3T (XOR) module twice as shown in Fig.9.

3 Proposed 10T full adder design: The proposed 10T full adder uses the concept of pass transistor logic based multiplexer. The pass transistor design reduces the parasitic capacitances and results in fast circuits. The multiplexer is implemented using pass transistors for carry generation. This design is simple and efficient in terms of area and timing. The proposed 10T full adder circuit can be visualised by modifying the equations (2) as accordingly The modified equations for 10T full adder design: sum = a ⊕ b ⊕ c ⇒ (a ⊕ b) ⊕ c carry = ab + bc + ca

(2)

⇒ ab + ( a ⊕ b ) c ⇒ ab ( a ⊕ b )`+ ( a ⊕ b ) c

The multiplexer using pass transistor logic can be visualised in 2T model, the select signal for the multiplexer here is ( a ⊕ b ). The equations have modified such that select signal is in the form of ( a ⊕ b ). The ( a .b ) signal is generated by using the tri-state inverter for

( a `b ) => (a`b)`b = (a + b`).b ⇒ a.b + b.b`⇒ a.b

(3)

The sum is generated by implementing 3T XOR module twice. Carry is generated by using pass transistor logic based multiplexer whose select line is ( a ⊕ b ) as shown in Fig.10.

254

Computer Science & Information Technology (CS & IT)

(A⊕B)C

AB

Fig. .9. proposed 12T full adder design

A⊕B

AB

Fig. 10. proposed 10T full adder design

4 Proposed 8T full adder design: In the proposed 8T full adder sum is generated using 3T XOR module twice, and carry is generated using NMOS and PMOS pass transistor logic devices as shown in Fig.11. The equations (4) are modified so as to visualise the 8T full adder design. The modified equations for 8T full adder design are: sum = a ⊕ b ⊕ c ⇒ ( a ⊕ b) ⊕ c carry = ab + bc + ca

(4)

⇒ ab + bc(a + a`) + ac(b + b`) ⇒ ab + (a ⊕ b)c ⇒ (a`b)`b + (a ⊕ b)c

In this design instead of using two NMOS pass transistor devices we have used one NMOS and one PMOS pass transistor device, because of ease of the design and as according to the equation as shown in Fig.11. It must be noted that PMOS transistor passes ' l' very good, but cannot pass '0' completely thus, the carry output has weak '0'. NMOS transistor passes '0' very good, but cannot pass '1' completely therefore, the carry output has weak ' 1 ', Having weak '0' and '1' at carry outputs is one of the disadvantages of proposed 8T full adder circuit. In practical situations, this problem can be solved by using an inverter at carry output, but this solution leads to increased power and area.

Computer Science & Information Technology (CS & IT)

255

A⊕B

A`B

Fig 11. Proposed 8T full adder design

4. SIMULATION RESULTS AND COMPARISON The entire simulations have been done on 180nm single n-well CMOS bulk technology, in virtuoso platform of cadence tool with the supply voltage 1.8V and frequency of 100MHz. The entire results are compared with the different techniques. Area is calculated by using micro wind software. The area is reduced by 48% for proposed 12T design, the area is reduced by 66% for proposed 8T design and area is reduced by 53% when compared to 28T conventional full adder design. Table 1 Simulation Results Full Adder Designs

Min supply voltage(V)

Convention al(28T)

Chowdury deign(8T)

8T(ref .15)

8T(ref .16)

SERF

Proposed

Proposed

Proposed

(12T)

(8T)

(10T)

1.8

1.8

1.8

1.6

1.6

1.6

1.6

1.4

0.366

0.513

0.496

0.5

0.39

0.476

0.502

0.512

Avg.power consumptio n (uW)

52.4

17.4

36.47

27.7

18.2

14.3

16.0

17.1

Number-of transistors

28

8

8

8

10

12

8

10

19.178

8.926

18.08

12.6

7.09

6.806

8.032

8.755

Cout delay (nS)

Power* Delay (uW.nS)

5. CONCLUSION Three new full adder designs have been proposed and simulation results have been compared with the previous results in umc180nm technology using cadence tool. According to the

256

Computer Science & Information Technology (CS & IT)

simulation results the power consumption has been improved maximum by 73% when proposed circuits are compared to conventional 28T adder and other reference circuits.

Fig. .12. Simulation results and power waveform of Proposed 8T full adder

Fig. .13. Simulation results and power waveform of Proposed 10T full adder design

Fig. .14. Simulation results and power waveform of Proposed 12T full adder design

Computer Science & Information Technology (CS & IT)

257

REFERENCES [1] [2]

[3] [4]

[5]

[6] [7] [8] [9]

[10]

[11]

[12]

[13]

[14] [15] [16]

Fayed and M. A. Bayoumi, “A low-power 10 transistor full adder cell for embedded architectures,” in Proc. IEEE Int. Symp. Circuits Syst., 2001, pp.226–229. H. T. Bui, Y. Wang, and Y. Jiang, “Design and analysis of low-power 10-transistor full adders using XOR XNOR gates,” IEEE Trans. Circuits Syst. II, Analog and Digi-tal Signal Processing., vol.49, no. 1, pp. 25–30, Jan. 2002. J.-F. Lin, Y.-T. Hwang, M.-H. Sheu and C.-C. Ho, “A novel high speed and energy efficient 10transistor full adder design,” IEEE Trans. Circuits Syst. I, vol. 54, no. 5, pp. 1050–1059, May 2007. Y. Jiang, Al-Sheraidah. A, Y. Wang, Sha. E, and J. G. Chung, “A novel multiplexer-based low-power full adder,” IEEE Trans. Circuits Syst. II, Analog Digit. Signal Process., vol. 51, pp.345–348, July 2004. Dan Wang, Maofeng Yang, Wu Cheng XUguang Guan, Zhangming Zhu, Yintang Yang “ Novel Low power Full Adder Cells in 180nm CMOS Technology”, 4th IEEE conference on Industrial Electronics and Applications, pp. 430-433,2009. Sreehari Veeramachaneni, M.B. Srinivas, "New improved I•bit full adder cells ", Ca-nadian Conference on Electrical and Computer Engineering, pp. 000735 -000738, 2008. Chuen•Yau, Chen and, Yung•Pei Chou, "Novel Low•Power I•bit Full Adder Design", 9th International Symposium on Communications and Information Technology, pp. 1348 -1349, 2009 F.Moradi, DTWisland, H.Mahmoodi, S.Aunet; T.V.Cao, A.Peiravi, "Ultra low power full adder topologies", IEEE International Symposium on Circuits and Systems, pp. 3158-3161, 2009. Amir Ali Khatibzadeh, Kaamran Raahemifar, "A 14•TRANSISTOR LOW POWER HIGH•SPEED FULL ADDER CELL", Canadian Conference on Electrical and Com-puter Engineering, vol. I, pp. 163-166, 2003. AK. Singh, C.M.R. Prabhu, K.M.Almadhagi, S.F. Farea, K. Shaban,"A Proposed 10•T Full Adder Cell for Low Power Consumption", International Conference on Electrical Engineering/Electronics Computer Telecommunications and Information Technology (ECTI•CON), pp. 389 -391, 2010. IIham Hassoune, Denis Flandre, .Iean•Didier Legat," ULPF A: A New Efficient De-sign of a Power• Aware Full Adder", IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 57, pp. 2066 2074, August 2010. S. Goel, A. Kumar, and M. A. Bayoumi, “Design of robust, energy-efficient full ad-ders for deep submicrometer design using hybrid-CMOS logic style,” IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 14, no. 12, pp.1309–1321, Dec. 2006. H. T. Bui, Y. Wang, and Y. Jiang, “Design and analysis of low-power 10-transistor full adders using XOR–XNOR gates,” IEEE Trans. Circuits Syst. II, Analog Digit. Signal Process., vol. 49, no. 1, pp. 25–30, Jan. 2002. J.-F. Lin, Y.-T. Hwang, M.-H. Sheu and C.-C. Ho, “A novel high speed and energy efficient 10transistor full adder design,” IEEE Trans. Circuits Syst. I, vol. 54, no. 5, pp. 1050–1059, May 2007. Yi WEI, Ji-zhong SHEN, “Design of a novel low power 8-transistor 1-bit full adder cell”, Journal of Zhejiang University-SCIENCE C (Computers & Electronics), vol. 7,pp 504-507, Dec 2011. Nabiallah Shiri Asmangerdi, Javad Forounchi and Kuresh Ghanbari, “A new 8- Transistor Floating Full-Adder Circuit”, IEEE Trans. 20th Iranian Conference on Electrical Engineering, (ICEE2012), pp. 1405-1409, May, 2012.